Module: Favicon

Extended by:
Favicon
Included in:
Favicon
Defined in:
lib/favicon.rb,
lib/favicon/version.rb

Constant Summary collapse

SIZES_ARRAY =
[16, 24, 32, 48, 64]
VERSION =
'0.1.1'

Instance Method Summary collapse

Instance Method Details

#png_to_favicon(input_filename, output_filename, sizes_array = SIZES_ARRAY) ⇒ String

PNG to favicon.ico in supplied sizes

Parameters:

  • input_filename (String)

    “/path/to/example.png”

  • output_filename (String)

    “/path/to/favicon.ico”

  • sizes_array (Array<Array<Int,Int>>, Array<Int>) (defaults to: SIZES_ARRAY)

    rectangles use Array with XY: ‘[x,y]` squares use single Integer N mixed indices is valid example: `[24, [24,24], [480,270], 888] # a => 24x24; a => 24x24; a => 480x270; a => 888x888`

Returns:

  • (String)

    filename of generated ico



24
25
26
27
28
29
30
31
32
33
34
35
36
# File 'lib/favicon.rb', line 24

def png_to_favicon(input_filename, output_filename, sizes_array=SIZES_ARRAY)
  dir = Dir.mktmpdir

  begin
    output_dir = ICO::Utils.png_to_sizes(input_filename, sizes_array, dir)

    filename_array = Dir.glob(File.join(output_dir, '**/*'))

    ICO.png_to_ico(filename_array, output_filename)
  ensure
    FileUtils.remove_entry dir
  end
end