O que é o formato de ficheiro ICNS?
.icns é um formato de contêiner binário usado pelo macOS. Arquivos .icns armazenam vários ícones usados por aplicativos. Cada aplicativo pode ter seu próprio arquivo de ícone, normalmente salvo no diretório Contents/Resources/ do pacote do app (bundle). Referências a arquivos .icns também são listadas em arquivos de configuração .plist. Ícones em arquivos .icns podem ser visualizados usando o macOS Finder ou abrindo-os com qualquer visualizador de imagens compatível.
O formato .icns suporta ícones de vários tamanhos, como 16×16, 32×32, 128×128, 256×256, 512×512 e 1024×1024 em sistemas mais novos. Elementos de ícone mais antigos e menores armazenam cores de 24 bits com uma máscara alfa de 8 bits usando codificação run-length (RLE). Elementos de 256×256 e superiores incorporam uma imagem .png completa - ou JPEG 2000 - fornecendo RGBA de 32 bits em resolução Retina.
O arquivo abre com o magic ASCII de 4 bytes icns seguido por um comprimento total de arquivo de 4 bytes em big-endian. O corpo é uma série de elementos de ícone, cada um identificado por uma tag OSType de 4 bytes - por exemplo, ic09 para 512×512 e ic10 para 1024×1024. Para montar um arquivo .icns a partir de imagens de origem, o macOS fornece a ferramenta de linha de comando iconutil: coloque arquivos .png nomeados corretamente em uma pasta .iconset e execute iconutil -c icns MyIcon.iconset. O formato serve ao mesmo propósito no macOS que o arquivo .ico serve no Windows.
Segurança e proteção
RISCO: LOWUm .icns consiste em dados de imagem, não código executável, portanto, um arquivo de ícone genuíno é seguro para abrir em um visualizador. Duas precauções menores: analisadores de imagem historicamente tiveram bugs (um ícone malformado poderia, em teoria, travar uma biblioteca de imagens), portanto, mantenha seu SO/visualizador atualizado; e um «ícone» inesperado que pede para EXECUTAR, ou um executável disfarçado com um nome que parece de ícone, deve ser tratado com suspeita. Para ícones de apps e pacotes de ícones baixados de fontes normais, essencialmente não há risco.
Detalhes do formato
em resumoProgramas que abrem arquivos ICNS
Detalhes técnicos
especificação profunda| Magic do arquivo | `icns` (0x69 0x63 0x6E 0x73) no deslocamento 0 |
| Estrutura do cabeçalho | magic de 4 bytes + comprimento total do arquivo de 4 bytes em big-endian, seguido por uma série de elementos de ícone |
| Ordem dos bytes | Big-endian para todos os inteiros de vários bytes |
| Formato do elemento de ícone | {tag OSType de 4 bytes, comprimento do elemento de 4 bytes, dados} - um bloco por tamanho/variante |
| Codificação de elementos pequenos | Codificação run-length (RLE) para bitmaps de cores de 24 bits (`is32`, `il32` e tipos legados semelhantes) |
| Codificação de elementos grandes | PNG ou JPEG 2000 incorporado para elementos de 256×256 e superiores |
| Profundidade de cor | Cor de 24 bits + máscara alfa de 8 bits (elementos RLE); RGBA de 32 bits via PNG incorporado (elementos modernos) |
| Tamanhos de tela suportados | 16×16, 32×32, 128×128, 256×256, 512×512, 1024×1024 (também 512×512@2× Retina) |
| Tags OSType comuns | `ic07` 128×128, `ic08` 256×256, `ic09` 512×512, `ic10` 1024×1024, `is32`/`il32` legados 16/32 px |
| Tipo MIME | `image/icns`; também registrado como `image/x-icns` |
| Localização no pacote do app | `Contents/Resources/<AppName>.icns` dentro de um pacote `.app` do macOS |
| Ferramentas de build | `iconutil -c icns MyIcon.iconset` converte uma pasta `.iconset` de arquivos PNG em um único arquivo `.icns` |
| Elemento TOC opcional | Um elemento opcional `TOC ` (com espaço no final) no início da lista de elementos permite a busca rápida sem uma varredura completa do arquivo |
| Mecanismo de integridade | Campos de comprimento por elemento e cabeçalho de comprimento de arquivo de 4 bytes; sem checksum criptográfico |
| Tamanho de arquivo típico | Alguns KB (conjunto de tamanho mínimo) a várias centenas de KB (conjunto completo de tamanho Retina) |
| Lançado | 1998 (Mac OS 8.5); replaced the classic resource-fork 'icns' icon resource as a standalone file |
| Versão mais recente | Retina/HiDPI variants and PNG/JPEG2000-compressed elements up to 1024x1024 (since macOS 10.7 Lion, 2011) |
| Especificação | en.wikipedia.org |
Conversões de ICNS
Perguntas e Respostas da Comunidade
perguntado por usuáriosAinda não há perguntas - seja o primeiro a perguntar sobre arquivos ICNS.