Class: IconGenerator::TouchBuilder

Inherits:
Object
  • Object
show all
Includes:
Validator
Defined in:
lib/icon_generator/touch_builder.rb

Instance Method Summary collapse

Methods included from Validator

#validate_arguments, #validate_file_status

Constructor Details

#initializeTouchBuilder

Returns a new instance of TouchBuilder.



5
6
7
8
9
10
11
12
# File 'lib/icon_generator/touch_builder.rb', line 5

def initialize
    @sizes = [
        '144x144',
        '114x114',
        '72x72',
        '57x57',
    ]
end

Instance Method Details

#build(source, destination) ⇒ Object



14
15
16
17
18
19
20
21
22
23
# File 'lib/icon_generator/touch_builder.rb', line 14

def build(source, destination)
    @sizes.each do |size|
        new_image = "#{destination}/apple-touch-icon-#{size}-precomposed.png"
        build_size(source, size, new_image)
        if size == '57x57'
            build_size(source, '57x57', "#{destination}/apple-touch-icon-precomposed.png")
            build_size(source, '57x57', "#{destination}/apple-touch-icon.png")
        end
    end
end

#build_size(source, size, new_image) ⇒ Object



25
26
27
28
29
# File 'lib/icon_generator/touch_builder.rb', line 25

def build_size(source, size, new_image)
    %x[convert '#{source}' -resize #{size}! #{new_image}]
    validate_file_status new_image
    puts Thor::Shell::Color.new.set_color("Built #{new_image}", :green)
end