tags:

views:

81

answers:

4

I have a windows application which will run in Windows XP and newer (i.e. Vista/Windows 7). According to the Vista UI Guidelines, the standard sizes are 16x16, 32x32, 48x48, 256x256 (XP standard sizes do not include the 256x256 icon). In addition to those sizes, I also have 96x96 and 128x128 (and could create more).

Which of these icon sizes should I include? Will the shell actually use the "non-standard" sizes, or will I simply bloat my application?

+4  A: 

This site is a great reference for icon sizes for many platforms: http://www.hicksdesign.co.uk/iconreference/

Mark Hatton
+1 very informative site.
Christian Sciberras
Will the shell actually use the "non-standard" sizes, such as 128x128?
Daniel Rose
Microsoft UX guideline says: "Application icons and Control Panel items: The full set includes 16x16, 32x32, 48x48, and 256x256 (code scales between 32 and 256)." http://msdn.microsoft.com/en-us/library/aa511280.aspx#size
skypecakes
A: 

Not 96x96, use 64x64 instead. I usually use:

  • 16 - status/titlebar button
  • 32 - desktop icon
  • 48 - folder view
  • 64/128 - Additional sizes

256 works as well on XP, however, old resource compilers sometimes complained about "out of memory" errors.

Christian Sciberras
+7  A: 

I took some time to check it in detail. I created an icon with 16, 24, 32, 40, 48, 64, 96, 128 and 256 images. Then I checked which image is shown. All these were done with normal 96dpi. If using a larger dpi, the larger sizes may be used (only checked this a bit in Windows 7). The results:

Windows XP:

  • Explorer views:
    • Details / List: 16
    • Icons: 32
    • Tiles / Thumbnails: 48
  • Right-click->Properties / choosing a new icon: 32
  • Quickstart area: 16
  • Desktop: 32

Windows 7:

  • Explorer views:
    • Details / List / Small symbols: 16
    • All other options: 256 (resized, if necessary)
  • Right-click->Properties / choosing a new icon: 32
  • Pinned to taskbar: 32
    • Right-click-menu: 16
  • Desktop:
    • Small symbols: 32
    • Medium symbols: 48
    • Large symbols: 256 (resized, if necessary)
    • Zooming using Ctrl+Mouse wheel: 16, 32, 48, 256

So the result: Windows XP uses 16, 32, 48 icons, while Windows 7 (and presumably also Vista) also uses 256 icons. All other intermediate icon sizes are ignored (they may be used in some area which I didn't check).


I also checked in Windows 7 what happens if icon sizes are missing:

The missing sizes are generated (obviously). With 16, 32, 48 sizes, if one is missing, downrezzing is preferred. So if we have 16 and 48 icons, the 32 icon is created from the 48 icon. The 256 icon is only used for these if no other sizes are available! So if we have 16 and 256 icons, the other sizes are uprezzed from the 16 icon!

Additionally, if the 256 icon is not there, the (possibly generated) 48 icon is used, but not resized anymore. So we have a (possibly large) empty area with the 48 icon in the middle.

Note that the default desktop icon size in XP was 32x32, while in Windows 7 it is 48x48. As a consequence, for Windows 7 it is relatively important to have a 48 icon. Otherwise, it is uprezzed from a smaller icon, which may look quite ugly.

Daniel Rose
+1  A: 

The Microsoft UX icon guideline says:

"Application icons and Control Panel items: The full set includes 16x16, 32x32, 48x48, and 256x256 (code scales between 32 and 256)."

To me this implies (but does not explicitly state, unfortunately) that you should supply those 4 sizes.

Additional details regarding color formats, which you may also find useful:

  • "Icon files require 8-bit and 4-bit palette versions as well, to support the default setting in a remote desktop."

  • "Only a 32-bit copy of the 256x256 pixel image should be included, and only the 256x256 pixel image should be compressed [as PNG] to keep the file size down."

skypecakes