Parar uma fonte indexada transformando o ícone da aba em uma caixa preta

FixConversionService
Navios
6 de setembro de 2026 às 04:30 UTC
Autor
Kamo
Enviar
3f4c60b

Um ícone da aba carregado como um PNG- 8 transparente chegou na aba do navegador como um preto quadrado com um logotipo irregular sobre ele. Medido no upload que o expôs: 9216 pixels em favicon-96x96.png, os 5194 que eram transparentes saíram opacos preto, e a marca que sobreviveu foi para baixo de 237 cores distintas para 46. A transparência estava intacta até o passo da escala. ImageIO descodifica um PNG indexado ao TIPO BYTE INDEXIDO com um IndexColorModel cuja transparência é uma entrada de paleta – pixel (0,0) é 0047704C, alfa zero, corretamente. Miniaturador preserva a imagem da fonte TIPO quando ele escala, por isso construiu um novo indexado imagem com uma paleta DEFAULT: a entrada alfa desapareceu, os índices sobreviventes cores endereçadas que deixaram de significar nada, e (0,0) voltou FF00000. A tela do fitSquare foi ARGB o tempo todo e pixels fielmente copiados que foram já preto — é por isso que o inseto parece que vive lá e não vive. rasterizar agora normaliza-se para type INT ARGB antes de qualquer outra coisa tocar na imagem. Convertendo uma vez onde a fonte é produzida, em vez de passar .imageType() em cada um dos sete sites de chamadas, faz "tudo passado este ponto é ARGB" segurar para os consumidores acrescentaram mais tarde, e custam uma cópia em vez de sete. Não é novo, e não só PNG-8: GIF é sempre indexado, então qualquer org cujo img/logo. svg foi realmente um GIF teve um favicon preto por tanto tempo como o caminho raster tem Existiu. Passou despercebido porque a única fonte que alguém alimentou era um SVG, que Batik devolve como ARGB. Tornou-se acessível de propósito quando os ícones da aba começou a aceitar uploads raster — PNG-8 é exatamente o que "salvar para web" lhe dá para um pequeno ícone de cor plana. Quatro testes de regressão cobrem: os PNGs, os quadros .ico (que partem por um estrada diferente, embalado por IcoEncoder), um GIF, e um afirmando a marca mantém a sua cor própria e não meramente transparência. Todos os testes existentes nesta classe feed TYPE INT ARGB, a forma de entrada única que nunca teve o problema. Verificado com o arquivo real carregado: 5185/9216 pixels transparentes, correspondentes a proporção da fonte, e 237 cores distintas onde havia 46. As organizações com um ícone de tabulação já gerado precisam de uma nova provisão para escolher o novos bytes para cima; a revisão do tema muda com ele, então os navegadores vão revalidar.

Todas as alterações

Como o que vês no transporte?

Cada uma dessas atualizações pousa automaticamente em seu espaço de trabalho. Comece grátis e veja crescer semana após semana.

Começar Livre Para SempreVer Preços