lib/image_optim/worker/pngout.rb in image_optim-0.7.3 vs lib/image_optim/worker/pngout.rb in image_optim-0.8.0
- old
+ new
@@ -1,30 +1,23 @@
require 'image_optim/worker'
class ImageOptim
class Worker
class Pngout < Worker
- # Copy optional chunks (defaults to false)
- attr_reader :copy_chunks
+ option(:copy_chunks, false, 'Copy optional chunks'){ |v| !!v }
- # Strategy: 0 - xtreme, 1 - intense, 2 - longest Match, 3 - huffman Only, 4 - uncompressed (defaults to 0)
- attr_reader :strategy
+ option(:strategy, 0, 'Strategy: 0 - xtreme, 1 - intense, 2 - longest Match, 3 - huffman Only, 4 - uncompressed') do |v|
+ OptionHelpers.limit_with_range(v.to_i, 0..4)
+ end
# Always run first
def run_order
-1
end
def optimize(src, dst)
args = %W[-k#{copy_chunks ? 1 : 0} -s#{strategy} -q -y #{src} #{dst}]
execute(:pngout, *args) && optimized?(src, dst)
- end
-
- private
-
- def parse_options(options)
- get_option!(options, :copy_chunks, false){ |v| !!v }
- get_option!(options, :strategy, 0){ |v| limit_with_range(v.to_i, 0..4) }
end
end
end
end