Embora o uso de todos os tipos de scripts para converter imagens de alta resolução PNGem uma infinidade de diferentes cópias de baixa resolução possa parecer útil (e realmente é), não se deve esquecer que esse tipo de redimensionamento automático irá renderizar imagens perceptivelmente imperfeitas .
Menor a resolução - mais borrado o ícone!
Quer dizer, eu imagemagicktambém adoro , mas não é a ferramenta certa para essa tarefa!
Em vez disso, você deve sempre solicitar um logotipo em algum formato vetorial de seu designer, por exemplo, em SVG. Com isso em mãos, você pode preparar manualmente PNGarquivos perfeitos em todas as resoluções necessárias e, em seguida, fazer um único.icns arquivo, o que tornará o ícone do seu aplicativo lindo em cada tela, de um iPhone SE barato a algumas telas Retina de última geração iMac. Você pode usar Photoshop, GIMP ou qualquer outra ferramenta de sua escolha para gerar esses PNGs.
Com base nas últimas Diretrizes de Interface Humana da Apple em 2020, você deve preparar os seguintes PNGarquivos:
+---------------------+--------------------+--------------+
| filename | resolution, pixels | density, PPI |
+---------------------+--------------------+--------------+
| icon_16x16.png | 16x16 | 72 |
| icon_16x16@2x.png | 32x32 | 144 |
| icon_32x32.png | 32x32 | 72 |
| icon_32x32@2x.png | 64x64 | 144 |
| icon_128x128.png | 128x128 | 72 |
| icon_128x128@2x.png | 256x256 | 144 |
| icon_256x256.png | 256x256 | 72 |
| icon_256x256@2x.png | 512x512 | 144 |
| icon_512x512.png | 512x512 | 72 |
| icon_512x512@2x.png | 1024x1024 | 144 |
+---------------------+--------------------+--------------+
Depois que todos os arquivos PNG forem preparados, coloque-os em algum diretório com .iconsetextensão ( Logos.iconsetpor exemplo) e execute o seguinte a partir de Terminal:
iconutil --convert icns Logos.iconset
Se não houve erros após a execução deste comando, todos os arquivos foram processados corretamente e você obteve o Logos.icnsarquivo no mesmo diretório, contendo todos os belos logotipos nítidos para seu aplicativo que se adequam a qualquer tela moderna.