class HasPlaceholderImage::ImageGenerator
Attributes
canvas[R]
draw[R]
file[R]
options[R]
text[R]
Public Class Methods
new(text, **params)
click to toggle source
# File lib/has_placeholder_image/image_generator.rb, line 9 def initialize(text, **params) @options = params @text = text return if exist? generate_canvas generate_draw generate_result end
Private Instance Methods
exist?()
click to toggle source
# File lib/has_placeholder_image/image_generator.rb, line 21 def exist? base_folder = ::Rails.root.join(@options[:output_path]) size_folder = base_folder.join("#{@options[:height]}x#{@options[:width]}") font_folder = size_folder.join((@options[:font_size]).to_s) file_name = "bg_#{@options[:background_color]}-cl_#{@options[:font_color]}-#{@text}.png" @file = font_folder.join(file_name) File.exist?(@file) end
generate_canvas()
click to toggle source
# File lib/has_placeholder_image/image_generator.rb, line 31 def generate_canvas @canvas = ::Magick::Image.new(@options[:height], @options[:width]) @canvas.color_reset!(@options[:background_color]) end
generate_draw()
click to toggle source
# File lib/has_placeholder_image/image_generator.rb, line 36 def generate_draw @draw = ::Magick::Draw.new @draw.pointsize = @options[:font_size] @draw.fill = @options[:font_color] @draw.gravity = ::Magick::CenterGravity @draw.annotate(@canvas, 0, 0, 0, 0, @text) end
generate_result()
click to toggle source
# File lib/has_placeholder_image/image_generator.rb, line 44 def generate_result FileUtils.mkdir_p(File.dirname(@file)) @canvas.write(@file) end