Quali dimensioni dell'icona dovrebbe includere l'icona della mia applicazione Windows?


236

Ho un'applicazione Windows che verrà eseguita in Windows XP e versioni successive (ad esempio Vista / 7). Secondo le Linee guida per l' interfaccia utente di Vista , le dimensioni standard sono 16x16, 32x32, 48x48, 256x256 (le dimensioni standard XP non includono l'icona 256x256). Oltre a quelle dimensioni, ho anche 96x96 e 128x128 (e potrei crearne di più).

Quali di queste dimensioni di icone dovrei includere? La shell utilizzerà effettivamente dimensioni "non standard" o gonfierà semplicemente la mia applicazione?


3
Questo sito è un ottimo riferimento per le dimensioni delle icone per molte piattaforme: iconhandbook.co.uk/reference/chart
Mark Hatton,

Risposte:


303

Ho impiegato del tempo per verificarlo in dettaglio. Ho creato un'icona le cui immagini hanno dimensioni di 16, 24, 32, 40, 48, 64, 96, 128 e 256. Quindi ho verificato quale immagine è mostrata. Tutti questi sono stati fatti con 96 dpi normali. Se si utilizza un DPI più grande, è possibile utilizzare dimensioni maggiori (verificarlo solo un po 'in Windows 7). I risultati:

Windows XP:

  • Viste Explorer:
    • Dettagli / Elenco: 16
    • Icone: 32
    • Piastrelle / Miniature: 48
  • Fare clic con il tasto destro del mouse-> Proprietà / scegliere una nuova icona: 32
  • Area di avvio rapido: 16
  • Desktop: 32

Windows 7:

  • Viste Explorer:
    • Dettagli / Elenco / Piccoli simboli: 16
    • Tutte le altre opzioni: 256 (ridimensionata, se necessario)
  • Fare clic con il tasto destro del mouse-> Proprietà / scegliere una nuova icona: 32
  • Appuntato alla barra delle applicazioni: 32
    • Menu contestuale: 16
  • Desktop:
    • Piccoli simboli: 32
    • Simboli medi: 48
    • Simboli grandi: 256 (ridimensionati, se necessario)
    • Zoom usando Ctrl + Rotellina del mouse: 16, 32, 48, 256

Windows Runtime: ( da qui )

  • Piastrella principale: 150x150, 310x150 (versione larga)
  • Logo piccolo: 30x30
  • Badge (per blocco schermo): 24x24, monocromatico
  • Splashscreen: 620x300
  • Negozio: 50x50

Quindi il risultato: Windows XP utilizza icone di dimensioni 16, 32, 48, mentre Windows 7 (e presumibilmente anche Vista) utilizza anche icone di dimensioni 256. Tutte le altre dimensioni di icone intermedie vengono ignorate ( possono essere utilizzate in alcune aree che non ho controllato).


Ho anche verificato in Windows 7 cosa succede se mancano le dimensioni dell'icona:

Le dimensioni mancanti vengono generate (ovviamente). Con dimensioni di 16, 32 e 48, se ne manca uno, si preferisce il ridimensionamento. Quindi, se abbiamo icone con dimensioni 16 e 48, l'icona 32 viene creata dall'icona 48. L'icona 256 viene utilizzata solo per questi se non sono disponibili altre dimensioni! Quindi, se le icone hanno dimensioni 16 e 256, le altre dimensioni vengono ingrandite dall'icona 16!

Inoltre, se l'icona 256 non è presente, viene utilizzata l'icona (eventualmente generata) 48, ma non più ridimensionata. Quindi abbiamo un'area vuota (possibilmente grande) con l'icona 48 al centro.

Si noti che la dimensione dell'icona del desktop predefinita in XP era 32x32, mentre in Windows 7 è 48x48. Di conseguenza, per Windows 7 è relativamente importante avere un'icona 48. Altrimenti, viene ingrandito da un'icona più piccola, che può sembrare piuttosto brutta.


Solo una nota sulla compatibilità di Windows XP: se riutilizzi l'icona come icona della finestra, tieni presente che ciò può causare l'arresto anomalo dell'applicazione se usi un'icona 256 compressa. La soluzione è non comprimere l'icona o creare una seconda versione senza l'icona (compressa) 256. Vedi qui per maggiori informazioni.


12
Bene, qui dice che è richiesto anche 64px, e sulle linee guida ufficiali dell'icona dice anche 20px, 24px e 40px. L'icona 40px sembra essere usata in alt + tab e baloons, altri sembrano essere usati a seconda del DPI (ad esempio, 20px in uso invece di 16px in uno schermo a DPI più alto, altrimenti ridimensionato dalla dimensione più grande di 32px, che potrebbe apparire ancora più brutto). Non ho ancora testato.
Camilo Martin,

2
Ho fatto qualche altro test. Per la visualizzazione sul desktop, quando l'ho impostato su 144 dpi ("150%") su Windows 7, per l'icona più piccola possibile utilizzava l'icona 24px (se presente, altrimenti 16px uprezzed). Dalle linee guida dell'icona, sembra che ci sia una "Modalità classica" su Vista che utilizza anche l'icona 64px. Tuttavia, Windows 7 non lo utilizza. Piuttosto, viene ridimensionata solo l'icona a 256 px.
Daniel Rose,

Interessante, grazie per i reperti. In ogni caso, non so quante applicazioni in natura abbiano più di 16, 32, 48 e (si spera) icone da 256 px. Immagino pochissimi. Ma forse gli utenti lo noterebbero, perché un'icona tra gli altri è più nitida.
Camilo Martin,

@Camilo Si noti che è possibile ridimensionare con CTRL + rotellina del mouse e tutte le dimensioni "intermedie" vengono aggiornate / ridimensionate. Tuttavia, ciò che viene sicuramente notato è se manca l'icona 48px, poiché questa è la dimensione utilizzata nel desktop predefinito di Windows 7.
Daniel Rose,

3
E manca metà del tempo se l'applicazione è un'utilità e un software non molto popolare, o vecchio ... Anche alcune delle icone di Visual Studio (quelle per i tipi di file) non hanno nemmeno versioni a 48px.
Camilo Martin,

28

Dopo alcuni test con un'icona con 8, 16, 20, 24, 32, 40, 48, 64, 96, 128 e 256 pixel (256 in PNG) in Windows 7:

  • Con una risoluzione del 100%: Explorer utilizza 16, 40, 48 e 256. Windows Photo Viewer utilizza 96. Paint utilizza 256.
  • Con una risoluzione del 125%: Explorer utilizza 20, 40 e 256. Windows Photo Viewer utilizza 96. Paint ne utilizza 256.
  • Con una risoluzione del 150%: Explorer utilizza 24, 48 e 256. Windows Photo Viewer utilizza 96. Paint utilizza 256.
  • Con una risoluzione del 200%: Explorer utilizza 40, 64, 96 e 256. Windows Photo Viewer utilizza 128. Paint utilizza 256.

Quindi 8, 32 non sono mai stati usati (è strano per me per 32) e 128 solo da Windows Photo Viewer con uno schermo a dpi molto elevato, cioè quasi mai usato.

Significa che la tua icona dovrebbe fornire almeno 16, 48 e 256 per Windows 7. Per supportare schermate più recenti con risoluzioni elevate, devi fornire 16, 20, 24, 40, 48, 64, 96 e 256. Per Windows 7, tutti le immagini possono essere compresse utilizzando PNG ma per compatibilità con le versioni precedenti di Windows XP, non devono essere compresse da 16 a 48.


Vedi la mia risposta qui ( stackoverflow.com/questions/12385143/… ) ma se comprimi l'immagine 256x256 nel file .ico ... I sistemi Windows XP avranno problemi ad aprire il file. Otterrai FileFormatException con HRESULT 0x88982F07.
complotta il

Vale anche la pena ricordare che le versioni DPI elevate devono essere salvate in modalità 24bpp, ho provato a memorizzarle in modalità colore a 8 bit e Windows 7 ha usato la versione 256px invece di 20x20px in DPI 125%.
Bartosz Wójcik,

2
Questo è semplice, ma esauriente. Molto importante prendere in considerazione DPI.
martedì

24

La linea guida dell'icona di Microsoft UX dice:

"Icone dell'applicazione e elementi del pannello di controllo: il set completo include 16x16, 32x32, 48x48 e 256x256 (il codice si bilancia tra 32 e 256)."

Per me questo implica (ma purtroppo non afferma esplicitamente) che è necessario fornire quelle 4 dimensioni.

Ulteriori dettagli sui formati di colore, che potresti trovare utili:

  • "I file di icone richiedono anche versioni di palette a 8 e 4 bit, per supportare l'impostazione predefinita in un desktop remoto."

  • "Dovrebbe essere inclusa solo una copia a 32 bit dell'immagine da 256x256 pixel e solo l'immagine da 256x256 pixel dovrebbe essere compressa [come PNG] per mantenere le dimensioni del file ridotte."



12

Nel caso di Windows 10 questo non è esattamente accurato, in realtà nessuna delle risposte su StackOverflow lo era, l'ho scoperto quando ho provato a usare la pixel art come icona e mi è stato riscalato quando non doveva (era facile per vedere in questo caso la causa dell'interpolazione e del livellamento delle finestre) anche tu ho usato le dimensioni di questo post.

Quindi ho creato un'app e fatto il lavoro su tutte le impostazioni DPI, vederla qui:
Windows 10 tutte le risoluzioni delle icone su tutte le impostazioni DPI
Puoi anche usare la mia app per creare icone, anche con l'interpolazione del vicino più vicino con il livellamento, che non è fatto con uno dei cattivi editor che ho visto.

Se vuoi solo le risoluzioni:
16, 20, 24, 28, 30, 31, 32, 40, 42, 47, 48, 56, 60, 63, 84, 256
e dovresti usare tutte le icone PNG e tutto ciò che hai inserito accanto a questi non verrà visualizzato. Vedi il mio post perché.


7

Non 96x96, utilizzare invece 64x64. Di solito uso:

  • 16 - pulsante barra stato / titolo
  • 32 - icona sul desktop
  • 48 - vista cartella
  • 64/128 - Taglie aggiuntive

256 funziona anche su XP, tuttavia, i vecchi compilatori di risorse a volte si lamentavano di errori di "memoria insufficiente".


Ho visto che hai già avuto a che fare con Java. Come posso implementare tale comportamento con Java? Il problema è che l'icona visualizzata nella barra delle attività del sistema è molto più grande rispetto all'icona nella barra del titolo e non può essere ridimensionata correttamente dal sistema. Il massimo che posso fare è stage.getIcons (). Add (image); ma non mi consente di specificare quali dimensioni e dove appartiene, ad esempio la barra delle applicazioni, la vista cartelle o qualsiasi altra. Sto usando JavaFX 8
homerun

1
@someFolk java si compila in file "class" o in un file "jar" (che è un file zip di file class + manifest). In altre parole, non viene compilato in PE (file eseguibili di Windows). Tuttavia, ci sono strumenti che creano involucri per te - sostanzialmente piccoli programmi che contengono il jar come risorsa (che viene estratto ed eseguito quando il programma viene eseguito). La risposta qui menziona alcuni di essi. Ciò significa che il tuo problema dipende dal programma che usi. Tuttavia, ci sono strumenti per la modifica delle risorse (ad esempio: Resource Hacker )
Christian

2

Dai consigli di Microsoft MSDN :

Icone dell'applicazione e elementi del pannello di controllo : il set completo include 16x16, 32x32, 48x48 e 256x256 (il codice si bilancia tra 32 e 256). È richiesto il formato file .ico. Per la modalità classica, il set completo è 16x16, 24x24, 32x32, 48x48 e 64x64.

Quindi abbiamo già dimensioni standard consigliate di:

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

Se desideriamo supportare impostazioni DPI elevate, l'elenco completo includerà anche le seguenti dimensioni:

  • 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.
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.