PDFMove
¿Adónde va la transparencia al convertir de PNG a JPG?
Guía

¿Adónde va la transparencia al convertir de PNG a JPG?

6 min de lectura

Lo que se pierde no es un ajuste, es un canal

Convertir a JPG un PNG con fondo transparente y encontrarse con un rectángulo blanco es el resultado que más desconcierto genera en la conversión de imágenes en línea. La gente suele creer que se trata de un error de configuración y se pone a buscar la opción correcta. En realidad, lo que se pierde aquí no es un ajuste, sino una capa de datos que el formato de destino nunca ha tenido.

En este artículo explicamos qué es el canal alfa, por qué no existe en JPG y qué se les hace exactamente a los píxeles transparentes en el momento de la conversión.

¿Qué es el canal alfa?

En una imagen digital, cada píxel transporta información de color. En la representación más habitual, esa información se compone de tres canales: rojo, verde y azul. PNG añade a esos tres un cuarto canal: el alfa. El canal alfa no guarda color, sino cuán opaco es ese píxel.

El valor alfa puede tomar 256 niveles distintos. En un extremo, el píxel es completamente invisible y el fondo que hay detrás se ve tal cual. En el otro, el píxel es completamente opaco y no deja ver nada de lo que hay detrás. Los valores intermedios expresan semitransparencia y son, en la práctica, los más críticos: la transición suave en el borde curvo de un logotipo, la sombra bajo un objeto, el fondo difuminado de un efecto de cristal funcionan siempre con valores alfa intermedios.

Por eso la transparencia de PNG no se reduce a un binario de "hay o no hay". Ese es exactamente el punto que la separa de la transparencia binaria de GIF, que solo puede elegir entre totalmente transparente y totalmente opaco.

¿Por qué JPG no tiene canal alfa?

JPG se diseñó para almacenar fotografías de forma eficiente. Una fotografía no tiene fondo; todo el encuadre rectangular está lleno. Por tanto, en el diseño del formato nunca surgió una necesidad como la transparencia. En la estructura de archivo de JPG no hay definido ningún espacio donde guardar un canal alfa.

Esto no es una carencia del software ni una función desactivada después, sino una decisión de diseño del propio formato. Ningún conversor y ningún ajuste pueden cambiarlo. No existe ni puede existir una opción que diga "convertir a JPG conservando la transparencia".

¿Qué ocurre exactamente en el momento de la conversión?

El conversor abre el PNG y obtiene la matriz de píxeles de cuatro canales. Para guardarla como JPG tiene que reducir esa matriz a tres canales. Descartar el canal alfa sin más dejaría los píxeles transparentes con colores arbitrarios; por eso la operación que se realiza es una mezcla llamada "aplanado".

Durante el aplanado, el programa elige un color de relleno y mezcla cada píxel con ese color según su propio valor alfa. Un píxel completamente transparente pasa a ser el color de relleno en sí. Un píxel semitransparente se convierte en la media ponderada entre su color y el de relleno. Los píxeles completamente opacos quedan sin cambios.

Cuál sea el color de relleno no está escrito en el formato; es una preferencia del programa. La gran mayoría de los editores de imagen y de las herramientas en línea usan blanco. Algunas bibliotecas de procesamiento de imagen, en cambio, representan las zonas transparentes con el valor cero y producen un relleno negro. Por eso es normal que pase el mismo archivo por dos herramientas distintas y obtenga colores de fondo diferentes.

¿Dónde duele más?

En logotipos de bordes suaves. Los bordes curvos de un logotipo se ven lisos gracias al suavizado, y ese suavizado se consigue con píxeles semitransparentes. Tras el relleno blanco, el logotipo puede seguir viéndose bien sobre fondo blanco, pero al colocarlo sobre un fondo oscuro aparece un halo claro alrededor de los bordes.

En gráficos con sombra. Las sombras suaves, diseñadas para parecer naturales, se mezclan con el color de relleno y ya no pueden adaptarse al fondo sobre el que se sitúan. La sombra se convierte en una mancha fija e independiente del soporte.

En imágenes de producto con el fondo recortado. El fondo que se eliminó para el comercio electrónico vuelve en el instante en que se convierte a JPG; esta vez como un rectángulo blanco. La flexibilidad de mostrar el producto sobre fondos distintos se pierde por completo.

¿Por qué no se puede deshacer?

La pérdida no se produce en el formato de archivo, sino en la imagen misma. Después de la conversión, la zona blanca ya no es una región marcada como "antes era transparente"; es una parte real y corriente de la imagen. Al convertir el archivo de nuevo a PNG, esa zona blanca se guarda sin pérdidas igual que el resto de los píxeles.

La única forma de recuperar la transparencia es volver a recortar el fondo. Con un relleno plano de un solo color eso resulta relativamente fácil, pero como los bordes suaves y las sombras han quedado mezclados, el resultado no sale tan limpio como el original.

¿Cuál es el enfoque correcto?

No borre nunca el PNG de origen; al convertir el PNG a JPG, genere siempre un archivo nuevo. Si sigue necesitando transparencia, el formato de destino no debe ser JPG: WEBP admite el canal alfa tanto en modo con pérdidas como sin pérdidas y suele dar un archivo claramente más pequeño que PNG. Si el fondo de la imagen va a ser en todos los casos un color conocido y fijo, elegir ese color como relleno de forma consciente también es una solución legítima: en ese caso no sufre ninguna pérdida, solo renuncia a su flexibilidad.

En resumen

Cuando convierte a JPG, la transparencia no se va a ninguna parte: simplemente no puede guardarse. Como el canal alfa no está definido en la estructura de archivo de JPG, los píxeles transparentes y semitransparentes se mezclan con un color de relleno y pasan a formar parte permanente de la imagen. Que sea blanco o negro es una preferencia de la herramienta. La pregunta que hay que hacerse antes de decidir es esta: ¿el fondo de esta imagen tendrá que situarse en el futuro sobre un soporte distinto? Si la respuesta es sí, JPG no es el destino correcto.

Preguntas frecuentes

¿Por qué el fondo unas veces sale blanco y otras negro?

Como en JPG no se puede guardar la información de transparencia, el conversor tiene que rellenar los píxeles transparentes con un color, y qué color use es una decisión del programa, no del formato. La mayoría de las herramientas en línea y de los editores de imagen usan blanco, porque la mayoría de los fondos de documento y de web son blancos. Algunas bibliotecas, en cambio, representan los píxeles transparentes con el valor cero, y el resultado sale negro. Por eso no es sorprendente que convierta el mismo archivo con dos herramientas distintas y obtenga resultados diferentes.

¿Qué pasa con los píxeles semitransparentes durante la conversión?

Los píxeles semitransparentes se mezclan con el color de relleno; es decir, una sombra gris transparente al cincuenta por ciento se convierte en un tono gris claro sobre relleno blanco y deja de transportar información de transparencia. Este es el problema más llamativo en logotipos con sombra y en gráficos de bordes suaves, porque los bordes de la imagen ya no se funden con el fondo, sino que aparecen como un halo blanco. Al colocarla sobre un fondo oscuro, ese halo se nota de inmediato. En toda imagen con suavizado de bordes este efecto está presente en alguna medida.

¿Hay alguna forma de conservar la transparencia antes de convertir?

Al convertir a JPG no la hay, porque el formato no define un canal alfa. Si quiere conservar la transparencia y además reducir el archivo, el destino correcto es WEBP; admite transparencia tanto en modo con pérdidas como sin pérdidas y suele ser claramente más pequeño que PNG. Como alternativa, puede quedarse en PNG y reducir las dimensiones en píxeles de la imagen hasta la medida que realmente necesita. Si el fondo definitivo de la imagen va a ser en todos los casos un color fijo y conocido, usar ese color como relleno de forma deliberada también es una solución aceptable.

Si vuelvo a convertir el JPG a PNG, ¿recupero la transparencia?

No. Un cambio de formato solo modifica cómo se empaquetan los datos, no regenera la información eliminada. En el JPG todos los píxeles son ya opacos y el color de relleno se ha convertido en parte real de la imagen; al pasar a PNG, esa zona blanca también se guardará sin pérdidas. Para recuperar la transparencia tendría que volver a recortar el fondo, es decir, aplicar un proceso aparte de eliminación de fondo.

Pruébalo ahora mismo con PNG → JPG Dönüştür.

Probar PNG → JPG Dönüştür