Quais tamanhos de ícone devem incluir o ícone do meu aplicativo Windows?

236

Eu tenho um aplicativo do Windows que será executado no Windows XP e mais recente (por exemplo, Vista / 7). De acordo com Diretrizes da interface do usuário Vista , os tamanhos padrão são 16x16, 32x32, 48x48, 256x256 (os tamanhos padrão XP não incluem o ícone 256x256). Além desses tamanhos, também tenho 96x96 e 128x128 (e poderia criar mais).

Qual desses tamanhos de ícone devo incluir? O shell realmente usará os tamanhos "não-padrão" ou simplesmente incharei meu aplicativo?

Daniel Rose
fonte
3
Este site é uma ótima referência para tamanhos de ícones para muitas plataformas: iconhandbook.co.uk/reference/chart
Mark Hatton

Respostas:

303

Demorei um pouco para checar em detalhes. Criei um ícone cujas imagens têm tamanhos 16, 24, 32, 40, 48, 64, 96, 128 e 256. Depois verifiquei qual imagem é exibida. Todos estes foram feitos com 96dpi normal. Se estiver usando um DPI maior, os tamanhos maiores podem ser usados ​​(verifique isso um pouco no Windows 7). Os resultados:

Windows XP:

  • Visualizações do Explorer:
    • Detalhes / Lista: 16
    • Ícones: 32
    • Azulejos / Miniaturas: 48
  • Clique com o botão direito do mouse-> Propriedades / escolhendo um novo ícone: 32
  • Área de início rápido: 16
  • Desktop: 32

Windows 7:

  • Visualizações do Explorer:
    • Detalhes / Lista / Símbolos pequenos: 16
    • Todas as outras opções: 256 (redimensionado, se necessário)
  • Clique com o botão direito do mouse-> Propriedades / escolhendo um novo ícone: 32
  • Fixado na barra de tarefas: 32
    • Menu do botão direito: 16
  • Área de Trabalho:
    • Pequenos símbolos: 32
    • Símbolos médios: 48
    • Símbolos grandes: 256 (redimensionados, se necessário)
    • Zoom usando Ctrl + Roda do mouse: 16, 32, 48, 256

Tempo de Execução do Windows: (a partir daqui )

  • Ladrilho principal: 150x150, 310x150 (versão ampla)
  • Logotipo pequeno: 30x30
  • Distintivo (para tela de bloqueio): 24x24, monocromático
  • Tela de abertura: 620x300
  • Loja: 50x50

Portanto, o resultado: o Windows XP usa ícones de 16, 32, 48 tamanhos, enquanto o Windows 7 (e presumivelmente também o Vista) também usa ícones de 256 tamanhos. Todos os outros tamanhos de ícones intermediários são ignorados (eles podem ser usados ​​em alguma área que eu não verifiquei).


Também verifiquei no Windows 7 o que acontece se o tamanho do ícone estiver ausente:

Os tamanhos ausentes são gerados (obviamente). Nos tamanhos 16, 32 e 48, se um estiver faltando, o downscaling é o preferido. Portanto, se tivermos ícones com os tamanhos 16 e 48, o ícone 32 será criado a partir do ícone 48. O ícone 256 é usado apenas para estes se não houver outros tamanhos disponíveis! Portanto, se os ícones forem do tamanho 16 e 256, os outros tamanhos serão redimensionados a partir do ícone 16!

Além disso, se o ícone 256 não estiver lá, o ícone 48 (possivelmente gerado) será usado, mas não será mais redimensionado. Portanto, temos uma área vazia (possivelmente grande) com o ícone 48 no meio.

Observe que o tamanho padrão do ícone da área de trabalho no XP é 32x32, enquanto no Windows 7 é 48x48. Como conseqüência, para o Windows 7, é relativamente importante ter um ícone 48. Caso contrário, ele é aumentado a partir de um ícone menor, que pode parecer bastante feio.


Apenas uma observação sobre a compatibilidade do Windows XP: Se você reutilizar o ícone como ícone da janela, observe que isso poderá travar o aplicativo se você usar um ícone compactado 256. A solução é não compactar o ícone ou criar uma segunda versão sem o ícone 256 (compactado). Veja aqui para mais informações.

Daniel Rose
fonte
12
Bem, aqui diz 64px também é necessário, e nas diretrizes oficiais do ícone diz 20px, 24px e 40px também são recomendados. O ícone de 40px parece ser usado em alt + tab e balões, outros parecem ser usados ​​dependendo do DPI (por exemplo, 20px sendo usados ​​em vez de 16px em uma tela de DPI mais alto, caso contrário, diminua a partir do tamanho maior de 32px, que pode parecer ainda mais feio). Ainda não testei.
Camilo Martin
2
Eu fiz mais alguns testes. Para exibição na área de trabalho, quando eu o defino em 144dpi ("150%") no Windows 7, para o menor ícone possível, ele usava o ícone de 24px (se estiver lá, caso contrário, aumentaria 16px). Nas diretrizes do ícone, parece que existe um "Modo Clássico" no Vista, que também usa o ícone de 64px. No entanto, o Windows 7 não o usa. Em vez disso, apenas o ícone de 256px é redimensionado.
Daniel Rose
Interessante, obrigado pelos achados. De qualquer forma, não sei quantas aplicações na natureza têm mais de 16, 32, 48 e (espero) 256 ícones de px. Eu acho que muito poucos. Mas talvez os usuários notem, porque um ícone entre os demais é mais nítido.
Camilo Martin
@Camilo Observe que é possível redimensionar com CTRL + Mousewheel, e todos os tamanhos "intermediários" são pressionados / reduzidos a zoom. No entanto, o que definitivamente é notado é se o ícone de 48px estiver ausente, pois esse é o tamanho usado na área de trabalho padrão do Windows 7.
22630 Daniel Rose
3
E falta metade do tempo se o aplicativo é um utilitário e não é um software muito popular, ou antigo ... Mesmo alguns dos ícones do Visual Studio (aqueles para tipos de arquivos) nem sequer têm versões de 48px.
Camilo Martin
28

Após alguns testes com um ícone com 8, 16, 20, 24, 32, 40, 48, 64, 96, 128 e 256 pixels (256 em PNG) no Windows 7:

  • Com 100% de resolução: o Explorer usa 16, 40, 48 e 256. O Windows Photo Viewer usa 96. O Paint usa 256.
  • Com uma resolução de 125%: o Explorer usa 20, 40 e 256. O Windows Photo Viewer usa 96. O Paint usa 256.
  • Com resolução de 150%: o Explorer usa 24, 48 e 256. O Windows Photo Viewer usa 96. O Paint usa 256.
  • Com resolução de 200%: o Explorer usa 40, 64, 96 e 256. O Windows Photo Viewer usa 128. O Paint usa 256.

Portanto, 8, 32 nunca foram usadas (é estranho para mim 32) e 128 apenas pelo Windows Photo Viewer com uma tela de dpi muito alta, ou seja, o almot nunca foi usado.

Isso significa que seu ícone deve fornecer pelo menos 16, 48 e 256 para o Windows 7. Para suportar telas mais novas com altas resoluções, você deve fornecer 16, 20, 24, 40, 48, 64, 96 e 256. No Windows 7, todos os as imagens podem ser compactadas usando PNG, mas para compatibilidade com versões anteriores do Windows XP, 16 a 48 não devem ser compactadas.

Futal
fonte
Veja minha resposta aqui ( stackoverflow.com/questions/12385143/… ), mas se você compactar a imagem de 256x256 no arquivo .ico ... Os sistemas Windows XP terão problemas para abrir o arquivo. Você receberá uma FileFormatException com HRESULT 0x88982F07.
Cplotts
Também vale a pena mencionar que as versões com alto DPI precisam ser salvas no modo 24bpp, tentei armazená-las no modo de cores de 8 bits e o Windows 7 usou a versão 256px em vez de 20x20px em 125% DPI.
Bartosz Wójcik 29/03
2
Isso é simples, mas exaustivo. Muito importante levar em consideração o DPI.
caesay
24

A diretriz de ícone do Microsoft UX diz:

"Ícones de aplicativos e itens do Painel de Controle: O conjunto completo inclui 16x16, 32x32, 48x48 e 256x256 (o código varia entre 32 e 256)."

Para mim, isso implica (mas não declara explicitamente, infelizmente) que você deve fornecer esses 4 tamanhos.

Detalhes adicionais sobre os formatos de cores, que você também pode achar úteis:

  • "Os arquivos de ícone também exigem versões de paleta de 8 e 4 bits, para suportar a configuração padrão em uma área de trabalho remota".

  • "Apenas uma cópia de 32 bits da imagem de 256x256 pixels deve ser incluída e apenas a imagem de 256x256 pixels deve ser compactada [como PNG] para manter o tamanho do arquivo baixo."

pedra
fonte
12

No caso do Windows 10, isso não é exatamente preciso; na verdade, nenhuma das respostas no stackoverflow foi; descobri isso quando tentei usar a pixel art como um ícone e ela foi redimensionada quando não deveria (era fácil para ver, neste caso, a causa da interpolação e suavização das janelas), mesmo que eu usei os tamanhos deste post.

Então, eu fiz um aplicativo e fiz o trabalho em todas as configurações de DPI, veja aqui:
Windows 10 com todas as resoluções de ícones em todas as configurações de DPI
Você também pode usar meu aplicativo para criar ícones, também com a interpolação de vizinhos mais próxima com suavização, o que não é feito com qualquer um dos editores ruins que eu já vi.

Se você deseja apenas as resoluções:
16, 20, 24, 28, 30, 31, 32, 40, 42, 47, 48, 56, 60, 63, 84, 256
e deve usar todos os ícones PNG e tudo o que colocar ao lado destes, não será exibido. Veja meu post porque.

z4k
fonte
7

Não 96x96, use 64x64. Eu costumo usar:

  • 16 - botão status / barra de título
  • 32 - ícone na área de trabalho
  • 48 - vista de pastas
  • 64/128 - Tamanhos adicionais

256 funciona bem no XP, no entanto, os compiladores de recursos antigos às vezes reclamavam de erros de "falta de memória".

cristão
fonte
Eu já vi você ter lidado com Java antes. Como posso implementar esse comportamento com Java? O problema é que o ícone mostrado na barra de tarefas do sistema é muito maior comparado ao ícone na barra de título e não pode ser redimensionado adequadamente pelo sistema. O máximo que posso fazer é stage.getIcons (). Add (image); mas não me permite especificar qual tamanho e a que lugar pertence, por exemplo, a barra de tarefas, a exibição de pastas ou qualquer outra coisa. Estou usando o JavaFX 8
homerun
1
O @someFolk java compila em arquivos "class" ou em um arquivo "jar" (que é um zip dos arquivos de classe + manifesto). Em outras palavras, ele não é compilado para PE (executáveis ​​do Windows). No entanto, existem ferramentas que criam wrappers para você - basicamente pequenos programas que contêm o jar como um recurso (que é extraído e executado quando o programa é executado). A resposta aqui menciona alguns deles O que isso significa é que seu problema depende do programa que você usa. No entanto, existem ferramentas para recursos de edição (por exemplo: Hacker Resource )
Christian
2

Das recomendações do Microsoft MSDN :

Ícones de aplicativos e itens do Painel de controle : O conjunto completo inclui 16x16, 32x32, 48x48 e 256x256 (o código varia entre 32 e 256). O formato de arquivo .ico é necessário. Para o Modo clássico, o conjunto completo é 16x16, 24x24, 32x32, 48x48 e 64x64.

Portanto, já temos tamanhos recomendados padrão de:

  • 16 x 16,
  • 24 x 24,
  • 32 x 32,
  • 48 x 48,
  • 64 x 64,
  • 256 x 256.

Se desejarmos oferecer suporte a configurações altas de DPI, a lista completa também incluirá os seguintes tamanhos:

  • 20 x 20,
  • 30 x 30,
  • 36 x 36,
  • 40 x 40,
  • 60 x 60,
  • 72 x 72,
  • 80 x 80,
  • 96 x 96,
  • 128 x 128,
  • 320 x 320,
  • 384 x 384,
  • 512 x 512.
Jacek Krawczyk
fonte