Browse Source

Reuse the row Uint8Array in JBIG2's decodeBitmap

p01 11 years ago
parent
commit
840d9d40b6
  1. 5
      src/core/jbig2.js

5
src/core/jbig2.js

@ -273,6 +273,7 @@ var Jbig2Image = (function Jbig2ImageClosure() {
var sbb_right = width - maxX; var sbb_right = width - maxX;
var pseudoPixelContext = ReusedContexts[templateIndex]; var pseudoPixelContext = ReusedContexts[templateIndex];
var row = new Uint8Array(width);
var bitmap = []; var bitmap = [];
var decoder = decodingContext.decoder; var decoder = decodingContext.decoder;
@ -284,11 +285,11 @@ var Jbig2Image = (function Jbig2ImageClosure() {
var sltp = decoder.readBit(contexts, pseudoPixelContext); var sltp = decoder.readBit(contexts, pseudoPixelContext);
ltp ^= sltp; ltp ^= sltp;
if (ltp) { if (ltp) {
bitmap[i] = row;//bitmap[i - 1]); // duplicate previous row bitmap.push(row); // duplicate previous row
continue; continue;
} }
} }
var row = new Uint8Array(width); row = new Uint8Array(row);
bitmap.push(row); bitmap.push(row);
for (j = 0; j < width; j++) { for (j = 0; j < width; j++) {
if (useskip && skip[i][j]) { if (useskip && skip[i][j]) {

Loading…
Cancel
Save