19
19
IDENTITY_MATRIX, info, isArray, isCmd, isDict, isEOF, isName, isNum,
20
20
isStream, isString, JpegStream, Lexer, Metrics, Name, Parser,
21
21
Pattern, PDFImage, PDFJS, serifFonts, stdFontMap, symbolsFonts,
22
- TilingPattern, TODO, warn, Util, MissingDataException, globalScope */
22
+ TilingPattern, TODO, warn, Util, MissingDataException, Promise */
23
23
24
24
'use strict' ;
25
25
26
26
var PartialEvaluator = (function PartialEvaluatorClosure () {
27
- function PartialEvaluator (xref , handler , pageIndex , uniquePrefix ) {
27
+ function PartialEvaluator (pdfManager , xref , handler , pageIndex ,
28
+ uniquePrefix ) {
28
29
this .state = new EvalState ();
29
30
this .stateStack = [];
30
31
32
+ this .pdfManager = pdfManager ;
31
33
this .xref = xref ;
32
34
this .handler = handler ;
33
35
this .pageIndex = pageIndex ;
@@ -165,7 +167,7 @@ var PartialEvaluator = (function PartialEvaluatorClosure() {
165
167
buildFormXObject : function PartialEvaluator_buildFormXObject (resources ,
166
168
xobj , smask ) {
167
169
var self = this ;
168
- var promise = new PDFJS . Promise ();
170
+ var promise = new Promise ();
169
171
var fnArray = [];
170
172
var argsArray = [];
171
173
@@ -302,7 +304,7 @@ var PartialEvaluator = (function PartialEvaluatorClosure() {
302
304
fn , args , resources , pattern , patternDict ) {
303
305
var self = this ;
304
306
// Create an IR of the pattern code.
305
- var promise = new PDFJS . Promise ();
307
+ var promise = new Promise ();
306
308
var opListPromise = this .getOperatorList (pattern ,
307
309
patternDict .get ('Resources' ) || resources );
308
310
opListPromise .then (function (data ) {
@@ -324,7 +326,7 @@ var PartialEvaluator = (function PartialEvaluatorClosure() {
324
326
handleSetFont : function PartialEvaluator_handleSetFont (
325
327
resources , fontArgs , font ) {
326
328
327
- var promise = new PDFJS . Promise ();
329
+ var promise = new Promise ();
328
330
// TODO(mack): Not needed?
329
331
var fontName ;
330
332
if (fontArgs ) {
@@ -413,7 +415,7 @@ var PartialEvaluator = (function PartialEvaluatorClosure() {
413
415
gStateObj .push ([key , value ]);
414
416
break ;
415
417
case 'Font' :
416
- var promise = new PDFJS . Promise ();
418
+ var promise = new Promise ();
417
419
self .handleSetFont (resources , null , value [0 ]).then (function (data ) {
418
420
var gState = ['Font' , data .loadedName , value [1 ]];
419
421
promise .resolve ({
@@ -478,8 +480,8 @@ var PartialEvaluator = (function PartialEvaluatorClosure() {
478
480
}
479
481
}
480
482
481
- var promise = new PDFJS . Promise ();
482
- PDFJS . Promise .all (promises ).then (function (datas ) {
483
+ var promise = new Promise ();
484
+ Promise .all (promises ).then (function (datas ) {
483
485
for (var i = 0 , n = datas .length ; i < n ; ++i ) {
484
486
var data = datas [i ];
485
487
var index = indices [i ];
@@ -500,7 +502,7 @@ var PartialEvaluator = (function PartialEvaluatorClosure() {
500
502
501
503
loadFont : function PartialEvaluator_loadFont (fontName , font , xref ,
502
504
resources ) {
503
- var promise = new PDFJS . Promise ();
505
+ var promise = new Promise ();
504
506
505
507
var fontRes = resources .get ('Font' );
506
508
@@ -551,7 +553,7 @@ var PartialEvaluator = (function PartialEvaluatorClosure() {
551
553
opListPromises .push (
552
554
this .getOperatorList (glyphStream , fontResources ));
553
555
}
554
- PDFJS . Promise .all (opListPromises ).then (function (datas ) {
556
+ Promise .all (opListPromises ).then (function (datas ) {
555
557
var charProcOperatorList = {};
556
558
var dependencies = {};
557
559
for (var i = 0 , n = charProcKeys .length ; i < n ; ++i ) {
@@ -606,7 +608,7 @@ var PartialEvaluator = (function PartialEvaluatorClosure() {
606
608
// dictionary
607
609
var parser = new Parser (new Lexer (stream , OP_MAP ), false , xref );
608
610
609
- var promise = new PDFJS . Promise ();
611
+ var promise = new Promise ();
610
612
function parseCommands () {
611
613
try {
612
614
parser .restoreState ();
@@ -770,7 +772,7 @@ var PartialEvaluator = (function PartialEvaluatorClosure() {
770
772
subQueuePromises .push (argsArray [i ][0 ]);
771
773
}
772
774
}
773
- PDFJS . Promise .all (subQueuePromises ).then (function (datas ) {
775
+ Promise .all (subQueuePromises ).then (function (datas ) {
774
776
// TODO(mack): Optimize by using repositioning elements
775
777
// in original queue rather than creating new queue
776
778
@@ -817,10 +819,7 @@ var PartialEvaluator = (function PartialEvaluatorClosure() {
817
819
throw e ;
818
820
}
819
821
820
- var streamManager = globalScope .pdfManager .streamManager ;
821
- streamManager .requestRange (e .begin , e .end , function () {
822
- parseCommands ();
823
- });
822
+ self .pdfManager .requestRange (e .begin , e .end ).then (parseCommands );
824
823
}
825
824
}
826
825
parser .saveState ();
@@ -832,7 +831,7 @@ var PartialEvaluator = (function PartialEvaluatorClosure() {
832
831
getAnnotationsOperatorList :
833
832
function PartialEvaluator_getAnnotationsOperatorList (annotations ,
834
833
dependency ) {
835
- var promise = new PDFJS . Promise ();
834
+ var promise = new Promise ();
836
835
837
836
// 12.5.5: Algorithm: Appearance streams
838
837
function getTransformMatrix (rect , bbox , matrix ) {
@@ -878,13 +877,13 @@ var PartialEvaluator = (function PartialEvaluatorClosure() {
878
877
annotation .resources );
879
878
opListPromises .push (opListPromise );
880
879
} else {
881
- var opListPromise = new PDFJS . Promise ();
880
+ var opListPromise = new Promise ();
882
881
opListPromise .resolve (createOperatorList ());
883
882
opListPromises .push (opListPromise );
884
883
}
885
884
}
886
885
887
- PDFJS . Promise .all (opListPromises ).then (function (datas ) {
886
+ Promise .all (opListPromises ).then (function (datas ) {
888
887
var fnArray = [];
889
888
var argsArray = [];
890
889
var dependencies = {};
@@ -923,10 +922,10 @@ var PartialEvaluator = (function PartialEvaluatorClosure() {
923
922
var MULTI_SPACE_FACTOR = 1.5 ;
924
923
var self = this ;
925
924
926
- var statePromise = new PDFJS . Promise ();
925
+ var statePromise = new Promise ();
927
926
928
927
function handleSetFont (fontName , fontRef , resources ) {
929
- var promise = new PDFJS . Promise ();
928
+ var promise = new Promise ();
930
929
self .loadFont (fontName , fontRef , self .xref , resources ).then (
931
930
function (data ) {
932
931
promise .resolve (data .font .translated );
@@ -969,7 +968,7 @@ var PartialEvaluator = (function PartialEvaluatorClosure() {
969
968
//.translated;
970
969
break ;
971
970
case 'TJ' :
972
- var chunkPromise = new PDFJS . Promise ();
971
+ var chunkPromise = new Promise ();
973
972
chunkPromises .push (chunkPromise );
974
973
fontPromise .then (function (items , font ) {
975
974
var chunk = '';
@@ -994,7 +993,7 @@ var PartialEvaluator = (function PartialEvaluatorClosure() {
994
993
}.bind (null , args [0 ]));
995
994
break ;
996
995
case 'Tj' :
997
- var chunkPromise = new PDFJS . Promise ();
996
+ var chunkPromise = new Promise ();
998
997
chunkPromises .push (chunkPromise );
999
998
fontPromise .then (function (charCodes , font ) {
1000
999
var chunk = fontCharsToUnicode (charCodes , font );
@@ -1006,7 +1005,7 @@ var PartialEvaluator = (function PartialEvaluatorClosure() {
1006
1005
// For search, adding a extra white space for line breaks
1007
1006
// would be better here, but that causes too much spaces in
1008
1007
// the text-selection divs.
1009
- var chunkPromise = new PDFJS . Promise ();
1008
+ var chunkPromise = new Promise ();
1010
1009
chunkPromises .push (chunkPromise );
1011
1010
fontPromise .then (function (charCodes , font ) {
1012
1011
var chunk = fontCharsToUnicode (charCodes , font );
@@ -1016,7 +1015,7 @@ var PartialEvaluator = (function PartialEvaluatorClosure() {
1016
1015
break ;
1017
1016
case '"' :
1018
1017
// Note comment in "'"
1019
- var chunkPromise = new PDFJS . Promise ();
1018
+ var chunkPromise = new Promise ();
1020
1019
chunkPromises .push (chunkPromise );
1021
1020
fontPromise .then (function (charCodes , font ) {
1022
1021
var chunk = fontCharsToUnicode (charCodes , font );
@@ -1081,7 +1080,7 @@ var PartialEvaluator = (function PartialEvaluatorClosure() {
1081
1080
}
1082
1081
} // while
1083
1082
1084
- PDFJS . Promise .all (chunkPromises ).then (function (datas ) {
1083
+ Promise .all (chunkPromises ).then (function (datas ) {
1085
1084
var bidiTexts = [];
1086
1085
for (var i = 0 , n = datas .length ; i < n ; ++i ) {
1087
1086
var bidiText = datas [i ];
@@ -1100,10 +1099,7 @@ var PartialEvaluator = (function PartialEvaluatorClosure() {
1100
1099
throw e ;
1101
1100
}
1102
1101
1103
- var streamManager = globalScope .pdfManager .streamManager ;
1104
- streamManager .requestRange (e .begin , e .end , function () {
1105
- parseCommands ();
1106
- });
1102
+ self .pdfManager .requestRange (e .begin , e .end ).then (parseCommands );
1107
1103
}
1108
1104
}
1109
1105
parser .saveState ();
0 commit comments