🧩 Problema
Al trabajar con aplicaciones en Qt5 que utilizan imágenes PNG, es común encontrar en la consola el siguiente aviso:
libpng warning: iCCP: known incorrect sRGB profile
Este mensaje indica que la imagen PNG contiene un perfil de color sRGB inválido o mal definido.
👉 Importante:
Es solo un warning, no rompe la ejecución.
No afecta directamente la funcionalidad.
Pero ensucia la salida de debug, lo cual es molesto en desarrollo.
🔍 Causa
Algunas imágenes PNG (generalmente exportadas desde ciertos editores) incluyen perfiles de color incorrectos o incompatibles con libpng, que es la librería usada internamente por Qt para procesarlas.
✅ Solución rápida
Podés eliminar esos metadatos usando ImageMagick:
mogrify -strip image.png
¿Qué hace este comando?
Elimina todos los metadatos del archivo
Incluye perfiles de color (iCCP)
Sobrescribe la imagen original
⚠️ Consideración importante
Este comando modifica el archivo original. Si necesitás conservar los metadatos, hacé un backup antes.
🚀 Procesar múltiples imágenes
Si tenés muchas imágenes PNG en un proyecto, podés limpiarlas todas con:
find . -type f -name "*.png" -exec mogrify -strip {} \;
🧠 Explicación del comando
find .→ busca desde el directorio actual-type f→ solo archivos-name "*.png"→ filtra PNG-exec mogrify -strip {}→ ejecuta limpieza en cada archivo\;→ finaliza la instrucción
🎯 Resultado
Después de aplicar esto:
Se eliminan perfiles sRGB inválidos
Desaparece el warning en consola
Las imágenes siguen funcionando normalmente
🧪 Alternativa (sin sobrescribir)
Si no querés modificar los archivos originales:
convert image.png -strip image_clean.png
Esto genera una copia limpia.
🏁 Conclusión
El warning de libpng es inofensivo, pero conviene eliminarlo para mantener una salida de debug limpia. Con mogrify -strip, podés resolverlo de forma rápida y masiva en todo tu proyecto.
Si trabajás con Qt de forma intensiva, vale la pena integrar este paso en tu pipeline de assets.
No hay comentarios:
Publicar un comentario