Página 1 de 1

Usando ícone PNG

Enviado: 15 Dez 2025 10:00
por JoséQuintas
Descobri hoje algo interessante:
“PNG dentro de ICO” parece estranho à primeira vista, mas é totalmente real e funciona no Windows moderno.

🧩 O que significa “PNG dentro de um ICO”
Um arquivo .ico não é uma imagem única.
Ele é um contêiner que pode guardar várias imagens dentro dele, cada uma com:
- tamanhos diferentes (16×16, 32×32, 48×48…)
- profundidades de cor diferentes (8‑bit, 24‑bit, 32‑bit)
- formatos diferentes (BMP ou PNG)
Desde o Windows Vista, o formato ICO passou a permitir que cada imagem interna seja um PNG comprimido, em vez de um bitmap cru.
Ou seja:
✅ O arquivo .ico continua sendo .ico
✅ Mas lá dentro pode haver um PNG completo, com canal alfa, compressão etc.

🧠 Por que isso existe?
Porque:
- PNG ocupa menos espaço que BMP
- PNG suporta transparência real (alfa)
- Ícones modernos precisam de tamanhos grandes (256×256)
Um ICO com BMP de 256×256 ficaria gigantesco.
Com PNG, fica pequeno e eficiente.

🪟 Como o Windows lida com isso
O Windows (desde Vista):
✅ Carrega automaticamente PNG dentro de ICO
✅ Descomprime internamente
✅ Entrega para você um HICON normal
✅ Funciona com LoadImage, LoadIcon, CreateIconFromResourceEx etc.
Ou seja: você não precisa fazer nada especial.

Re: Usando ícone PNG

Enviado: 16 Dez 2025 13:47
por JoséQuintas
Faltou complementar:

Usar ICO com PNG dentro é uma coisa, usar PNG diretamente é outra.
Pelo que andei lendo, editores de ICO modernos já escolhem se salvam como BMP ou PNG dentro do ICO.
Parece que formato PNG só compensa se for maior que 32x32.

Confesso que fiquei confuso.
Dá a impressão de que imagem formato ICO não existe, que o formato é só um conjunto de imagens.

Mas é bom, isso abre a possibilidade de converter BMPs pra arquivos PNG menores, sem ter que fazer manobras depois.