class SlackBigEmoji::Converter
Attributes
crop_size[RW]
file_name[RW]
file_resize_spec[RW]
image[RW]
output_dir[RW]
output_filename[RW]
output_path[RW]
ratio[RW]
tile_width[RW]
Public Class Methods
new(options={})
click to toggle source
# File lib/slack_big_emoji/converter.rb, line 8 def initialize(options={}) @image = ::MiniMagick::Image.open(options[:file]) @file_name = File.basename(options[:file], ".*") @ratio = @image[:width].to_f/@image[:height].to_f @file_resize_spec = '640x640' @tile_width = 5 @crop_size = '128x128' @output_dir = options[:output_dir] || @file_name @output_filename = options[:output_filename] || @file_name @output_path = "#{@output_dir}/#{@output_filename}%02d.png" end
Public Instance Methods
convert()
click to toggle source
# File lib/slack_big_emoji/converter.rb, line 24 def convert convert_opts = ["-resize", @file_resize_spec, "-crop", @crop_size] Dir.mkdir(@output_dir) unless File.exists?(@output_dir) ::MiniMagick::Tool::Convert.new do |convert| convert << @image.path convert.merge! convert_opts convert << @output_path end end
valid?()
click to toggle source
# File lib/slack_big_emoji/converter.rb, line 20 def valid? return @ratio == 1 end