class Presto::MiniMagick::Processor
Attributes
transformation[R]
Public Class Methods
new(params={})
click to toggle source
# File lib/presto/mini_magick.rb, line 15 def initialize params={} @transformation = ::Presto::Transformation.new(params) end
process(image, params={})
click to toggle source
# File lib/presto/mini_magick.rb, line 9 def self.process image, params={} new(params).process(image) end
Public Instance Methods
process(image)
click to toggle source
# File lib/presto/mini_magick.rb, line 19 def process image return image if trans.empty? trans.validate! process_fit(image) if trans[:w] || trans[:h] process_format(image) if trans[:fm] process_quality(image) if trans[:q] image rescue ::Veto::InvalidEntity => e raise(::Presto::InvalidTransformation, e.message) end
Private Instance Methods
process_clip_fit(image)
click to toggle source
# File lib/presto/mini_magick.rb, line 46 def process_clip_fit image d = resized_dimensions(image) image.resize "#{d.width}x#{d.height}" end
process_crop_fit(image)
click to toggle source
# File lib/presto/mini_magick.rb, line 36 def process_crop_fit image d = replaced_dimensions(image) image.combine_options do |cmd| cmd.resize "#{d.width}x#{d.height}^" cmd.background trans[:bg] cmd.gravity 'Center' cmd.extent "#{d.width}x#{d.height}" end end
process_fill_fit(image)
click to toggle source
# File lib/presto/mini_magick.rb, line 61 def process_fill_fit image d = replaced_dimensions(image) image.combine_options do |cmd| cmd.resize "#{d.width}x#{d.height}" cmd.background trans[:bg] cmd.gravity 'Center' cmd.extent "#{d.width}x#{d.height}" end end
process_fit(image)
click to toggle source
# File lib/presto/mini_magick.rb, line 32 def process_fit image send("process_#{trans[:fit]}_fit", image) end
process_format(image)
click to toggle source
# File lib/presto/mini_magick.rb, line 71 def process_format image image.format trans[:fm] end
process_max_fit(image)
click to toggle source
# File lib/presto/mini_magick.rb, line 56 def process_max_fit image d = replaced_dimensions(image) image.resize "#{d.width}x#{d.height}>" end
process_quality(image)
click to toggle source
# File lib/presto/mini_magick.rb, line 75 def process_quality image image.quality trans[:q] end
process_scale_fit(image)
click to toggle source
# File lib/presto/mini_magick.rb, line 51 def process_scale_fit image d = replaced_dimensions(image) image.resize "#{d.width}x#{d.height}!" end
replaced_dimensions(image)
click to toggle source
# File lib/presto/mini_magick.rb, line 83 def replaced_dimensions image w = trans[:w] || image[:width] h = trans[:h] || image[:height] ::Presto::Dimensions.new w, h end
resized_dimensions(image)
click to toggle source
# File lib/presto/mini_magick.rb, line 79 def resized_dimensions image ::Presto::Dimensions.resize(image[:width], image[:height], trans[:w], trans[:h]) end
trans()
click to toggle source
# File lib/presto/mini_magick.rb, line 89 def trans transformation end