If the resource that you want to check in is product-branded and/or trademarked, please read the docs on Google Chrome branding to determine the correct steps to take.
Please run src/tools/resources/optimize-png-files.sh on all new icons. For example:
tools/resources/optimize-png-files.sh -o2 new_pngs_dir
If this script does not work for some reason, at least pngcrush the files:
mkdir crushed
pngcrush -d crushed -brute -reduce -rem alla new/*.png
Windows ICO icons should be in the following format:
- A square image of each size: 256, 48, 32, 16.
- The 256 image should be in PNG format, and optimized.
- The smaller images should be in BMP (uncompressed) format.
- Each of the smaller images (48 and less) should have an 8-bit and 32-bit version.
- The 256 image should not be last (there is a bug in Gnome on Linux where icons look corrupted if the PNG image is last).
If you are creating an ICO from a set of PNGs of different sizes, the following process (using ImageMagick and GIMP) satisfies the above conditions:
-
Convert each of the smaller images to 8-bit. With ImageMagick:
for f in FILENAME-??.png; \ do convert $f -dither None -colors 256 \ png8:`basename $f .png`-indexed.png; \ done
-
Combine the images into an ICO file. With ImageMagick:
convert FILENAME-256.png FILENAME-{48,32,16}{-indexed,}.png FILENAME.ico
-
Unfortunately, the 8-bit images have been converted back into 32-bit images. Open the icon in GIMP and re-export it. This will also convert the large 256 image into a compressed PNG.
-
Run
src/tools/resources/optimize-ico-files.py
on the resulting .ico file.
You can also run src/tools/resources/optimize-ico-files.py
on existing .ico
files. This will convert BMPs to PNGs and run a basic PNG optimization pass, as
well as fix up any broken image masks (http://crbug.com/534679).