@@ -545,13 +545,14 @@ var Jbig2Image = (function Jbig2ImageClosure() {
545
545
// 6.5.10 Exported symbols
546
546
var exportedSymbols = [];
547
547
var flags = [], currentFlag = false ;
548
- while (flags .length < symbols .length + numberOfNewSymbols ) {
548
+ var totalSymbolsLength = symbols .length + numberOfNewSymbols ;
549
+ while (flags .length < totalSymbolsLength ) {
549
550
var runLength = decodeInteger (contextCache , 'IAEX' , decoder );
550
551
while (runLength --)
551
552
flags .push (currentFlag );
552
553
currentFlag = !currentFlag ;
553
554
}
554
- for (var i = 0 ; i < symbols .length ; i ++)
555
+ for (var i = 0 , ii = symbols .length ; i < ii ; i ++)
555
556
if (flags [i ]) exportedSymbols .push (symbols [i ]);
556
557
for (var j = 0 ; j < numberOfNewSymbols ; i ++, j ++)
557
558
if (flags [i ]) exportedSymbols .push (newSymbols [j ]);
@@ -721,7 +722,7 @@ var Jbig2Image = (function Jbig2ImageClosure() {
721
722
break ; // end of file is found
722
723
}
723
724
if (header .randomAccess ) {
724
- for (var i = 0 ; i < segments .length ; i ++) {
725
+ for (var i = 0 , ii = segments .length ; i < ii ; i ++) {
725
726
segments [i ].start = position ;
726
727
position += segments [i ].header .length ;
727
728
segments [i ].end = position ;
@@ -888,12 +889,13 @@ var Jbig2Image = (function Jbig2ImageClosure() {
888
889
error ('JBIG2 error: segment type ' + header .typeName + '(' +
889
890
header .type + ') is not implemented' );
890
891
}
891
- if (header .typeName in visitor )
892
- visitor [header .typeName ].apply (visitor , args );
892
+ var callbackName = 'on' + header .typeName ;
893
+ if (callbackName in visitor )
894
+ visitor [callbackName ].apply (visitor , args );
893
895
}
894
896
895
897
function processSegments (segments , visitor ) {
896
- for (var i = 0 ; i < segments .length ; i ++)
898
+ for (var i = 0 , ii = segments .length ; i < ii ; i ++)
897
899
processSegment (segments [i ], visitor );
898
900
}
899
901
@@ -919,7 +921,7 @@ var Jbig2Image = (function Jbig2ImageClosure() {
919
921
920
922
function parseJbig2Chunks (chunks ) {
921
923
var visitor = new SimpleSegmentVisitor ();
922
- for (var i = 0 ; i < chunks .length ; i ++) {
924
+ for (var i = 0 , ii = chunks .length ; i < ii ; i ++) {
923
925
var chunk = chunks [i ];
924
926
var segments = readSegments ({}, chunk .data , chunk .start , chunk .end );
925
927
processSegments (segments , visitor );
@@ -930,12 +932,12 @@ var Jbig2Image = (function Jbig2ImageClosure() {
930
932
function SimpleSegmentVisitor () {}
931
933
932
934
SimpleSegmentVisitor .prototype = {
933
- PageInformation : function SimpleSegmentVisitor_PageInformation (info ) {
935
+ onPageInformation : function SimpleSegmentVisitor_onPageInformation (info ) {
934
936
this .currentPageInfo = info ;
935
937
var rowSize = (info .width + 7 ) >> 3 ;
936
938
var buffer = new Uint8Array (rowSize * info .height );
937
939
var fill = info .defaultPixelValue ? 0xFF : 0 ;
938
- for (var i = 0 ; i < buffer .length ; i ++)
940
+ for (var i = 0 , ii = buffer .length ; i < ii ; i ++)
939
941
buffer [i ] = fill ;
940
942
this .buffer = buffer ;
941
943
},
@@ -976,20 +978,21 @@ var Jbig2Image = (function Jbig2ImageClosure() {
976
978
}
977
979
}
978
980
},
979
- ImmediateGenericRegion :
980
- function SimpleSegmentVisitor_ImmediateGenericRegion (region , data ,
981
- start , end ) {
981
+ onImmediateGenericRegion :
982
+ function SimpleSegmentVisitor_onImmediateGenericRegion (region , data ,
983
+ start , end ) {
982
984
var regionInfo = region .info ;
983
985
var decodingContext = new DecodingContext (data , start , end );
984
986
var bitmap = decodeBitmap (region .mmr , regionInfo .width , regionInfo .height ,
985
987
region .template , region .prediction , null ,
986
988
region .at , decodingContext );
987
989
this .drawBitmap (regionInfo , bitmap );
988
990
},
989
- SymbolDictionary :
990
- function SimpleSegmentVisitor_SymbolDictionary (dictionary , currentSegment ,
991
- referredSegments ,
992
- data , start , end ) {
991
+ onSymbolDictionary :
992
+ function SimpleSegmentVisitor_onSymbolDictionary (dictionary ,
993
+ currentSegment ,
994
+ referredSegments ,
995
+ data , start , end ) {
993
996
var huffmanTables ;
994
997
if (dictionary .huffman )
995
998
error ('JBIG2 error: huffman is not supported' );
@@ -1000,7 +1003,7 @@ var Jbig2Image = (function Jbig2ImageClosure() {
1000
1003
this .symbols = symbols = {};
1001
1004
1002
1005
var inputSymbols = [];
1003
- for (var i = 0 ; i < referredSegments .length ; i ++)
1006
+ for (var i = 0 , ii = referredSegments .length ; i < ii ; i ++)
1004
1007
inputSymbols = inputSymbols .concat (symbols [referredSegments [i ]]);
1005
1008
1006
1009
var decodingContext = new DecodingContext (data , start , end );
@@ -1011,17 +1014,17 @@ var Jbig2Image = (function Jbig2ImageClosure() {
1011
1014
dictionary .refinementTemplate , dictionary .refinementAt ,
1012
1015
decodingContext );
1013
1016
},
1014
- ImmediateTextRegion :
1015
- function SimpleSegmentVisitor_ImmediateTextRegion (region ,
1016
- referredSegments ,
1017
- data , start , end ) {
1017
+ onImmediateTextRegion :
1018
+ function SimpleSegmentVisitor_onImmediateTextRegion (region ,
1019
+ referredSegments ,
1020
+ data , start , end ) {
1018
1021
var regionInfo = region .info ;
1019
1022
var huffmanTables ;
1020
1023
1021
1024
// Combines exported symbols from all referred segments
1022
1025
var symbols = this .symbols ;
1023
1026
var inputSymbols = [];
1024
- for (var i = 0 ; i < referredSegments .length ; i ++)
1027
+ for (var i = 0 , ii = referredSegments .length ; i < ii ; i ++)
1025
1028
inputSymbols = inputSymbols .concat (symbols [referredSegments [i ]]);
1026
1029
var symbolCodeLength = log2 (inputSymbols .length );
1027
1030
0 commit comments