Che cos'è il formato di file ICNS?
.icns è un formato contenitore binario utilizzato da macOS. I file .icns memorizzano varie icone utilizzate dalle applicazioni. Ogni applicazione può avere il proprio file icona, tipicamente salvato nella directory Contents/Resources/ del pacchetto dell'app. I riferimenti ai file .icns sono elencati anche nei file di configurazione .plist. Le icone nei file .icns possono essere visualizzate utilizzando il Finder di macOS o aprendole con qualsiasi visualizzatore di immagini compatibile.
Il formato .icns supporta icone di varie dimensioni, come 16×16, 32×32, 128×128, 256×256, 512×512 e 1024×1024 sui sistemi più recenti. Gli elementi icona più vecchi e piccoli memorizzano colori a 24 bit con una maschera alpha a 8 bit utilizzando la codifica run-length. Gli elementi a 256×256 e superiori incorporano un'immagine .png completa - o JPEG 2000 - offrendo RGBA a 32 bit a risoluzione Retina.
Il file si apre con il magic ASCII a 4 byte icns seguito dalla lunghezza totale del file in big-endian a 4 byte. Il corpo è una serie di elementi icona, ciascuno identificato da un tag OSType a 4 byte - ad esempio ic09 per 512×512 e ic10 per 1024×1024. Per assemblare un file .icns da immagini sorgente, macOS fornisce lo strumento da riga di comando iconutil: posiziona i file .png correttamente nominati in una cartella .iconset ed esegui iconutil -c icns MyIcon.iconset. Il formato serve allo stesso scopo su macOS di quanto faccia il file .ico su Windows.
Sicurezza e incolumità
RISCHIO: LOWUn .icns è composto da dati immagine, non codice eseguibile, quindi un file icona autentico è sicuro da aprire in un visualizzatore. Due piccole precauzioni: i PARSER di immagini hanno storicamente avuto bug (un'icona malformata potrebbe in teoria mandare in crash una libreria di immagini), quindi tieni aggiornato il tuo sistema operativo/visualizzatore; inoltre, un'«icona» inaspettata che chiede di essere ESEGUITA, o un eseguibile camuffato con un nome che sembra un'icona, dovrebbe essere trattato con sospetto. Per le icone delle app e i pacchetti di icone scaricati da fonti normali non c'è essenzialmente alcun rischio.
Dettagli del formato
in sintesiProgrammi che aprono file ICNS
Dettagli tecnici
specifiche approfondite| Magic del file | `icns` (0x69 0x63 0x6E 0x73) all'offset 0 |
| Struttura dell'header | magic a 4 byte + lunghezza totale del file big-endian a 4 byte, seguita da una serie di elementi icona |
| Ordine dei byte | Big-endian per tutti gli interi multi-byte |
| Formato elemento icona | {tag OSType a 4 byte, lunghezza elemento a 4 byte, dati} - un blocco per dimensione/variante |
| Codifica elementi piccoli | Codifica run-length (RLE) per bitmap a 24 bit (`is32`, `il32` e tipi legacy simili) |
| Codifica elementi grandi | PNG o JPEG 2000 incorporato per elementi a 256×256 e superiori |
| Profondità colore | Colore a 24 bit + maschera alpha a 8 bit (elementi RLE); RGBA a 32 bit tramite PNG incorporato (elementi moderni) |
| Dimensioni tela supportate | 16×16, 32×32, 128×128, 256×256, 512×512, 1024×1024 (anche 512×512@2× Retina) |
| Tag OSType comuni | `ic07` 128×128, `ic08` 256×256, `ic09` 512×512, `ic10` 1024×1024, `is32`/`il32` legacy 16/32 px |
| Tipo MIME | `image/icns`; registrato anche come `image/x-icns` |
| Posizione nel pacchetto app | `Contents/Resources/<NomeApp>.icns` all'interno di un pacchetto `.app` di macOS |
| Toolchain di compilazione | `iconutil -c icns MyIcon.iconset` converte una cartella `.iconset` di file PNG in un singolo file `.icns` |
| Elemento TOC opzionale | Un elemento opzionale `TOC ` (con spazio finale) all'inizio dell'elenco degli elementi consente una ricerca rapida senza una scansione completa del file |
| Meccanismo di integrità | Campi di lunghezza per elemento e header con lunghezza file a 4 byte; nessun checksum crittografico |
| Dimensione tipica del file | Da pochi KB (set di dimensioni minimo) a diverse centinaia di KB (set completo di dimensioni Retina) |
| Rilasciato | 1998 (Mac OS 8.5); replaced the classic resource-fork 'icns' icon resource as a standalone file |
| Ultima versione | Retina/HiDPI variants and PNG/JPEG2000-compressed elements up to 1024x1024 (since macOS 10.7 Lion, 2011) |
| Specifica | en.wikipedia.org |
Conversioni ICNS
Domande e risposte della community
chiesto dagli utentiAncora nessuna domanda - sii il primo a chiedere informazioni sui file ICNS.