Module: JekyllFaviconGenerator::Svg

Extended by:
Svg
Includes:
Utilities
Included in:
Svg
Defined in:
lib/jekyll-favicon-generator/svg.rb

Constant Summary

Constants included from Utilities

Utilities::LOGGER_PREFIX

Instance Method Summary collapse

Methods included from Utilities

#abort_with, #config, #debug, #dest_dir, #error, #file_exists?, #find_source, #info, #source, #warn

Instance Method Details

#optimize(src, dest) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/jekyll-favicon-generator/svg.rb', line 13

def optimize(src, dest)
  unless File.extname(src).casecmp(".svg").zero?
    warn "Unsupported #{File.extname(src).downcase} -> .svg for #{dest}"
    return false
  end

  xml = Nokogiri::XML File.read(src) { |config| config.recover.noent }

  SvgOptimizer::DEFAULT_PLUGINS.each { |plugin| plugin.new(xml).process }

  File.open(dest, "w") do |file|
    file << xml.root.to_xml(:indent => 0).delete("\n")
  end
  true
end