Browse Source

PDF.js version 2.0.172 - See mozilla/pdf.js@f3c50fe2f96477c4d429f6ec79463fa59c1452fb

master v2.0.172
pdfjsbot 7 years ago
parent
commit
0a7a6bb977
  1. 2
      bower.json
  2. 148
      build/pdf.combined.js
  3. 2
      build/pdf.combined.js.map
  4. 14
      build/pdf.js
  5. 2
      build/pdf.js.map
  6. 2
      build/pdf.min.js
  7. 138
      build/pdf.worker.js
  8. 2
      build/pdf.worker.js.map
  9. 2
      build/pdf.worker.min.js
  10. 125
      lib/core/evaluator.js
  11. 7
      lib/core/fonts.js
  12. 2
      lib/core/worker.js
  13. 6
      lib/display/api.js
  14. 4
      lib/display/global.js
  15. 4
      lib/pdf.js
  16. 4
      lib/pdf.worker.js
  17. 2
      package.json

2
bower.json

@ -1,6 +1,6 @@ @@ -1,6 +1,6 @@
{
"name": "pdfjs-dist",
"version": "2.0.169",
"version": "2.0.172",
"main": [
"build/pdf.js",
"build/pdf.worker.js"

148
build/pdf.combined.js

@ -11607,7 +11607,7 @@ function _fetchDocument(worker, source, pdfDataRangeTransport, docId) { @@ -11607,7 +11607,7 @@ function _fetchDocument(worker, source, pdfDataRangeTransport, docId) {
if (worker.destroyed) {
return Promise.reject(new Error('Worker was destroyed'));
}
var apiVersion = '2.0.169';
var apiVersion = '2.0.172';
source.disableRange = (0, _dom_utils.getDefaultSetting)('disableRange');
source.disableAutoFetch = (0, _dom_utils.getDefaultSetting)('disableAutoFetch');
source.disableStream = (0, _dom_utils.getDefaultSetting)('disableStream');
@ -12887,8 +12887,8 @@ var InternalRenderTask = function InternalRenderTaskClosure() { @@ -12887,8 +12887,8 @@ var InternalRenderTask = function InternalRenderTaskClosure() {
}();
var version, build;
{
exports.version = version = '2.0.169';
exports.build = build = 'fbf456f5';
exports.version = version = '2.0.172';
exports.build = build = '3f3ade55';
}
exports.getDocument = getDocument;
exports.LoopbackPort = LoopbackPort;
@ -26543,8 +26543,8 @@ exports.SVGGraphics = SVGGraphics; @@ -26543,8 +26543,8 @@ exports.SVGGraphics = SVGGraphics;
"use strict";
var pdfjsVersion = '2.0.169';
var pdfjsBuild = 'fbf456f5';
var pdfjsVersion = '2.0.172';
var pdfjsBuild = '3f3ade55';
var pdfjsSharedUtil = __w_pdfjs_require__(0);
var pdfjsDisplayGlobal = __w_pdfjs_require__(129);
var pdfjsDisplayAPI = __w_pdfjs_require__(65);
@ -31873,8 +31873,8 @@ if (!_global_scope2.default.PDFJS) { @@ -31873,8 +31873,8 @@ if (!_global_scope2.default.PDFJS) {
}
var PDFJS = _global_scope2.default.PDFJS;
{
PDFJS.version = '2.0.169';
PDFJS.build = 'fbf456f5';
PDFJS.version = '2.0.172';
PDFJS.build = '3f3ade55';
}
PDFJS.pdfBug = false;
if (PDFJS.verbosity !== undefined) {
@ -35234,7 +35234,7 @@ var WorkerMessageHandler = { @@ -35234,7 +35234,7 @@ var WorkerMessageHandler = {
var cancelXHRs = null;
var WorkerTasks = [];
var apiVersion = docParams.apiVersion;
var workerVersion = '2.0.169';
var workerVersion = '2.0.172';
if (apiVersion !== null && apiVersion !== workerVersion) {
throw new Error('The API version "' + apiVersion + '" does not match ' + ('the Worker version "' + workerVersion + '".'));
}
@ -41809,69 +41809,77 @@ var PartialEvaluator = function PartialEvaluatorClosure() { @@ -41809,69 +41809,77 @@ var PartialEvaluator = function PartialEvaluatorClosure() {
return properties;
});
},
buildToUnicode: function PartialEvaluator_buildToUnicode(properties) {
properties.hasIncludedToUnicodeMap = !!properties.toUnicode && properties.toUnicode.length > 0;
if (properties.hasIncludedToUnicodeMap) {
return Promise.resolve(properties.toUnicode);
_buildSimpleFontToUnicode: function _buildSimpleFontToUnicode(properties) {
(0, _util.assert)(!properties.composite, 'Must be a simple font.');
var toUnicode = [],
charcode = void 0,
glyphName = void 0;
var encoding = properties.defaultEncoding.slice();
var baseEncodingName = properties.baseEncodingName;
var differences = properties.differences;
for (charcode in differences) {
glyphName = differences[charcode];
if (glyphName === '.notdef') {
continue;
}
encoding[charcode] = glyphName;
}
var toUnicode, charcode, glyphName;
if (!properties.composite) {
toUnicode = [];
var encoding = properties.defaultEncoding.slice();
var baseEncodingName = properties.baseEncodingName;
var differences = properties.differences;
for (charcode in differences) {
glyphName = differences[charcode];
if (glyphName === '.notdef') {
continue;
var glyphsUnicodeMap = (0, _glyphlist.getGlyphsUnicode)();
for (charcode in encoding) {
glyphName = encoding[charcode];
if (glyphName === '') {
continue;
} else if (glyphsUnicodeMap[glyphName] === undefined) {
var code = 0;
switch (glyphName[0]) {
case 'G':
if (glyphName.length === 3) {
code = parseInt(glyphName.substr(1), 16);
}
break;
case 'g':
if (glyphName.length === 5) {
code = parseInt(glyphName.substr(1), 16);
}
break;
case 'C':
case 'c':
if (glyphName.length >= 3) {
code = +glyphName.substr(1);
}
break;
default:
var unicode = (0, _unicode.getUnicodeForGlyph)(glyphName, glyphsUnicodeMap);
if (unicode !== -1) {
code = unicode;
}
}
encoding[charcode] = glyphName;
}
var glyphsUnicodeMap = (0, _glyphlist.getGlyphsUnicode)();
for (charcode in encoding) {
glyphName = encoding[charcode];
if (glyphName === '') {
continue;
} else if (glyphsUnicodeMap[glyphName] === undefined) {
var code = 0;
switch (glyphName[0]) {
case 'G':
if (glyphName.length === 3) {
code = parseInt(glyphName.substr(1), 16);
}
break;
case 'g':
if (glyphName.length === 5) {
code = parseInt(glyphName.substr(1), 16);
}
break;
case 'C':
case 'c':
if (glyphName.length >= 3) {
code = +glyphName.substr(1);
}
break;
default:
var unicode = (0, _unicode.getUnicodeForGlyph)(glyphName, glyphsUnicodeMap);
if (unicode !== -1) {
code = unicode;
}
}
if (code) {
if (baseEncodingName && code === +charcode) {
var baseEncoding = (0, _encodings.getEncoding)(baseEncodingName);
if (baseEncoding && (glyphName = baseEncoding[charcode])) {
toUnicode[charcode] = String.fromCharCode(glyphsUnicodeMap[glyphName]);
continue;
}
if (code) {
if (baseEncodingName && code === +charcode) {
var baseEncoding = (0, _encodings.getEncoding)(baseEncodingName);
if (baseEncoding && (glyphName = baseEncoding[charcode])) {
toUnicode[charcode] = String.fromCharCode(glyphsUnicodeMap[glyphName]);
continue;
}
toUnicode[charcode] = String.fromCharCode(code);
}
continue;
toUnicode[charcode] = String.fromCharCode(code);
}
toUnicode[charcode] = String.fromCharCode(glyphsUnicodeMap[glyphName]);
continue;
}
return Promise.resolve(new _fonts.ToUnicodeMap(toUnicode));
toUnicode[charcode] = String.fromCharCode(glyphsUnicodeMap[glyphName]);
}
return new _fonts.ToUnicodeMap(toUnicode);
},
buildToUnicode: function buildToUnicode(properties) {
properties.hasIncludedToUnicodeMap = !!properties.toUnicode && properties.toUnicode.length > 0;
if (properties.hasIncludedToUnicodeMap) {
if (!properties.composite && properties.hasEncoding) {
properties.fallbackToUnicode = this._buildSimpleFontToUnicode(properties);
}
return Promise.resolve(properties.toUnicode);
}
if (!properties.composite) {
return Promise.resolve(this._buildSimpleFontToUnicode(properties));
}
if (properties.composite && (properties.cMap.builtInCMap && !(properties.cMap instanceof _cmap.IdentityCMap) || properties.cidSystemInfo.registry === 'Adobe' && (properties.cidSystemInfo.ordering === 'GB1' || properties.cidSystemInfo.ordering === 'CNS1' || properties.cidSystemInfo.ordering === 'Japan1' || properties.cidSystemInfo.ordering === 'Korea1'))) {
var registry = properties.cidSystemInfo.registry;
@ -41883,7 +41891,7 @@ var PartialEvaluator = function PartialEvaluatorClosure() { @@ -41883,7 +41891,7 @@ var PartialEvaluator = function PartialEvaluatorClosure() {
useCMap: null
}).then(function (ucs2CMap) {
var cMap = properties.cMap;
toUnicode = [];
var toUnicode = [];
cMap.forEach(function (charcode, cid) {
if (cid > 0xffff) {
throw new _util.FormatError('Max size of CID is 65,535');
@ -41898,6 +41906,7 @@ var PartialEvaluator = function PartialEvaluatorClosure() { @@ -41898,6 +41906,7 @@ var PartialEvaluator = function PartialEvaluatorClosure() {
}
return Promise.resolve(new _fonts.IdentityToUnicodeMap(properties.firstChar, properties.lastChar));
},
readToUnicode: function PartialEvaluator_readToUnicode(toUnicode) {
var cmapObj = toUnicode;
if ((0, _primitives.isName)(cmapObj)) {
@ -43806,7 +43815,9 @@ var Glyph = function GlyphClosure() { @@ -43806,7 +43815,9 @@ var Glyph = function GlyphClosure() {
return Glyph;
}();
var ToUnicodeMap = function ToUnicodeMapClosure() {
function ToUnicodeMap(cmap) {
function ToUnicodeMap() {
var cmap = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
this._map = cmap;
}
ToUnicodeMap.prototype = {
@ -44012,6 +44023,7 @@ var Font = function FontClosure() { @@ -44012,6 +44023,7 @@ var Font = function FontClosure() {
this.bbox = properties.bbox;
this.defaultEncoding = properties.defaultEncoding;
this.toUnicode = properties.toUnicode;
this.fallbackToUnicode = properties.fallbackToUnicode || new ToUnicodeMap();
this.toFontChar = [];
if (properties.type === 'Type3') {
for (charCode = 0; charCode < 256; charCode++) {
@ -45677,7 +45689,7 @@ var Font = function FontClosure() { @@ -45677,7 +45689,7 @@ var Font = function FontClosure() {
width = this.widths[widthCode];
width = (0, _util.isNum)(width) ? width : this.defaultWidth;
var vmetric = this.vmetrics && this.vmetrics[widthCode];
var unicode = this.toUnicode.get(charcode) || charcode;
var unicode = this.toUnicode.get(charcode) || this.fallbackToUnicode.get(charcode) || charcode;
if (typeof unicode === 'number') {
unicode = String.fromCharCode(unicode);
}

2
build/pdf.combined.js.map

File diff suppressed because one or more lines are too long

14
build/pdf.js

@ -3290,7 +3290,7 @@ function _fetchDocument(worker, source, pdfDataRangeTransport, docId) { @@ -3290,7 +3290,7 @@ function _fetchDocument(worker, source, pdfDataRangeTransport, docId) {
if (worker.destroyed) {
return Promise.reject(new Error('Worker was destroyed'));
}
var apiVersion = '2.0.169';
var apiVersion = '2.0.172';
source.disableRange = (0, _dom_utils.getDefaultSetting)('disableRange');
source.disableAutoFetch = (0, _dom_utils.getDefaultSetting)('disableAutoFetch');
source.disableStream = (0, _dom_utils.getDefaultSetting)('disableStream');
@ -4651,8 +4651,8 @@ var InternalRenderTask = function InternalRenderTaskClosure() { @@ -4651,8 +4651,8 @@ var InternalRenderTask = function InternalRenderTaskClosure() {
}();
var version, build;
{
exports.version = version = '2.0.169';
exports.build = build = 'fbf456f5';
exports.version = version = '2.0.172';
exports.build = build = '3f3ade55';
}
exports.getDocument = getDocument;
exports.LoopbackPort = LoopbackPort;
@ -7382,8 +7382,8 @@ exports.SVGGraphics = SVGGraphics; @@ -7382,8 +7382,8 @@ exports.SVGGraphics = SVGGraphics;
"use strict";
var pdfjsVersion = '2.0.169';
var pdfjsBuild = 'fbf456f5';
var pdfjsVersion = '2.0.172';
var pdfjsBuild = '3f3ade55';
var pdfjsSharedUtil = __w_pdfjs_require__(0);
var pdfjsDisplayGlobal = __w_pdfjs_require__(112);
var pdfjsDisplayAPI = __w_pdfjs_require__(57);
@ -12712,8 +12712,8 @@ if (!_global_scope2.default.PDFJS) { @@ -12712,8 +12712,8 @@ if (!_global_scope2.default.PDFJS) {
}
var PDFJS = _global_scope2.default.PDFJS;
{
PDFJS.version = '2.0.169';
PDFJS.build = 'fbf456f5';
PDFJS.version = '2.0.172';
PDFJS.build = '3f3ade55';
}
PDFJS.pdfBug = false;
if (PDFJS.verbosity !== undefined) {

2
build/pdf.js.map

File diff suppressed because one or more lines are too long

2
build/pdf.min.js vendored

File diff suppressed because one or more lines are too long

138
build/pdf.worker.js vendored

@ -21883,8 +21883,8 @@ exports.PostScriptCompiler = PostScriptCompiler; @@ -21883,8 +21883,8 @@ exports.PostScriptCompiler = PostScriptCompiler;
"use strict";
var pdfjsVersion = '2.0.169';
var pdfjsBuild = 'fbf456f5';
var pdfjsVersion = '2.0.172';
var pdfjsBuild = '3f3ade55';
var pdfjsCoreWorker = __w_pdfjs_require__(72);
exports.WorkerMessageHandler = pdfjsCoreWorker.WorkerMessageHandler;
@ -22089,7 +22089,7 @@ var WorkerMessageHandler = { @@ -22089,7 +22089,7 @@ var WorkerMessageHandler = {
var cancelXHRs = null;
var WorkerTasks = [];
var apiVersion = docParams.apiVersion;
var workerVersion = '2.0.169';
var workerVersion = '2.0.172';
if (apiVersion !== null && apiVersion !== workerVersion) {
throw new Error('The API version "' + apiVersion + '" does not match ' + ('the Worker version "' + workerVersion + '".'));
}
@ -33916,69 +33916,77 @@ var PartialEvaluator = function PartialEvaluatorClosure() { @@ -33916,69 +33916,77 @@ var PartialEvaluator = function PartialEvaluatorClosure() {
return properties;
});
},
buildToUnicode: function PartialEvaluator_buildToUnicode(properties) {
properties.hasIncludedToUnicodeMap = !!properties.toUnicode && properties.toUnicode.length > 0;
if (properties.hasIncludedToUnicodeMap) {
return Promise.resolve(properties.toUnicode);
_buildSimpleFontToUnicode: function _buildSimpleFontToUnicode(properties) {
(0, _util.assert)(!properties.composite, 'Must be a simple font.');
var toUnicode = [],
charcode = void 0,
glyphName = void 0;
var encoding = properties.defaultEncoding.slice();
var baseEncodingName = properties.baseEncodingName;
var differences = properties.differences;
for (charcode in differences) {
glyphName = differences[charcode];
if (glyphName === '.notdef') {
continue;
}
encoding[charcode] = glyphName;
}
var toUnicode, charcode, glyphName;
if (!properties.composite) {
toUnicode = [];
var encoding = properties.defaultEncoding.slice();
var baseEncodingName = properties.baseEncodingName;
var differences = properties.differences;
for (charcode in differences) {
glyphName = differences[charcode];
if (glyphName === '.notdef') {
continue;
var glyphsUnicodeMap = (0, _glyphlist.getGlyphsUnicode)();
for (charcode in encoding) {
glyphName = encoding[charcode];
if (glyphName === '') {
continue;
} else if (glyphsUnicodeMap[glyphName] === undefined) {
var code = 0;
switch (glyphName[0]) {
case 'G':
if (glyphName.length === 3) {
code = parseInt(glyphName.substr(1), 16);
}
break;
case 'g':
if (glyphName.length === 5) {
code = parseInt(glyphName.substr(1), 16);
}
break;
case 'C':
case 'c':
if (glyphName.length >= 3) {
code = +glyphName.substr(1);
}
break;
default:
var unicode = (0, _unicode.getUnicodeForGlyph)(glyphName, glyphsUnicodeMap);
if (unicode !== -1) {
code = unicode;
}
}
encoding[charcode] = glyphName;
}
var glyphsUnicodeMap = (0, _glyphlist.getGlyphsUnicode)();
for (charcode in encoding) {
glyphName = encoding[charcode];
if (glyphName === '') {
continue;
} else if (glyphsUnicodeMap[glyphName] === undefined) {
var code = 0;
switch (glyphName[0]) {
case 'G':
if (glyphName.length === 3) {
code = parseInt(glyphName.substr(1), 16);
}
break;
case 'g':
if (glyphName.length === 5) {
code = parseInt(glyphName.substr(1), 16);
}
break;
case 'C':
case 'c':
if (glyphName.length >= 3) {
code = +glyphName.substr(1);
}
break;
default:
var unicode = (0, _unicode.getUnicodeForGlyph)(glyphName, glyphsUnicodeMap);
if (unicode !== -1) {
code = unicode;
}
}
if (code) {
if (baseEncodingName && code === +charcode) {
var baseEncoding = (0, _encodings.getEncoding)(baseEncodingName);
if (baseEncoding && (glyphName = baseEncoding[charcode])) {
toUnicode[charcode] = String.fromCharCode(glyphsUnicodeMap[glyphName]);
continue;
}
if (code) {
if (baseEncodingName && code === +charcode) {
var baseEncoding = (0, _encodings.getEncoding)(baseEncodingName);
if (baseEncoding && (glyphName = baseEncoding[charcode])) {
toUnicode[charcode] = String.fromCharCode(glyphsUnicodeMap[glyphName]);
continue;
}
toUnicode[charcode] = String.fromCharCode(code);
}
continue;
toUnicode[charcode] = String.fromCharCode(code);
}
toUnicode[charcode] = String.fromCharCode(glyphsUnicodeMap[glyphName]);
continue;
}
return Promise.resolve(new _fonts.ToUnicodeMap(toUnicode));
toUnicode[charcode] = String.fromCharCode(glyphsUnicodeMap[glyphName]);
}
return new _fonts.ToUnicodeMap(toUnicode);
},
buildToUnicode: function buildToUnicode(properties) {
properties.hasIncludedToUnicodeMap = !!properties.toUnicode && properties.toUnicode.length > 0;
if (properties.hasIncludedToUnicodeMap) {
if (!properties.composite && properties.hasEncoding) {
properties.fallbackToUnicode = this._buildSimpleFontToUnicode(properties);
}
return Promise.resolve(properties.toUnicode);
}
if (!properties.composite) {
return Promise.resolve(this._buildSimpleFontToUnicode(properties));
}
if (properties.composite && (properties.cMap.builtInCMap && !(properties.cMap instanceof _cmap.IdentityCMap) || properties.cidSystemInfo.registry === 'Adobe' && (properties.cidSystemInfo.ordering === 'GB1' || properties.cidSystemInfo.ordering === 'CNS1' || properties.cidSystemInfo.ordering === 'Japan1' || properties.cidSystemInfo.ordering === 'Korea1'))) {
var registry = properties.cidSystemInfo.registry;
@ -33990,7 +33998,7 @@ var PartialEvaluator = function PartialEvaluatorClosure() { @@ -33990,7 +33998,7 @@ var PartialEvaluator = function PartialEvaluatorClosure() {
useCMap: null
}).then(function (ucs2CMap) {
var cMap = properties.cMap;
toUnicode = [];
var toUnicode = [];
cMap.forEach(function (charcode, cid) {
if (cid > 0xffff) {
throw new _util.FormatError('Max size of CID is 65,535');
@ -34005,6 +34013,7 @@ var PartialEvaluator = function PartialEvaluatorClosure() { @@ -34005,6 +34013,7 @@ var PartialEvaluator = function PartialEvaluatorClosure() {
}
return Promise.resolve(new _fonts.IdentityToUnicodeMap(properties.firstChar, properties.lastChar));
},
readToUnicode: function PartialEvaluator_readToUnicode(toUnicode) {
var cmapObj = toUnicode;
if ((0, _primitives.isName)(cmapObj)) {
@ -35913,7 +35922,9 @@ var Glyph = function GlyphClosure() { @@ -35913,7 +35922,9 @@ var Glyph = function GlyphClosure() {
return Glyph;
}();
var ToUnicodeMap = function ToUnicodeMapClosure() {
function ToUnicodeMap(cmap) {
function ToUnicodeMap() {
var cmap = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
this._map = cmap;
}
ToUnicodeMap.prototype = {
@ -36119,6 +36130,7 @@ var Font = function FontClosure() { @@ -36119,6 +36130,7 @@ var Font = function FontClosure() {
this.bbox = properties.bbox;
this.defaultEncoding = properties.defaultEncoding;
this.toUnicode = properties.toUnicode;
this.fallbackToUnicode = properties.fallbackToUnicode || new ToUnicodeMap();
this.toFontChar = [];
if (properties.type === 'Type3') {
for (charCode = 0; charCode < 256; charCode++) {
@ -37784,7 +37796,7 @@ var Font = function FontClosure() { @@ -37784,7 +37796,7 @@ var Font = function FontClosure() {
width = this.widths[widthCode];
width = (0, _util.isNum)(width) ? width : this.defaultWidth;
var vmetric = this.vmetrics && this.vmetrics[widthCode];
var unicode = this.toUnicode.get(charcode) || charcode;
var unicode = this.toUnicode.get(charcode) || this.fallbackToUnicode.get(charcode) || charcode;
if (typeof unicode === 'number') {
unicode = String.fromCharCode(unicode);
}

2
build/pdf.worker.js.map vendored

File diff suppressed because one or more lines are too long

2
build/pdf.worker.min.js vendored

File diff suppressed because one or more lines are too long

125
lib/core/evaluator.js

@ -1600,69 +1600,77 @@ var PartialEvaluator = function PartialEvaluatorClosure() { @@ -1600,69 +1600,77 @@ var PartialEvaluator = function PartialEvaluatorClosure() {
return properties;
});
},
buildToUnicode: function PartialEvaluator_buildToUnicode(properties) {
properties.hasIncludedToUnicodeMap = !!properties.toUnicode && properties.toUnicode.length > 0;
if (properties.hasIncludedToUnicodeMap) {
return Promise.resolve(properties.toUnicode);
_buildSimpleFontToUnicode: function _buildSimpleFontToUnicode(properties) {
(0, _util.assert)(!properties.composite, 'Must be a simple font.');
var toUnicode = [],
charcode = void 0,
glyphName = void 0;
var encoding = properties.defaultEncoding.slice();
var baseEncodingName = properties.baseEncodingName;
var differences = properties.differences;
for (charcode in differences) {
glyphName = differences[charcode];
if (glyphName === '.notdef') {
continue;
}
encoding[charcode] = glyphName;
}
var toUnicode, charcode, glyphName;
if (!properties.composite) {
toUnicode = [];
var encoding = properties.defaultEncoding.slice();
var baseEncodingName = properties.baseEncodingName;
var differences = properties.differences;
for (charcode in differences) {
glyphName = differences[charcode];
if (glyphName === '.notdef') {
continue;
var glyphsUnicodeMap = (0, _glyphlist.getGlyphsUnicode)();
for (charcode in encoding) {
glyphName = encoding[charcode];
if (glyphName === '') {
continue;
} else if (glyphsUnicodeMap[glyphName] === undefined) {
var code = 0;
switch (glyphName[0]) {
case 'G':
if (glyphName.length === 3) {
code = parseInt(glyphName.substr(1), 16);
}
break;
case 'g':
if (glyphName.length === 5) {
code = parseInt(glyphName.substr(1), 16);
}
break;
case 'C':
case 'c':
if (glyphName.length >= 3) {
code = +glyphName.substr(1);
}
break;
default:
var unicode = (0, _unicode.getUnicodeForGlyph)(glyphName, glyphsUnicodeMap);
if (unicode !== -1) {
code = unicode;
}
}
encoding[charcode] = glyphName;
}
var glyphsUnicodeMap = (0, _glyphlist.getGlyphsUnicode)();
for (charcode in encoding) {
glyphName = encoding[charcode];
if (glyphName === '') {
continue;
} else if (glyphsUnicodeMap[glyphName] === undefined) {
var code = 0;
switch (glyphName[0]) {
case 'G':
if (glyphName.length === 3) {
code = parseInt(glyphName.substr(1), 16);
}
break;
case 'g':
if (glyphName.length === 5) {
code = parseInt(glyphName.substr(1), 16);
}
break;
case 'C':
case 'c':
if (glyphName.length >= 3) {
code = +glyphName.substr(1);
}
break;
default:
var unicode = (0, _unicode.getUnicodeForGlyph)(glyphName, glyphsUnicodeMap);
if (unicode !== -1) {
code = unicode;
}
}
if (code) {
if (baseEncodingName && code === +charcode) {
var baseEncoding = (0, _encodings.getEncoding)(baseEncodingName);
if (baseEncoding && (glyphName = baseEncoding[charcode])) {
toUnicode[charcode] = String.fromCharCode(glyphsUnicodeMap[glyphName]);
continue;
}
if (code) {
if (baseEncodingName && code === +charcode) {
var baseEncoding = (0, _encodings.getEncoding)(baseEncodingName);
if (baseEncoding && (glyphName = baseEncoding[charcode])) {
toUnicode[charcode] = String.fromCharCode(glyphsUnicodeMap[glyphName]);
continue;
}
toUnicode[charcode] = String.fromCharCode(code);
}
continue;
toUnicode[charcode] = String.fromCharCode(code);
}
toUnicode[charcode] = String.fromCharCode(glyphsUnicodeMap[glyphName]);
continue;
}
toUnicode[charcode] = String.fromCharCode(glyphsUnicodeMap[glyphName]);
}
return new _fonts.ToUnicodeMap(toUnicode);
},
buildToUnicode: function buildToUnicode(properties) {
properties.hasIncludedToUnicodeMap = !!properties.toUnicode && properties.toUnicode.length > 0;
if (properties.hasIncludedToUnicodeMap) {
if (!properties.composite && properties.hasEncoding) {
properties.fallbackToUnicode = this._buildSimpleFontToUnicode(properties);
}
return Promise.resolve(new _fonts.ToUnicodeMap(toUnicode));
return Promise.resolve(properties.toUnicode);
}
if (!properties.composite) {
return Promise.resolve(this._buildSimpleFontToUnicode(properties));
}
if (properties.composite && (properties.cMap.builtInCMap && !(properties.cMap instanceof _cmap.IdentityCMap) || properties.cidSystemInfo.registry === 'Adobe' && (properties.cidSystemInfo.ordering === 'GB1' || properties.cidSystemInfo.ordering === 'CNS1' || properties.cidSystemInfo.ordering === 'Japan1' || properties.cidSystemInfo.ordering === 'Korea1'))) {
var registry = properties.cidSystemInfo.registry;
@ -1674,7 +1682,7 @@ var PartialEvaluator = function PartialEvaluatorClosure() { @@ -1674,7 +1682,7 @@ var PartialEvaluator = function PartialEvaluatorClosure() {
useCMap: null
}).then(function (ucs2CMap) {
var cMap = properties.cMap;
toUnicode = [];
var toUnicode = [];
cMap.forEach(function (charcode, cid) {
if (cid > 0xffff) {
throw new _util.FormatError('Max size of CID is 65,535');
@ -1689,6 +1697,7 @@ var PartialEvaluator = function PartialEvaluatorClosure() { @@ -1689,6 +1697,7 @@ var PartialEvaluator = function PartialEvaluatorClosure() {
}
return Promise.resolve(new _fonts.IdentityToUnicodeMap(properties.firstChar, properties.lastChar));
},
readToUnicode: function PartialEvaluator_readToUnicode(toUnicode) {
var cmapObj = toUnicode;
if ((0, _primitives.isName)(cmapObj)) {

7
lib/core/fonts.js

@ -144,7 +144,9 @@ var Glyph = function GlyphClosure() { @@ -144,7 +144,9 @@ var Glyph = function GlyphClosure() {
return Glyph;
}();
var ToUnicodeMap = function ToUnicodeMapClosure() {
function ToUnicodeMap(cmap) {
function ToUnicodeMap() {
var cmap = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
this._map = cmap;
}
ToUnicodeMap.prototype = {
@ -350,6 +352,7 @@ var Font = function FontClosure() { @@ -350,6 +352,7 @@ var Font = function FontClosure() {
this.bbox = properties.bbox;
this.defaultEncoding = properties.defaultEncoding;
this.toUnicode = properties.toUnicode;
this.fallbackToUnicode = properties.fallbackToUnicode || new ToUnicodeMap();
this.toFontChar = [];
if (properties.type === 'Type3') {
for (charCode = 0; charCode < 256; charCode++) {
@ -2015,7 +2018,7 @@ var Font = function FontClosure() { @@ -2015,7 +2018,7 @@ var Font = function FontClosure() {
width = this.widths[widthCode];
width = (0, _util.isNum)(width) ? width : this.defaultWidth;
var vmetric = this.vmetrics && this.vmetrics[widthCode];
var unicode = this.toUnicode.get(charcode) || charcode;
var unicode = this.toUnicode.get(charcode) || this.fallbackToUnicode.get(charcode) || charcode;
if (typeof unicode === 'number') {
unicode = String.fromCharCode(unicode);
}

2
lib/core/worker.js

@ -208,7 +208,7 @@ var WorkerMessageHandler = { @@ -208,7 +208,7 @@ var WorkerMessageHandler = {
var cancelXHRs = null;
var WorkerTasks = [];
var apiVersion = docParams.apiVersion;
var workerVersion = '2.0.169';
var workerVersion = '2.0.172';
if (apiVersion !== null && apiVersion !== workerVersion) {
throw new Error('The API version "' + apiVersion + '" does not match ' + ('the Worker version "' + workerVersion + '".'));
}

6
lib/display/api.js

@ -171,7 +171,7 @@ function _fetchDocument(worker, source, pdfDataRangeTransport, docId) { @@ -171,7 +171,7 @@ function _fetchDocument(worker, source, pdfDataRangeTransport, docId) {
if (worker.destroyed) {
return Promise.reject(new Error('Worker was destroyed'));
}
var apiVersion = '2.0.169';
var apiVersion = '2.0.172';
source.disableRange = (0, _dom_utils.getDefaultSetting)('disableRange');
source.disableAutoFetch = (0, _dom_utils.getDefaultSetting)('disableAutoFetch');
source.disableStream = (0, _dom_utils.getDefaultSetting)('disableStream');
@ -1532,8 +1532,8 @@ var InternalRenderTask = function InternalRenderTaskClosure() { @@ -1532,8 +1532,8 @@ var InternalRenderTask = function InternalRenderTaskClosure() {
}();
var version, build;
{
exports.version = version = '2.0.169';
exports.build = build = 'fbf456f5';
exports.version = version = '2.0.172';
exports.build = build = '3f3ade55';
}
exports.getDocument = getDocument;
exports.LoopbackPort = LoopbackPort;

4
lib/display/global.js

@ -44,8 +44,8 @@ if (!_global_scope2.default.PDFJS) { @@ -44,8 +44,8 @@ if (!_global_scope2.default.PDFJS) {
}
var PDFJS = _global_scope2.default.PDFJS;
{
PDFJS.version = '2.0.169';
PDFJS.build = 'fbf456f5';
PDFJS.version = '2.0.172';
PDFJS.build = '3f3ade55';
}
PDFJS.pdfBug = false;
if (PDFJS.verbosity !== undefined) {

4
lib/pdf.js

@ -14,8 +14,8 @@ @@ -14,8 +14,8 @@
*/
'use strict';
var pdfjsVersion = '2.0.169';
var pdfjsBuild = 'fbf456f5';
var pdfjsVersion = '2.0.172';
var pdfjsBuild = '3f3ade55';
var pdfjsSharedUtil = require('./shared/util.js');
var pdfjsDisplayGlobal = require('./display/global.js');
var pdfjsDisplayAPI = require('./display/api.js');

4
lib/pdf.worker.js vendored

@ -14,7 +14,7 @@ @@ -14,7 +14,7 @@
*/
'use strict';
var pdfjsVersion = '2.0.169';
var pdfjsBuild = 'fbf456f5';
var pdfjsVersion = '2.0.172';
var pdfjsBuild = '3f3ade55';
var pdfjsCoreWorker = require('./core/worker.js');
exports.WorkerMessageHandler = pdfjsCoreWorker.WorkerMessageHandler;

2
package.json

@ -1,6 +1,6 @@ @@ -1,6 +1,6 @@
{
"name": "pdfjs-dist",
"version": "2.0.169",
"version": "2.0.172",
"main": "build/pdf.js",
"description": "Generic build of Mozilla's PDF.js library.",
"keywords": [

Loading…
Cancel
Save