mirror of
https://github.com/zen-browser/pdf.js.git
synced 2025-07-10 10:15:37 +02:00
Special-case 24-bit RGB image-handling.
This commit is contained in:
parent
f11a6ae238
commit
f62c1c469f
3 changed files with 51 additions and 23 deletions
|
@ -526,6 +526,22 @@ var CanvasGraphics = (function CanvasGraphicsClosure() {
|
|||
ctx.putImageData(chunkImgData, 0, i * fullChunkHeight);
|
||||
}
|
||||
|
||||
} else if (imgData.kind === 'rgb_24bpp') {
|
||||
// RGB, 24-bits per pixel.
|
||||
for (var i = 0; i < totalChunks; i++) {
|
||||
var thisChunkHeight =
|
||||
(i < fullChunks) ? fullChunkHeight : partialChunkHeight;
|
||||
var elemsInThisChunk = imgData.width * thisChunkHeight * 3;
|
||||
var destPos = 0;
|
||||
for (var j = 0; j < elemsInThisChunk; j += 3) {
|
||||
chunkImgData.data[destPos++] = imgData.data[srcPos++];
|
||||
chunkImgData.data[destPos++] = imgData.data[srcPos++];
|
||||
chunkImgData.data[destPos++] = imgData.data[srcPos++];
|
||||
chunkImgData.data[destPos++] = 255;
|
||||
}
|
||||
ctx.putImageData(chunkImgData, 0, i * fullChunkHeight);
|
||||
}
|
||||
|
||||
} else {
|
||||
error('bad image kind: ' + imgData.kind);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue