mirror of
https://github.com/haraldk/TwelveMonkeys.git
synced 2025-08-04 03:55:28 -04:00
#772 Fix WebP animation transparent frame issue
(cherry picked from commit 822b5da631a581d1493e1ab0bbc3b847cecdef3c)
This commit is contained in:
parent
5f1e746411
commit
e5a82216d2
@ -465,6 +465,8 @@ final class WebPImageReader extends ImageReaderBase {
|
||||
}
|
||||
|
||||
private void readVP8Extended(BufferedImage destination, ImageReadParam param, long streamEnd, final int width, final int height) throws IOException {
|
||||
boolean seenALPH = false;
|
||||
|
||||
while (imageInput.getStreamPosition() < streamEnd) {
|
||||
int nextChunk = imageInput.readInt();
|
||||
long chunkLength = imageInput.readUnsignedInt();
|
||||
@ -484,6 +486,12 @@ final class WebPImageReader extends ImageReaderBase {
|
||||
case WebP.CHUNK_VP8_:
|
||||
readVP8(RasterUtils.asByteRaster(destination.getRaster())
|
||||
.createWritableChild(0, 0, destination.getWidth(), destination.getHeight(), 0, 0, new int[] {0, 1, 2}), param);
|
||||
|
||||
if (header.containsALPH && !seenALPH) {
|
||||
// May happen for animation frames, if some frames are fully opaque
|
||||
opaqueAlpha(destination.getAlphaRaster());
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case WebP.CHUNK_VP8L:
|
||||
|
Loading…
x
Reference in New Issue
Block a user