#1233: revert the change from yesterday because it is wrong for jpeg images, fix it in lossless2 image

This commit is contained in:
honfika@gmail.com
2016-04-27 20:27:29 +02:00
parent d9ecf2e25a
commit de414487ae
2 changed files with 6 additions and 7 deletions

View File

@@ -234,7 +234,9 @@ public class DefineBitsLossless2Tag extends ImageTag implements AloneTag {
@Override
public SerializableImage getImage(boolean preMultiplyApha) {
SerializableImage bi = new SerializableImage(bitmapWidth, bitmapHeight, SerializableImage.TYPE_INT_ARGB);
SerializableImage bi = new SerializableImage(bitmapWidth, bitmapHeight, SerializableImage.TYPE_INT_ARGB_PRE);
int[] pixels = ((DataBufferInt) bi.getRaster().getDataBuffer()).getData();
ALPHACOLORMAPDATA colorMapData = null;
ALPHABITMAPDATA bitmapData = null;
if (bitmapFormat == DefineBitsLossless2Tag.FORMAT_8BIT_COLORMAPPED) {
@@ -258,11 +260,7 @@ public class DefineBitsLossless2Tag extends ImageTag implements AloneTag {
c = bitmapData.bitmapPixelData[pos];
}
if (preMultiplyApha) {
c = multiplyAlpha(c);
}
bi.setRGB(x, y, c);
pixels[pos] = c;
pos32aligned++;
pos++;
}
@@ -271,6 +269,7 @@ public class DefineBitsLossless2Tag extends ImageTag implements AloneTag {
}
}
bi.getRaster().setDataElements(0, 0, bitmapWidth, bitmapHeight, pixels);
return bi;
}

View File

@@ -128,7 +128,7 @@ public abstract class ImageTag extends DrawableTag {
}
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ImageHelper.write(getImage(true).getBufferedImage(), getImageFormat(), baos);
ImageHelper.write(getImage(false).getBufferedImage(), getImageFormat(), baos);
return new ByteArrayInputStream(baos.toByteArray());
}