|
|
@ -445,16 +445,28 @@ var Jbig2Image = (function Jbig2ImageClosure() { |
|
|
|
// 6.5.8.2 Refinement/aggregate-coded symbol bitmap
|
|
|
|
// 6.5.8.2 Refinement/aggregate-coded symbol bitmap
|
|
|
|
var numberOfInstances = decodeInteger(contextCache, 'IAAI', decoder); |
|
|
|
var numberOfInstances = decodeInteger(contextCache, 'IAAI', decoder); |
|
|
|
if (numberOfInstances > 1) { |
|
|
|
if (numberOfInstances > 1) { |
|
|
|
error('JBIG2 error: number of instances > 1 is not supported'); |
|
|
|
bitmap = decodeTextRegion(huffman, refinement, |
|
|
|
} |
|
|
|
currentWidth, currentHeight, 0, |
|
|
|
var symbolId = decodeIAID(contextCache, decoder, symbolCodeLength); |
|
|
|
numberOfInstances, 1, //strip size
|
|
|
|
var rdx = decodeInteger(contextCache, 'IARDX', decoder); // 6.4.11.3
|
|
|
|
symbols.concat(newSymbols), |
|
|
|
var rdy = decodeInteger(contextCache, 'IARDY', decoder); // 6.4.11.4
|
|
|
|
symbolCodeLength, |
|
|
|
var symbol = (symbolId < symbols.length ? symbols[symbolId] : |
|
|
|
0, //transposed
|
|
|
|
newSymbols[symbolId - symbols.length]); |
|
|
|
0, //ds offset
|
|
|
|
bitmap = decodeRefinement(currentWidth, currentHeight, |
|
|
|
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
|
|
|
|
|
|
|
|
var symbol = (symbolId < symbols.length ? symbols[symbolId] : |
|
|
|
|
|
|
|
newSymbols[symbolId - symbols.length]); |
|
|
|
|
|
|
|
bitmap = decodeRefinement(currentWidth, currentHeight, |
|
|
|
refinementTemplateIndex, symbol, rdx, rdy, false, refinementAt, |
|
|
|
refinementTemplateIndex, symbol, rdx, rdy, false, refinementAt, |
|
|
|
decodingContext); |
|
|
|
decodingContext); |
|
|
|
|
|
|
|
} |
|
|
|
} else { |
|
|
|
} else { |
|
|
|
// 6.5.8.1 Direct-coded symbol bitmap
|
|
|
|
// 6.5.8.1 Direct-coded symbol bitmap
|
|
|
|
bitmap = decodeBitmap(false, currentWidth, currentHeight, |
|
|
|
bitmap = decodeBitmap(false, currentWidth, currentHeight, |
|
|
|