This is an Update, I preserved the original below.
I found a much better method to make your Icons on Windows available on your Linux Box, and easier too. The prior method would disguise the .ico file as a .png, completely ignoring multiple layers hidden therein. This also made the .png impossible to edit in gimp. Well, I stumbled upon a much better way to have your icons converted. First we'll need
icoutils.
Code:
sudo apt-get install icoutils
Icoutils contains four programs, the two most likely you'll use though are wrestool and icotool. Whatis reveals what these programs do
icotool (1) - Convert and create Win32 icon and cursor files
wrestool (1) - extract resources from Microsoft Windows(R) binaries (exe's and dlls) I assume ``extresso'' automates these tasks with the help of special resource scripts.
You can use
icotool to see what types of icons are available in an .ico file:
Code:
icotool -l Emoticon.ico
You'll see a list like this:
Code:
--icon --index=1 --width=32 --height=32 --bit-depth=8 --palette-size=256
--icon --index=2 --width=16 --height=16 --bit-depth=8 --palette-size=256
--icon --index=3 --width=128 --height=128 --bit-depth=32 --palette-size=0
--icon --index=4 --width=48 --height=48 --bit-depth=32 --palette-size=0
--icon --index=5 --width=32 --height=32 --bit-depth=32 --palette-size=0
--icon --index=6 --width=16 --height=16 --bit-depth=32 --palette-size=0
In this case it showed six different sizes, I believe this is standard for XP (and Vista??).
If you want to extract all the icons in the .ico file and converts them to .png:
Code:
icotool -x -o . BootCamp_Drive.ico
This will extract the six icons listed above in Emoticon.ico.
-x signifies extract while
-o directs
icotool to an output directory, in this case "." or the same directory.
You will notice that the eight bit depth icons won't carry a proper alpha layer and have a black layer about them. You probably won't need the eight bit depth icons and they dont' need to be extracted. To extract an entire directory ignoring eight bit icons
cd into it and just do:
Code:
icotool -x --palette-size=0 -o /home/user/Desktop/seperate-directory *.ico
Ignoring the 256 colored (eight bit) icons, use the palette size of 0 to specify 24 bit and 32 bit. You also noticed it isn't a bad idea to use a separate output directory.
Thats is. Enjoy!
Bookmarks