After some time not having developed for Win32. I today had to brand a small RCP-application and once more completely forgot how to create this “Programm Launcher icon” using opensource tools.
So I thought I have to restore this information somewhere I can find it later on:
1. Get nice icons:
The starting point for me is one of the open-source icon-collections (www.icon-king.com/) or oxygen.
2. Boot you favorit Linux Distro (Sorry Win-Users for you this story ends here (or you grab CygWin)):
Install the following tools:
- convert: Chances are high it’s already installed
- icotool: if not installed and not available for your distro (icoutils)
3. Copy the images:
Copy images the images the with the various sizes we need to a directory and given them eaually starting names. In my case these are:
- icon_16_16.png
- icon_32_32.png
- icon_48_48.png
4. Create .ico-File:
The ico-File needed by RCP has to hold 6 images (32bit and 8bit).
So we need to convert the images to 8bit ones:
tom@vinea:icons>mkdir target # Workaround because image magick doesn't seem to reduce colors when # converting from png to png convert -colors 256 icon_16_16.png target/tmp.gif convert -colors 256 target/tmp.gif target/icon_16_16_8bit.png convert -colors 256 icon_32_32.png target/tmp.gif convert -colors 256 target/tmp.gif target/icon_32_32_8bit.png convert -colors 256 icon_48_48.png target/tmp.gif convert -colors 256 target/tmp.gif target/icon_48_48_8bit.png
Copy the original icons over to target-dir:
tom@vinea:icons> cp -f icon_16_16.png target cp -f icon_32_32.png target cp -f icon_48_48.png target
Create the .ico-File using icotool:
tom@vinea:icons> icotool -c target/icon_16_16_8bit.png target/icon_16_16.png \ target/icon_32_32_8bit.png target/icon_32_32.png \ target/icon_48_48_8bit.png target/icon_48_48.png \ > target/icon.ico
Here’s the full script for reference:
#!/bin/sh rm -rf target mkdir target # Workaround because image magick doesn't seem to reduce colors when # converting from png to png convert -colors 256 icon_16_16.png target/tmp.gif convert -colors 256 target/tmp.gif target/icon_16_16_8bit.png convert -colors 256 icon_32_32.png target/tmp.gif convert -colors 256 target/tmp.gif target/icon_32_32_8bit.png convert -colors 256 icon_48_48.png target/tmp.gif convert -colors 256 target/tmp.gif target/icon_48_48_8bit.png # Copy images cp -f icon_16_16.png target cp -f icon_32_32.png target cp -f icon_48_48.png target icotool -c target/icon_16_16_8bit.png target/icon_16_16.png \ target/icon_32_32_8bit.png target/icon_32_32.png \ target/icon_48_48_8bit.png target/icon_48_48.png \ > target/icon.ico
One more popular icon source (especially “Silk Icons”):
http://www.famfamfam.com/lab/icons/
I went for the GIMP instead, worked at the first shot!
Pingback: Eclipse RCP product icons and Maven Tycho | Data In Motion - Tech Blog
Under Ubuntu, for installing the convert utility, you need to run this:
apt-get install imagemagick