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