How to create a high quality icon for my Windows application?
If you are running Windows with a higher DPI setting you will notice that most application icons on the desktop look terrible. Even some high profile application icons such as Google Chrome look terrible while Firefox, Skype and MS Office icons look sharp:
(example)
I suspect that most icons look blurry because a lower resolution icon is scaled up rather than using a higher resolution icon.
I want to give my application a high quality icon and can't seem to convince Windows to use the higher resolution icon. I have created a multi-resolution icon with the icon editor IcoFX. The icon is provided in 16x16, 24x24, 32x32,48x48, 128x128 and 256x256 (!) (all in 32 bit including alpha channel) yet Windows seems to use the 48x48 version of the icon on the desktop and scale it up which looks terrible. (I am using Windows 7 - 64 bit - the icon is placed by means of setting up a shortcut in the msi (created via Visual Studio 2008 Setup Project) and pointing it to the .ico file that contains the multi-resolution icon)
I have tried removing the 128x128 icon but to no avail. Interestingly in Windows Explorer the icon looks great even when using the Extra Large Icon setting. How can I create a high quality desktop icon that looks great on higher DPI settings on Windows?
EDIT: I tested removing the 128x128 option, then both the 48x48 and 128x128 option and tried Axialis IconWorkshop to create the icon - nothing worked.
EDIT: After much trial and error I think the real problem here is the Visual Studio 2008 Setup Project - manually sett开发者_运维问答ing up a link to my executable correctly uses the high resolution icon, however the link that is created by the setup doesn't use the correct icon. When setting the icon for the link in the editor it only gives me one option (index 0) which seems to be the 48x48 icon. I have tried manually adjusting the IconIndex in the .vdproj but had no luck.
Thanks for all the suggestions!
After much trial and error the real problem here seems to be the Visual Studio 2008 Setup Project - manually setting up a link to my executable correctly uses the high resolution icon, however the link that is created by the setup doesn't use the correct icon. When setting the icon for the link in the editor it only gives me one option (index 0) which seems to be the 48x48 icon. I have tried manually adjusting the IconIndex in the .vdproj but had no luck. It seems that Visual Studio Setup Project does not support adding a link using a high quality icon.
EDIT: I can now confirm this problem. Once I moved to WiX to create the installer the link used the correct high quality icon.
This might give you some tips http://www.axialis.com/tutorials/tutorial-vistaicons.html
Try enlarging your icons (Ctrl+MouseWheelUp
) to a massive size and see if Windows picks up the larger icon, this will work even on standard DPI screen. (I use really really really large icons myself).
If using massive icons still only displays the lower resolution one, then it's a problem with the ICO file. Our graphic designer outputs icons containing 256, 64, 48, 32, 24 and 16 pixel sizes, each in True Color, 256 color and 16 color and that's working fine here on Win7 x64
easiest way is to open a copy of one of those ms .ico files in gimp, and replace those 72dpi pics with yours and scale them for each layer in the .ico file.
The attached screenshot is the windows media player icon oped up in GIMP
It depends on your display DPI. See the Windows User Experience Interaction Guidelines Icons size recommendations.
I converted my .ico to a .png and then back to an ico on this site, and it seems to have worked: http://convertico.com/
Looks like it added 48x48 and 64x64.
I used Gimp. Export as the image as ".ico"
精彩评论