Merge pull request #4511 from prometheansacrifice/parsing-goodytwoshoes-pdf
Fix for #3181: jbig2 encoding for number of instances greater than 1
This commit is contained in:
commit
9a36184dfa
@ -445,8 +445,19 @@ var Jbig2Image = (function Jbig2ImageClosure() {
|
||||
// 6.5.8.2 Refinement/aggregate-coded symbol bitmap
|
||||
var numberOfInstances = decodeInteger(contextCache, 'IAAI', decoder);
|
||||
if (numberOfInstances > 1) {
|
||||
error('JBIG2 error: number of instances > 1 is not supported');
|
||||
}
|
||||
bitmap = decodeTextRegion(huffman, refinement,
|
||||
currentWidth, currentHeight, 0,
|
||||
numberOfInstances, 1, //strip size
|
||||
symbols.concat(newSymbols),
|
||||
symbolCodeLength,
|
||||
0, //transposed
|
||||
0, //ds offset
|
||||
1, //top left 7.4.3.1.1
|
||||
0, //OR operator
|
||||
huffmanTables,
|
||||
refinementTemplateIndex, refinementAt,
|
||||
decodingContext);
|
||||
} else {
|
||||
var symbolId = decodeIAID(contextCache, decoder, symbolCodeLength);
|
||||
var rdx = decodeInteger(contextCache, 'IARDX', decoder); // 6.4.11.3
|
||||
var rdy = decodeInteger(contextCache, 'IARDY', decoder); // 6.4.11.4
|
||||
@ -455,6 +466,7 @@ var Jbig2Image = (function Jbig2ImageClosure() {
|
||||
bitmap = decodeRefinement(currentWidth, currentHeight,
|
||||
refinementTemplateIndex, symbol, rdx, rdy, false, refinementAt,
|
||||
decodingContext);
|
||||
}
|
||||
} else {
|
||||
// 6.5.8.1 Direct-coded symbol bitmap
|
||||
bitmap = decodeBitmap(false, currentWidth, currentHeight,
|
||||
|
Loading…
Reference in New Issue
Block a user