Sha256: 5b3e80c5f307acbe4326cea1ca691b34df70ffd00f090961eba256b81e5e1957
Contents?: true
Size: 723 Bytes
Versions: 5
Compression:
Stored size: 723 Bytes
Contents
require 'image_optim/worker' require 'image_optim/option_helpers' require 'image_optim/true_false_nil' class ImageOptim class Worker class Optipng < Worker option(:level, 6, 'Optimization level preset: `0` is least, `7` is best'){ |v| OptionHelpers.limit_with_range(v.to_i, 0..7) } option(:interlace, false, TrueFalseNil, 'Interlace, `true` - interlace on, `false` - interlace off, `nil` - as is in original image') do |v| v && true end def optimize(src, dst) src.copy(dst) args = %W[-o#{level} -quiet -- #{dst}] args.unshift "-i#{interlace ? 1 : 0}" unless interlace.nil? execute(:optipng, *args) && optimized?(src, dst) end end end end
Version data entries
5 entries across 5 versions & 1 rubygems