Is there a command I can use to convert a .jpg or .png or other to extension to a .ico? If possible also to resize it to be a favicon size?
I'd also like to turn it from .ico to .jpg or .png.
Is there a command I can use to convert a .jpg or .png or other to extension to a .ico? If possible also to resize it to be a favicon size?
I'd also like to turn it from .ico to .jpg or .png.
The most useful program (suite) to manipulate image is Imagemagick (sudo apt install imagemagick) and for this task you will need the convert binary.
You will need to use something like:
convert -resize x16 -gravity center -crop 16x16+0+0 input.png -flatten -colors 256 -background transparent output/favicon.ico
This is the best command to do that from console:
convert <your-image-here> -define icon:auto-resize=256,64,48,32,16 favicon.ico
Hope you like it!
-define icon:auto-resize=256,64,48,32,16 do? The man pages just says that it -define "defines one or more image format options"
– Peter T.
Nov 01 '21 at 14:49
icon:auto-resize to automatically store multiple sizes in an ico image (requires 256x256 input image).
– rodvlopes
Jun 19 '22 at 14:13
Use this zsh function:
png2ico () {
local i="${1}" o="${2:-${1:r}.ico}" s="${png2ico_size:-256}"
convert -resize x${s} -gravity center -crop ${s}x${s}+0+0 "$i" -flatten -colors 256 -background transparent "$o"
}
Like so:
png2ico input.png
-flattenflag. – Andy Oct 28 '20 at 07:40