Class: Picturesque::Image
- Inherits:
-
Object
- Object
- Picturesque::Image
- Includes:
- ActiveModel::Model
- Defined in:
- app/models/picturesque/image.rb
Defined Under Namespace
Constant Summary collapse
- DISPOSITION =
"inline".freeze
Instance Attribute Summary collapse
-
#url ⇒ Object
Returns the value of attribute url.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(url) ⇒ Image
constructor
A new instance of Image.
- #process(size: nil, quality: nil, format: nil) ⇒ Object
Constructor Details
#initialize(url) ⇒ Image
Returns a new instance of Image.
20 21 22 |
# File 'app/models/picturesque/image.rb', line 20 def initialize(url) self.url = url end |
Instance Attribute Details
#url ⇒ Object
Returns the value of attribute url.
18 19 20 |
# File 'app/models/picturesque/image.rb', line 18 def url @url end |
Class Method Details
.find(id) ⇒ Object
39 40 41 |
# File 'app/models/picturesque/image.rb', line 39 def self.find(id) new(Picturesque.config.url.call(id)) end |
Instance Method Details
#process(size: nil, quality: nil, format: nil) ⇒ Object
24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'app/models/picturesque/image.rb', line 24 def process(size: nil, quality: nil, format: nil) MiniMagick::Image.open(self.url).format(format || Format::JPG) do |file| file.quality(quality || Quality::HIGH) if size w,h = size.split("x") if w && Integer(w) > 0 && h && Integer(h) > 0 file.resize("#{w}x#{h}^") file.gravity "center" file.extent "#{w}x#{h}" end end end end |