class Motion::IconGenerator::Image
Attributes
size[R]
Public Class Methods
new(size)
click to toggle source
Create a new Image
size - An ImageSize to specifcy the size and name of image.
# File lib/motion/icon_generator/image.rb, line 16 def initialize(size) @size = size end
Public Instance Methods
report()
click to toggle source
Prints feedback to STDOUT
# File lib/motion/icon_generator/image.rb, line 27 def report if File.exist?(filename) puts("Created #{filename.ljust(50)}\t(#{size.actual_width}x#{size.actual_height})") else warn("Couldn't write #{filename}") end end
write!()
click to toggle source
Writes this image to disk
# File lib/motion/icon_generator/image.rb, line 21 def write! create_target_directory scaled_image.write(filename) end
Private Instance Methods
create_target_directory()
click to toggle source
# File lib/motion/icon_generator/image.rb, line 55 def create_target_directory FileUtils.mkdir(target) unless Dir.exist?(target) end
filename()
click to toggle source
# File lib/motion/icon_generator/image.rb, line 43 def filename "#{target}/#{size.name}" end
img_name()
click to toggle source
# File lib/motion/icon_generator/image.rb, line 59 def img_name ENV['TEMPLATE'] || "resources/icon-template.png" end
scaled_image()
click to toggle source
# File lib/motion/icon_generator/image.rb, line 39 def scaled_image template_image.resize("#{size.actual_width}x#{size.actual_height}") end
target()
click to toggle source
# File lib/motion/icon_generator/image.rb, line 63 def target ENV['TARGET'] || 'icons' end
template_image()
click to toggle source
# File lib/motion/icon_generator/image.rb, line 47 def template_image if File.exist?(img_name) MiniMagick::Image.open(img_name) else raise "No template image specified. Did you create resources/icon-template.png?" end end