Class: ImageCollage::CollageGenerator
- Inherits:
-
Object
- Object
- ImageCollage::CollageGenerator
- Includes:
- Magick
- Defined in:
- lib/imagecollage/collage_generator.rb
Instance Method Summary collapse
- #generate_image_collage(path) ⇒ Object
-
#initialize(image_urls) ⇒ CollageGenerator
constructor
A new instance of CollageGenerator.
Constructor Details
#initialize(image_urls) ⇒ CollageGenerator
Returns a new instance of CollageGenerator.
8 9 10 |
# File 'lib/imagecollage/collage_generator.rb', line 8 def initialize(image_urls) @image_urls = image_urls end |
Instance Method Details
#generate_image_collage(path) ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/imagecollage/collage_generator.rb', line 12 def generate_image_collage(path) tmp_files = [] @image_urls.each do |image_url| tmp_file = Tempfile.new(['image_collage', '.jpg']) open(image_url) do |image_file| tmp_file.write(image_file.read) end tmp_file.rewind tmp_files << tmp_file end image_list = ImageList.new(*tmp_files.map(&:path)) resize!(image_list) image_list = montage(image_list) image_list.write(path) ensure tmp_files.each do |tmp_file| tmp_file.close tmp_file.unlink end end |