More bit friendly decodeIAID and decodeInteger
This commit is contained in:
parent
e862c64bb8
commit
02a5f9435a
@ -105,7 +105,7 @@ var Jbig2Image = (function Jbig2ImageClosure() {
|
|||||||
offset = 340;
|
offset = 340;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
v = v * 2 + bit;
|
v = ((v << 1) | bit) >>> 0;
|
||||||
if (--toRead === 0) {
|
if (--toRead === 0) {
|
||||||
state = 0;
|
state = 0;
|
||||||
}
|
}
|
||||||
@ -124,12 +124,12 @@ var Jbig2Image = (function Jbig2ImageClosure() {
|
|||||||
var prev = 1;
|
var prev = 1;
|
||||||
for (var i = 0; i < codeLength; i++) {
|
for (var i = 0; i < codeLength; i++) {
|
||||||
var bit = decoder.readBit(contexts, prev);
|
var bit = decoder.readBit(contexts, prev);
|
||||||
prev = (prev * 2) + bit;
|
prev = (prev << 1) | bit;
|
||||||
}
|
}
|
||||||
if (codeLength < 31) {
|
if (codeLength < 31) {
|
||||||
return prev & ((1 << codeLength) - 1);
|
return prev & ((1 << codeLength) - 1);
|
||||||
}
|
}
|
||||||
return prev - Math.pow(2, codeLength);
|
return prev & 0x7FFFFFFF;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 7.3 Segment types
|
// 7.3 Segment types
|
||||||
|
Loading…
x
Reference in New Issue
Block a user