pdfjs-dist 2.3.200 → 2.4.456
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of pdfjs-dist might be problematic. Click here for more details.
- package/README.md +4 -0
- package/bower.json +1 -1
- package/build/pdf.js +6499 -17971
- package/build/pdf.js.map +1 -1
- package/build/pdf.min.js +22 -1
- package/build/pdf.worker.entry.js +5 -3
- package/build/pdf.worker.js +19303 -29896
- package/build/pdf.worker.js.map +1 -1
- package/build/pdf.worker.min.js +22 -1
- package/es5/build/pdf.js +25473 -0
- package/es5/build/pdf.js.map +1 -0
- package/{lib/shared/global_scope.js → es5/build/pdf.worker.entry.js} +5 -10
- package/es5/build/pdf.worker.js +57878 -0
- package/es5/build/pdf.worker.js.map +1 -0
- package/es5/web/images/annotation-check.svg +11 -0
- package/es5/web/images/annotation-comment.svg +16 -0
- package/es5/web/images/annotation-help.svg +26 -0
- package/es5/web/images/annotation-insert.svg +10 -0
- package/es5/web/images/annotation-key.svg +11 -0
- package/es5/web/images/annotation-newparagraph.svg +11 -0
- package/es5/web/images/annotation-noicon.svg +7 -0
- package/es5/web/images/annotation-note.svg +42 -0
- package/es5/web/images/annotation-paragraph.svg +16 -0
- package/es5/web/images/loading-icon.gif +0 -0
- package/es5/web/images/shadow.png +0 -0
- package/es5/web/images/texture.png +0 -0
- package/es5/web/pdf_viewer.css +407 -0
- package/es5/web/pdf_viewer.js +7757 -0
- package/es5/web/pdf_viewer.js.map +1 -0
- package/image_decoders/pdf.image_decoders.js +1333 -4839
- package/image_decoders/pdf.image_decoders.js.map +1 -1
- package/image_decoders/pdf.image_decoders.min.js +22 -1
- package/lib/README.md +7 -0
- package/lib/core/annotation.js +683 -1066
- package/lib/core/arithmetic_decoder.js +81 -97
- package/lib/core/bidi.js +54 -46
- package/lib/core/ccitt.js +88 -81
- package/lib/core/ccitt_stream.js +15 -14
- package/lib/core/cff_parser.js +196 -193
- package/lib/core/charsets.js +4 -4
- package/lib/core/chunked_stream.js +441 -569
- package/lib/core/cmap.js +220 -279
- package/lib/core/colorspace.js +699 -863
- package/lib/core/core_utils.js +59 -80
- package/lib/core/crypto.js +379 -437
- package/lib/core/document.js +564 -673
- package/lib/core/encodings.js +15 -15
- package/lib/core/evaluator.js +983 -889
- package/lib/core/font_renderer.js +128 -171
- package/lib/core/fonts.js +451 -400
- package/lib/core/function.js +289 -285
- package/lib/core/glyphlist.js +4527 -4527
- package/lib/core/image.js +138 -117
- package/lib/core/image_utils.js +46 -63
- package/lib/core/jbig2.js +324 -332
- package/lib/core/jbig2_stream.js +18 -17
- package/lib/core/jpeg_stream.js +133 -24
- package/lib/core/jpg.js +238 -210
- package/lib/core/jpx.js +158 -157
- package/lib/core/jpx_stream.js +28 -28
- package/lib/core/metrics.js +2928 -2928
- package/lib/core/murmurhash3.js +87 -102
- package/lib/core/obj.js +1111 -1302
- package/lib/core/operator_list.js +55 -42
- package/lib/core/parser.js +956 -987
- package/lib/core/pattern.js +69 -69
- package/lib/core/pdf_manager.js +149 -316
- package/lib/core/primitives.js +45 -77
- package/lib/core/ps_parser.js +175 -214
- package/lib/core/standard_fonts.js +237 -236
- package/lib/core/stream.js +83 -77
- package/lib/core/type1_parser.js +78 -68
- package/lib/core/unicode.js +1654 -1654
- package/lib/core/worker.js +148 -196
- package/lib/core/worker_stream.js +101 -210
- package/lib/display/annotation_layer.js +733 -1155
- package/lib/display/api.js +1539 -1928
- package/lib/display/api_compatibility.js +10 -8
- package/lib/display/canvas.js +159 -158
- package/lib/display/content_disposition.js +36 -55
- package/lib/display/display_utils.js +298 -551
- package/lib/display/fetch_stream.js +181 -305
- package/lib/display/font_loader.js +273 -416
- package/lib/display/metadata.js +86 -98
- package/lib/display/network.js +376 -511
- package/lib/display/network_utils.js +20 -19
- package/lib/display/node_stream.js +276 -460
- package/lib/display/pattern_helper.js +76 -44
- package/lib/display/svg.js +1137 -1405
- package/lib/display/text_layer.js +75 -82
- package/lib/display/transport_stream.js +236 -374
- package/lib/display/webgl.js +70 -83
- package/lib/display/worker_options.js +3 -3
- package/lib/display/xml_parser.js +303 -392
- package/lib/examples/node/domstubs.js +37 -37
- package/lib/pdf.js +22 -21
- package/lib/pdf.worker.js +5 -5
- package/lib/shared/compatibility.js +2 -251
- package/lib/shared/is_node.js +7 -6
- package/lib/shared/message_handler.js +222 -194
- package/lib/shared/util.js +269 -405
- package/lib/test/unit/annotation_spec.js +1089 -1014
- package/lib/test/unit/api_spec.js +617 -544
- package/lib/test/unit/bidi_spec.js +7 -7
- package/lib/test/unit/cff_parser_spec.js +63 -62
- package/lib/test/unit/clitests_helper.js +7 -9
- package/lib/test/unit/cmap_spec.js +84 -86
- package/lib/test/unit/colorspace_spec.js +154 -154
- package/lib/test/unit/core_utils_spec.js +125 -105
- package/lib/test/unit/crypto_spec.js +181 -181
- package/lib/test/unit/custom_spec.js +22 -24
- package/lib/test/unit/display_svg_spec.js +35 -36
- package/lib/test/unit/display_utils_spec.js +139 -149
- package/lib/test/unit/document_spec.js +16 -16
- package/lib/test/unit/encodings_spec.js +12 -34
- package/lib/test/unit/evaluator_spec.js +81 -95
- package/lib/test/unit/fetch_stream_spec.js +30 -30
- package/lib/test/unit/function_spec.js +206 -204
- package/lib/test/unit/jasmine-boot.js +48 -32
- package/lib/test/unit/message_handler_spec.js +172 -162
- package/lib/test/unit/metadata_spec.js +69 -69
- package/lib/test/unit/murmurhash3_spec.js +12 -12
- package/lib/test/unit/network_spec.js +12 -12
- package/lib/test/unit/network_utils_spec.js +152 -152
- package/lib/test/unit/node_stream_spec.js +74 -90
- package/lib/test/unit/parser_spec.js +107 -113
- package/lib/test/unit/pdf_find_controller_spec.js +55 -86
- package/lib/test/unit/pdf_find_utils_spec.js +32 -32
- package/lib/test/unit/pdf_history_spec.js +32 -32
- package/lib/test/unit/primitives_spec.js +117 -115
- package/lib/test/unit/stream_spec.js +16 -14
- package/lib/test/unit/test_utils.js +119 -285
- package/lib/test/unit/testreporter.js +19 -19
- package/lib/test/unit/type1_parser_spec.js +41 -41
- package/lib/test/unit/ui_utils_spec.js +318 -426
- package/lib/test/unit/unicode_spec.js +42 -42
- package/lib/test/unit/util_spec.js +122 -143
- package/lib/web/annotation_layer_builder.js +66 -103
- package/lib/web/app.js +1166 -1196
- package/lib/web/app_options.js +61 -77
- package/lib/web/base_viewer.js +804 -850
- package/lib/web/chromecom.js +164 -249
- package/lib/web/debugger.js +149 -205
- package/lib/web/download_manager.js +38 -57
- package/lib/web/firefox_print_service.js +35 -30
- package/lib/web/firefoxcom.js +175 -374
- package/lib/web/genericcom.js +26 -108
- package/lib/web/genericl10n.js +24 -153
- package/lib/web/grab_to_pan.js +30 -30
- package/lib/web/interfaces.js +80 -258
- package/lib/web/overlay_manager.js +70 -246
- package/lib/web/password_prompt.js +38 -64
- package/lib/web/pdf_attachment_viewer.js +105 -130
- package/lib/web/pdf_cursor_tools.js +75 -102
- package/lib/web/pdf_document_properties.js +227 -376
- package/lib/web/pdf_find_bar.js +137 -171
- package/lib/web/pdf_find_controller.js +492 -549
- package/lib/web/pdf_find_utils.js +13 -13
- package/lib/web/pdf_history.js +395 -406
- package/lib/web/pdf_link_service.js +302 -349
- package/lib/web/pdf_outline_viewer.js +148 -209
- package/lib/web/pdf_page_view.js +449 -507
- package/lib/web/pdf_presentation_mode.js +304 -357
- package/lib/web/pdf_print_service.js +90 -104
- package/lib/web/pdf_rendering_queue.js +87 -108
- package/lib/web/pdf_sidebar.js +264 -304
- package/lib/web/pdf_sidebar_resizer.js +92 -119
- package/lib/web/pdf_single_page_viewer.js +77 -126
- package/lib/web/pdf_thumbnail_view.js +276 -297
- package/lib/web/pdf_thumbnail_viewer.js +186 -206
- package/lib/web/pdf_viewer.component.js +20 -21
- package/lib/web/pdf_viewer.js +55 -115
- package/lib/web/preferences.js +66 -273
- package/lib/web/secondary_toolbar.js +164 -196
- package/lib/web/text_layer_builder.js +284 -317
- package/lib/web/toolbar.js +216 -211
- package/lib/web/ui_utils.js +303 -404
- package/lib/web/view_history.js +49 -222
- package/lib/web/viewer_compatibility.js +7 -5
- package/package.json +2 -9
- package/web/pdf_viewer.css +25 -18
- package/web/pdf_viewer.js +3481 -4764
- package/web/pdf_viewer.js.map +1 -1
- package/webpack.js +14 -5
- package/lib/shared/streams_polyfill.js +0 -43
package/lib/core/type1_parser.js
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
* @licstart The following is the entire license notice for the
|
3
3
|
* Javascript code in this page
|
4
4
|
*
|
5
|
-
* Copyright
|
5
|
+
* Copyright 2020 Mozilla Foundation
|
6
6
|
*
|
7
7
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
8
8
|
* you may not use this file except in compliance with the License.
|
@@ -26,31 +26,33 @@ Object.defineProperty(exports, "__esModule", {
|
|
26
26
|
});
|
27
27
|
exports.Type1Parser = void 0;
|
28
28
|
|
29
|
-
var
|
29
|
+
var _encodings = require("./encodings.js");
|
30
30
|
|
31
|
-
var
|
31
|
+
var _core_utils = require("./core_utils.js");
|
32
32
|
|
33
|
-
var _stream = require("./stream");
|
33
|
+
var _stream = require("./stream.js");
|
34
|
+
|
35
|
+
var _util = require("../shared/util.js");
|
34
36
|
|
35
37
|
var HINTING_ENABLED = false;
|
36
38
|
|
37
39
|
var Type1CharString = function Type1CharStringClosure() {
|
38
40
|
var COMMAND_MAP = {
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
41
|
+
hstem: [1],
|
42
|
+
vstem: [3],
|
43
|
+
vmoveto: [4],
|
44
|
+
rlineto: [5],
|
45
|
+
hlineto: [6],
|
46
|
+
vlineto: [7],
|
47
|
+
rrcurveto: [8],
|
48
|
+
callsubr: [10],
|
49
|
+
flex: [12, 35],
|
50
|
+
drop: [12, 18],
|
51
|
+
endchar: [14],
|
52
|
+
rmoveto: [21],
|
53
|
+
hmoveto: [22],
|
54
|
+
vhcurveto: [30],
|
55
|
+
hvcurveto: [31]
|
54
56
|
};
|
55
57
|
|
56
58
|
function Type1CharString() {
|
@@ -303,7 +305,8 @@ var Type1CharString = function Type1CharStringClosure() {
|
|
303
305
|
|
304
306
|
return error;
|
305
307
|
},
|
306
|
-
|
308
|
+
|
309
|
+
executeCommand(howManyArgs, command, keepStack) {
|
307
310
|
var stackLength = this.stack.length;
|
308
311
|
|
309
312
|
if (howManyArgs > stackLength) {
|
@@ -319,7 +322,7 @@ var Type1CharString = function Type1CharStringClosure() {
|
|
319
322
|
this.output.push(28, value >> 8 & 0xff, value & 0xff);
|
320
323
|
} else {
|
321
324
|
value = 65536 * value | 0;
|
322
|
-
this.output.push(255, value >> 24 &
|
325
|
+
this.output.push(255, value >> 24 & 0xff, value >> 16 & 0xff, value >> 8 & 0xff, value & 0xff);
|
323
326
|
}
|
324
327
|
}
|
325
328
|
|
@@ -333,6 +336,7 @@ var Type1CharString = function Type1CharStringClosure() {
|
|
333
336
|
|
334
337
|
return false;
|
335
338
|
}
|
339
|
+
|
336
340
|
};
|
337
341
|
return Type1CharString;
|
338
342
|
}();
|
@@ -406,7 +410,7 @@ var Type1Parser = function Type1ParserClosure() {
|
|
406
410
|
}
|
407
411
|
|
408
412
|
function isSpecial(c) {
|
409
|
-
return c ===
|
413
|
+
return c === 0x2f || c === 0x5b || c === 0x5d || c === 0x7b || c === 0x7d || c === 0x28 || c === 0x29;
|
410
414
|
}
|
411
415
|
|
412
416
|
function Type1Parser(stream, encrypted, seacAnalysisEnabled) {
|
@@ -429,7 +433,7 @@ var Type1Parser = function Type1ParserClosure() {
|
|
429
433
|
while (true) {
|
430
434
|
var token = this.getToken();
|
431
435
|
|
432
|
-
if (token === null || token ===
|
436
|
+
if (token === null || token === "]" || token === "}") {
|
433
437
|
break;
|
434
438
|
}
|
435
439
|
|
@@ -448,7 +452,7 @@ var Type1Parser = function Type1ParserClosure() {
|
|
448
452
|
},
|
449
453
|
readBoolean: function Type1Parser_readBoolean() {
|
450
454
|
var token = this.getToken();
|
451
|
-
return token ===
|
455
|
+
return token === "true" ? 1 : 0;
|
452
456
|
},
|
453
457
|
nextChar: function Type1_nextChar() {
|
454
458
|
return this.currentChar = this.stream.getByte();
|
@@ -463,12 +467,12 @@ var Type1Parser = function Type1ParserClosure() {
|
|
463
467
|
}
|
464
468
|
|
465
469
|
if (comment) {
|
466
|
-
if (ch ===
|
470
|
+
if (ch === 0x0a || ch === 0x0d) {
|
467
471
|
comment = false;
|
468
472
|
}
|
469
473
|
} else if (ch === 0x25) {
|
470
474
|
comment = true;
|
471
|
-
} else if (!(0,
|
475
|
+
} else if (!(0, _core_utils.isWhiteSpace)(ch)) {
|
472
476
|
break;
|
473
477
|
}
|
474
478
|
|
@@ -480,12 +484,12 @@ var Type1Parser = function Type1ParserClosure() {
|
|
480
484
|
return String.fromCharCode(ch);
|
481
485
|
}
|
482
486
|
|
483
|
-
var token =
|
487
|
+
var token = "";
|
484
488
|
|
485
489
|
do {
|
486
490
|
token += String.fromCharCode(ch);
|
487
491
|
ch = this.nextChar();
|
488
|
-
} while (ch >= 0 && !(0,
|
492
|
+
} while (ch >= 0 && !(0, _core_utils.isWhiteSpace)(ch) && !isSpecial(ch));
|
489
493
|
|
490
494
|
return token;
|
491
495
|
},
|
@@ -501,25 +505,25 @@ var Type1Parser = function Type1ParserClosure() {
|
|
501
505
|
var subrs = [],
|
502
506
|
charstrings = [];
|
503
507
|
var privateData = Object.create(null);
|
504
|
-
privateData[
|
508
|
+
privateData["lenIV"] = 4;
|
505
509
|
var program = {
|
506
510
|
subrs: [],
|
507
511
|
charstrings: [],
|
508
512
|
properties: {
|
509
|
-
|
513
|
+
privateData
|
510
514
|
}
|
511
515
|
};
|
512
516
|
var token, length, data, lenIV, encoded;
|
513
517
|
|
514
518
|
while ((token = this.getToken()) !== null) {
|
515
|
-
if (token !==
|
519
|
+
if (token !== "/") {
|
516
520
|
continue;
|
517
521
|
}
|
518
522
|
|
519
523
|
token = this.getToken();
|
520
524
|
|
521
525
|
switch (token) {
|
522
|
-
case
|
526
|
+
case "CharStrings":
|
523
527
|
this.getToken();
|
524
528
|
this.getToken();
|
525
529
|
this.getToken();
|
@@ -528,11 +532,11 @@ var Type1Parser = function Type1ParserClosure() {
|
|
528
532
|
while (true) {
|
529
533
|
token = this.getToken();
|
530
534
|
|
531
|
-
if (token === null || token ===
|
535
|
+
if (token === null || token === "end") {
|
532
536
|
break;
|
533
537
|
}
|
534
538
|
|
535
|
-
if (token !==
|
539
|
+
if (token !== "/") {
|
536
540
|
continue;
|
537
541
|
}
|
538
542
|
|
@@ -540,38 +544,38 @@ var Type1Parser = function Type1ParserClosure() {
|
|
540
544
|
length = this.readInt();
|
541
545
|
this.getToken();
|
542
546
|
data = length > 0 ? stream.getBytes(length) : new Uint8Array(0);
|
543
|
-
lenIV = program.properties.privateData[
|
547
|
+
lenIV = program.properties.privateData["lenIV"];
|
544
548
|
encoded = this.readCharStrings(data, lenIV);
|
545
549
|
this.nextChar();
|
546
550
|
token = this.getToken();
|
547
551
|
|
548
|
-
if (token ===
|
552
|
+
if (token === "noaccess") {
|
549
553
|
this.getToken();
|
550
554
|
}
|
551
555
|
|
552
556
|
charstrings.push({
|
553
|
-
glyph
|
554
|
-
encoded
|
557
|
+
glyph,
|
558
|
+
encoded
|
555
559
|
});
|
556
560
|
}
|
557
561
|
|
558
562
|
break;
|
559
563
|
|
560
|
-
case
|
564
|
+
case "Subrs":
|
561
565
|
this.readInt();
|
562
566
|
this.getToken();
|
563
567
|
|
564
|
-
while (this.getToken() ===
|
568
|
+
while (this.getToken() === "dup") {
|
565
569
|
var index = this.readInt();
|
566
570
|
length = this.readInt();
|
567
571
|
this.getToken();
|
568
572
|
data = length > 0 ? stream.getBytes(length) : new Uint8Array(0);
|
569
|
-
lenIV = program.properties.privateData[
|
573
|
+
lenIV = program.properties.privateData["lenIV"];
|
570
574
|
encoded = this.readCharStrings(data, lenIV);
|
571
575
|
this.nextChar();
|
572
576
|
token = this.getToken();
|
573
577
|
|
574
|
-
if (token ===
|
578
|
+
if (token === "noaccess") {
|
575
579
|
this.getToken();
|
576
580
|
}
|
577
581
|
|
@@ -580,10 +584,10 @@ var Type1Parser = function Type1ParserClosure() {
|
|
580
584
|
|
581
585
|
break;
|
582
586
|
|
583
|
-
case
|
584
|
-
case
|
585
|
-
case
|
586
|
-
case
|
587
|
+
case "BlueValues":
|
588
|
+
case "OtherBlues":
|
589
|
+
case "FamilyBlues":
|
590
|
+
case "FamilyOtherBlues":
|
587
591
|
var blueArray = this.readNumberArray();
|
588
592
|
|
589
593
|
if (blueArray.length > 0 && blueArray.length % 2 === 0 && HINTING_ENABLED) {
|
@@ -592,26 +596,26 @@ var Type1Parser = function Type1ParserClosure() {
|
|
592
596
|
|
593
597
|
break;
|
594
598
|
|
595
|
-
case
|
596
|
-
case
|
599
|
+
case "StemSnapH":
|
600
|
+
case "StemSnapV":
|
597
601
|
program.properties.privateData[token] = this.readNumberArray();
|
598
602
|
break;
|
599
603
|
|
600
|
-
case
|
601
|
-
case
|
604
|
+
case "StdHW":
|
605
|
+
case "StdVW":
|
602
606
|
program.properties.privateData[token] = this.readNumberArray()[0];
|
603
607
|
break;
|
604
608
|
|
605
|
-
case
|
606
|
-
case
|
607
|
-
case
|
608
|
-
case
|
609
|
-
case
|
610
|
-
case
|
609
|
+
case "BlueShift":
|
610
|
+
case "lenIV":
|
611
|
+
case "BlueFuzz":
|
612
|
+
case "BlueScale":
|
613
|
+
case "LanguageGroup":
|
614
|
+
case "ExpansionFactor":
|
611
615
|
program.properties.privateData[token] = this.readNumber();
|
612
616
|
break;
|
613
617
|
|
614
|
-
case
|
618
|
+
case "ForceBold":
|
615
619
|
program.properties.privateData[token] = this.readBoolean();
|
616
620
|
break;
|
617
621
|
}
|
@@ -628,19 +632,25 @@ var Type1Parser = function Type1ParserClosure() {
|
|
628
632
|
output = [14];
|
629
633
|
}
|
630
634
|
|
631
|
-
|
635
|
+
const charStringObject = {
|
632
636
|
glyphName: glyph,
|
633
637
|
charstring: output,
|
634
638
|
width: charString.width,
|
635
639
|
lsb: charString.lsb,
|
636
640
|
seac: charString.seac
|
637
|
-
}
|
641
|
+
};
|
642
|
+
|
643
|
+
if (glyph === ".notdef") {
|
644
|
+
program.charstrings.unshift(charStringObject);
|
645
|
+
} else {
|
646
|
+
program.charstrings.push(charStringObject);
|
647
|
+
}
|
638
648
|
|
639
649
|
if (properties.builtInEncoding) {
|
640
|
-
|
650
|
+
const index = properties.builtInEncoding.indexOf(glyph);
|
641
651
|
|
642
|
-
if (
|
643
|
-
properties.widths[
|
652
|
+
if (index > -1 && properties.widths[index] === undefined && index >= properties.firstChar && index <= properties.lastChar) {
|
653
|
+
properties.widths[index] = charString.width;
|
644
654
|
}
|
645
655
|
}
|
646
656
|
}
|
@@ -651,19 +661,19 @@ var Type1Parser = function Type1ParserClosure() {
|
|
651
661
|
var token;
|
652
662
|
|
653
663
|
while ((token = this.getToken()) !== null) {
|
654
|
-
if (token !==
|
664
|
+
if (token !== "/") {
|
655
665
|
continue;
|
656
666
|
}
|
657
667
|
|
658
668
|
token = this.getToken();
|
659
669
|
|
660
670
|
switch (token) {
|
661
|
-
case
|
671
|
+
case "FontMatrix":
|
662
672
|
var matrix = this.readNumberArray();
|
663
673
|
properties.fontMatrix = matrix;
|
664
674
|
break;
|
665
675
|
|
666
|
-
case
|
676
|
+
case "Encoding":
|
667
677
|
var encodingArg = this.getToken();
|
668
678
|
var encoding;
|
669
679
|
|
@@ -677,7 +687,7 @@ var Type1Parser = function Type1ParserClosure() {
|
|
677
687
|
for (var j = 0; j < size; j++) {
|
678
688
|
token = this.getToken();
|
679
689
|
|
680
|
-
while (token !==
|
690
|
+
while (token !== "dup" && token !== "def") {
|
681
691
|
token = this.getToken();
|
682
692
|
|
683
693
|
if (token === null) {
|
@@ -685,7 +695,7 @@ var Type1Parser = function Type1ParserClosure() {
|
|
685
695
|
}
|
686
696
|
}
|
687
697
|
|
688
|
-
if (token ===
|
698
|
+
if (token === "def") {
|
689
699
|
break;
|
690
700
|
}
|
691
701
|
|
@@ -700,7 +710,7 @@ var Type1Parser = function Type1ParserClosure() {
|
|
700
710
|
properties.builtInEncoding = encoding;
|
701
711
|
break;
|
702
712
|
|
703
|
-
case
|
713
|
+
case "FontBBox":
|
704
714
|
var fontBBox = this.readNumberArray();
|
705
715
|
properties.ascent = Math.max(fontBBox[3], fontBBox[1]);
|
706
716
|
properties.descent = Math.min(fontBBox[1], fontBBox[3]);
|