Primero dependerá del tipo de imagen que intente comprimir. Las dos categorías básicas son:
Para las imágenes (como fotografías), un formato lossy compression como JPEG será mejor, ya que eliminará detalles que aren' notado fácilmente por la percepción visual humana. Esto permitirá tasas de compresión muy altas para la calidad. La desventaja es que la compresión excesiva dará como resultado compression artifacts muy notable.
Para las ilustraciones que contienen grandes áreas del mismo color, utilizando un formato lossless compression como PNG o GIF será el mejor enfoque. Aunque no es técnicamente correcto, puede pensar que PNG y GIF comprimirán las repeticiones del mismo color muy bien, similar a run-length encoding (RLE).
Ahora, como mencionó específicamente PNG, entraré en ese debate desde mi experiencia de uso de PNG.
En primer lugar, comprimir un archivo PNG adicional no es una opción viable, ya que no es posible comprimir datos que ya se han comprimido. Esto es cierto con cualquier compresión de datos; eliminar el entropy de los datos de origen (básicamente, repetir patrones que se pueden representar de formas más compactas) conduce a la disminución en la cantidad de espacio necesario para almacenar la información. PNG ya emplea métodos para comprimir imágenes de manera eficiente y sin pérdidas.
Dicho esto, hay al menos una forma posible de reducir el tamaño de un archivo PNG: por reduciendo el número de colores almacenados en la imagen. Al usar "colores indexados" (básicamente incrustando una paleta personalizada en la imagen), es posible que pueda reducir el tamaño del archivo. Sin embargo, si la imagen tiene muchos colores para comenzar (como tener degradados de color o una imagen fotográfica), es posible que no pueda reducir el número de colores utilizados en una imagen sin una pérdida de calidad perceptible.
Básicamente se reducirá a un poco de prueba y error para ver si los cambios en la imagen causarán algún cambio en la calidad de la imagen y el tamaño del archivo.
El comentario de Paul Fisher me recordó que probablemente tampoco recomendaría usar GIF tampoco. Paul señala que PNG comprime el arte lineal estático mejor que GIF para casi cualquier situación.
También me gustaría señalar que GIF solo admite imágenes de 8 bits, por lo que si una imagen tiene más de 256 colores, deberá reducir los colores utilizados.
Además, el comentario de Kent Fredric sobre la reducción de la profundidad de color ha causado, en algunas situaciones, un aumento en el tamaño del archivo. Aunque esto es una especulación, es posible que dithering esté haciendo que la imagen sea menos compresible (ya que el tramado introduce píxeles con colores diferentes para simular otro color determinado, como mezclar pigmentos de diferentes colores para obtener otro color) introduciendo más entropía en la imagen.
Impresionante, echaré un vistazo a esas utilidades; mejores sugerencias hasta ahora en este hilo. ¡Gracias! –
Para algunas cosas, PNG es lo único que hará ... – seanb
PNGOUT me consiguió la imagen más pequeña hasta el momento; ¡gracias por el consejo! –