Problema

Faltan algunos colores en cada versión GIF a través de la clase de capa.

Solución

El segundo argumento del método de escritura define la calidad de la imagen:

  • JPEG: La calidad de compresión es un número entre 0,0 -> 1,0. Normalmente, el valor 0.8 es un buen compromiso entre la calidad y el tamaño del archivo de la imagen.
  • GIF: El número de colores está entre 1 y 256.

Por lo tanto, el código correcto es el siguiente:

layer.write(imageBean.getImageType() , 256, cqResponse.getOutputStream());

Información adicional

Este problema se produce cuando el número de colores se establece en ocho en lugar de 256, en el método Layer.write():

layer.write(imageBean.getImageType() , 8, cqResponse.getOutputStream());

Esta obra está autorizada con arreglo a la licencia de Reconocimiento-NoComercial-CompartirIgual 3.0 Unported de Creative Commons.  Los términos de Creative Commons no cubren las publicaciones en Twitter™ y Facebook.

Avisos legales   |   Política de privacidad en línea