Como converter um PNG em arquivo ICO?
Solte o PNG nesta página, deixe 16, 32 e 48 px marcados e baixe o resultado. Tudo roda no navegador, então a imagem nunca é enviada. Na linha de comando, o equivalente usual é magick logo.png -define icon:auto-resize=48,32,16 favicon.ico.
Por que meu ícone fica borrado nos tamanhos pequenos?
Quase sempre porque o arquivo contém uma única imagem grande e tudo que é pequeno é o navegador encolhendo essa imagem na hora. Nenhuma redução é sem perda depois que a grade de pixels encolhe: traços finos e detalhes miúdos somem abaixo de uns 24 px, por melhor que seja a reamostragem, então a qualidade é decidida pelos tamanhos empacotados, não pelo conversor. Empacote uma camada real de 16 px e, se a logomarca for detalhada, simplifique o desenho para essa camada em vez de escalá-lo.
As imagens de dentro devem ser PNG ou BMP não comprimido?
PNG, a menos que você tenha um motivo para não usar: é uma ordem de grandeza menor e é lido por todos os navegadores atuais e por toda versão do Windows desde o Vista. Bitmaps não comprimidos continuam sendo a escolha mais comum no mundo real, principalmente porque o ImageMagick converte para eles por padrão, e são a aposta mais segura para software muito antigo. A página mostra os dois tamanhos de arquivo para você decidir pelo número.
Por que não existe opção de 512 px?
O diretório guarda o comprimento de cada lado em um único byte, então o maior valor que ele consegue expressar é 255 e o 0 está reservado para significar 256. Não há como escrever 512. Conversores que oferecem essa opção produzem uma entrada de diretório que não descreve a imagem atrás dela, o que é um bom jeito de acabar com um ícone que alguns programas se recusam a exibir.
Um PNG com fundo transparente continua transparente depois de virar ICO?
Sim. O canal alfa é gravado por inteiro, e a máscara de um bit que programas mais antigos leem no lugar dele é derivada do alfa em vez de ficar vazia — é justamente essa máscara vazia que transforma um fundo transparente em um quadrado preto nas ferramentas que a deixam em branco. Um pixel parcialmente transparente conta como transparente na máscara quando seu alfa cai abaixo da metade, que é a única escolha possível já que a máscara tem um bit por pixel.
Posso converter um SVG para ICO?
Pode, e uma origem vetorial é a melhor entrada possível, porque cada tamanho é desenhado a partir da geometria em vez de ser reamostrado de um bitmap. Uma ressalva: tudo que o SVG puxa pela rede — uma imagem vinculada, uma fonte remota, uma folha de estilo importada — é bloqueado durante a conversão sem disparar erro nenhum. A página procura essas referências e avisa você.
Ainda preciso de um favicon.ico na raiz do site?
Vale a pena ter, mas ele não é mais o caminho principal. A especificação HTML diz que os navegadores podem requisitar /favicon.ico, e só quando a página não tem nenhum elemento link de ícone. O elemento link é o que os navegadores devem usar primeiro; o arquivo na raiz cobre leitores de feed, rastreadores e qualquer outra coisa que nunca analisa o seu HTML.
O Google precisa de um arquivo ICO para os resultados de busca?
Não. A documentação de favicons do Google aceita BMP, GIF, ICO, PNG, JPEG, PPM e TIFF, exige uma imagem quadrada de pelo menos 8 px e recomenda passar de 48 px para que ela fique boa em superfícies diferentes. Um único PNG grande já atende; o .ico serve para todo o resto.
Por que meu navegador só mostra um tamanho quando abro um .ico?
Porque é tudo que um elemento de imagem pode entregar. Passe um .ico multitamanho a um navegador e ele escolhe uma imagem — na prática, a maior — e o resto fica inacessível. Listar cada camada exige analisar o contêiner diretamente, que é o que a aba ICO → PNG desta página faz.
O que significa o diretório e a imagem discordarem sobre o tamanho?
Significa que o arquivo é internamente inconsistente, e os decodificadores lidam com isso de maneiras opostas: alguns confiam no diretório e acabam não desenhando nada, outros confiam nos dados de imagem e renderizam corretamente. É uma causa clássica de ícone que funciona em uma máquina e some em outra, então esta página sinaliza o problema quando você abre um arquivo.
Esta ferramenta abre arquivos ICO que outros conversores rejeitam?
Muitas vezes, sim. Camadas guardadas como bitmaps com paleta — quatro ou oito bits por pixel — ainda são usadas por vários favicons conhecidos e muitos conversores as recusam de saída. Camadas quebradas também são tratadas uma a uma, então um único tamanho ilegível não impede a exportação do restante. A listagem também marca qualquer camada PNG incorporada que o Firefox vá descartar: seu decodificador ICO só aceita RGB ou RGBA de 8 bits, então um PNG com paleta ou em escala de cinza some ali. O próprio site da Mozilla já publicou um ícone com exatamente esse problema: a camada de 64 px dele é um PNG com paleta que o próprio Firefox joga fora, e só as outras camadas mantêm o ícone visível.
Minha imagem é enviada para algum lugar?
Não. O arquivo é lido com a File API do navegador, desenhado em um canvas desta página e empacotado no contêiner por JavaScript rodando localmente. Nenhuma requisição leva a imagem para lugar algum, o que você pode confirmar no painel de rede das ferramentas de desenvolvedor — ou carregando a página, desligando a rede e convertendo mesmo assim: depois que a página carrega, funciona offline.