diff --git a/bower.json b/bower.json index 941d279a6..83c93ebc1 100644 --- a/bower.json +++ b/bower.json @@ -1,6 +1,6 @@ { "name": "pdfjs-dist", - "version": "1.6.242", + "version": "1.6.244", "main": [ "build/pdf.js", "build/pdf.worker.js" diff --git a/build/pdf.combined.js b/build/pdf.combined.js index 9f6308b45..1d67241ce 100644 --- a/build/pdf.combined.js +++ b/build/pdf.combined.js @@ -24,8 +24,8 @@ }(this, function (exports) { // Use strict in our context only - users might not want it 'use strict'; - var pdfjsVersion = '1.6.242'; - var pdfjsBuild = 'ea5949f'; + var pdfjsVersion = '1.6.244'; + var pdfjsBuild = '2e20000'; var pdfjsFilePath = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : null; var pdfjsLibs = {}; (function pdfjsWrapper() { @@ -25741,6 +25741,7 @@ var isSpace = sharedUtil.isSpace; var Dict = corePrimitives.Dict; var isDict = corePrimitives.isDict; + var isStream = corePrimitives.isStream; var Jbig2Image = coreJbig2.Jbig2Image; var JpegImage = coreJpg.JpegImage; var JpxImage = coreJpx.JpxImage; @@ -27067,7 +27068,7 @@ * DecodeStreams. */ var JpegStream = function JpegStreamClosure() { - function JpegStream(stream, maybeLength, dict) { + function JpegStream(stream, maybeLength, dict, params) { // Some images may contain 'junk' before the SOI (start-of-image) marker. // Note: this seems to mainly affect inline images. var ch; @@ -27082,6 +27083,7 @@ this.stream = stream; this.maybeLength = maybeLength; this.dict = dict; + this.params = params; DecodeStream.call(this, maybeLength); } JpegStream.prototype = Object.create(DecodeStream.prototype); @@ -27117,9 +27119,8 @@ } } // Fetching the 'ColorTransform' entry, if it exists. - var decodeParams = this.dict.get('DecodeParms', 'DP'); - if (isDict(decodeParams)) { - var colorTransform = decodeParams.get('ColorTransform'); + if (isDict(this.params)) { + var colorTransform = this.params.get('ColorTransform'); if (isInt(colorTransform)) { jpegImage.colorTransform = colorTransform; } @@ -27144,10 +27145,11 @@ * the stream behaves like all the other DecodeStreams. */ var JpxStream = function JpxStreamClosure() { - function JpxStream(stream, maybeLength, dict) { + function JpxStream(stream, maybeLength, dict, params) { this.stream = stream; this.maybeLength = maybeLength; this.dict = dict; + this.params = params; DecodeStream.call(this, maybeLength); } JpxStream.prototype = Object.create(DecodeStream.prototype); @@ -27202,10 +27204,11 @@ * the stream behaves like all the other DecodeStreams. */ var Jbig2Stream = function Jbig2StreamClosure() { - function Jbig2Stream(stream, maybeLength, dict) { + function Jbig2Stream(stream, maybeLength, dict, params) { this.stream = stream; this.maybeLength = maybeLength; this.dict = dict; + this.params = params; DecodeStream.call(this, maybeLength); } Jbig2Stream.prototype = Object.create(DecodeStream.prototype); @@ -27222,23 +27225,16 @@ } var jbig2Image = new Jbig2Image(); var chunks = []; - var decodeParams = this.dict.getArray('DecodeParms', 'DP'); - // According to the PDF specification, DecodeParms can be either - // a dictionary, or an array whose elements are dictionaries. - if (isArray(decodeParams)) { - if (decodeParams.length > 1) { - warn('JBIG2 - \'DecodeParms\' array with multiple elements ' + 'not supported.'); - } - decodeParams = decodeParams[0]; - } - if (decodeParams && decodeParams.has('JBIG2Globals')) { - var globalsStream = decodeParams.get('JBIG2Globals'); - var globals = globalsStream.getBytes(); - chunks.push({ - data: globals, - start: 0, - end: globals.length - }); + if (isDict(this.params)) { + var globalsStream = this.params.get('JBIG2Globals'); + if (isStream(globalsStream)) { + var globals = globalsStream.getBytes(); + chunks.push({ + data: globals, + start: 0, + end: globals.length + }); + } } chunks.push({ data: this.bytes, @@ -39806,6 +39802,9 @@ var filter = dict.get('Filter', 'F'); var params = dict.get('DecodeParms', 'DP'); if (isName(filter)) { + if (isArray(params)) { + params = params[0]; + } return this.makeFilter(stream, filter.name, length, params); } var maybeLength = length; @@ -39861,11 +39860,11 @@ } if (name === 'DCTDecode' || name === 'DCT') { xrefStreamStats[StreamType.DCT] = true; - return new JpegStream(stream, maybeLength, stream.dict); + return new JpegStream(stream, maybeLength, stream.dict, params); } if (name === 'JPXDecode' || name === 'JPX') { xrefStreamStats[StreamType.JPX] = true; - return new JpxStream(stream, maybeLength, stream.dict); + return new JpxStream(stream, maybeLength, stream.dict, params); } if (name === 'ASCII85Decode' || name === 'A85') { xrefStreamStats[StreamType.A85] = true; @@ -39885,7 +39884,7 @@ } if (name === 'JBIG2Decode') { xrefStreamStats[StreamType.JBIG] = true; - return new Jbig2Stream(stream, maybeLength, stream.dict); + return new Jbig2Stream(stream, maybeLength, stream.dict, params); } warn('filter "' + name + '" not supported yet'); return stream; diff --git a/build/pdf.js b/build/pdf.js index 0c80b85c9..fc95923c6 100644 --- a/build/pdf.js +++ b/build/pdf.js @@ -24,8 +24,8 @@ }(this, function (exports) { // Use strict in our context only - users might not want it 'use strict'; - var pdfjsVersion = '1.6.242'; - var pdfjsBuild = 'ea5949f'; + var pdfjsVersion = '1.6.244'; + var pdfjsBuild = '2e20000'; var pdfjsFilePath = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : null; var pdfjsLibs = {}; (function pdfjsWrapper() { diff --git a/build/pdf.worker.js b/build/pdf.worker.js index f3d6a4487..8116d101f 100644 --- a/build/pdf.worker.js +++ b/build/pdf.worker.js @@ -24,8 +24,8 @@ }(this, function (exports) { // Use strict in our context only - users might not want it 'use strict'; - var pdfjsVersion = '1.6.242'; - var pdfjsBuild = 'ea5949f'; + var pdfjsVersion = '1.6.244'; + var pdfjsBuild = '2e20000'; var pdfjsFilePath = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : null; var pdfjsLibs = {}; (function pdfjsWrapper() { @@ -24086,6 +24086,7 @@ var isSpace = sharedUtil.isSpace; var Dict = corePrimitives.Dict; var isDict = corePrimitives.isDict; + var isStream = corePrimitives.isStream; var Jbig2Image = coreJbig2.Jbig2Image; var JpegImage = coreJpg.JpegImage; var JpxImage = coreJpx.JpxImage; @@ -25412,7 +25413,7 @@ * DecodeStreams. */ var JpegStream = function JpegStreamClosure() { - function JpegStream(stream, maybeLength, dict) { + function JpegStream(stream, maybeLength, dict, params) { // Some images may contain 'junk' before the SOI (start-of-image) marker. // Note: this seems to mainly affect inline images. var ch; @@ -25427,6 +25428,7 @@ this.stream = stream; this.maybeLength = maybeLength; this.dict = dict; + this.params = params; DecodeStream.call(this, maybeLength); } JpegStream.prototype = Object.create(DecodeStream.prototype); @@ -25462,9 +25464,8 @@ } } // Fetching the 'ColorTransform' entry, if it exists. - var decodeParams = this.dict.get('DecodeParms', 'DP'); - if (isDict(decodeParams)) { - var colorTransform = decodeParams.get('ColorTransform'); + if (isDict(this.params)) { + var colorTransform = this.params.get('ColorTransform'); if (isInt(colorTransform)) { jpegImage.colorTransform = colorTransform; } @@ -25489,10 +25490,11 @@ * the stream behaves like all the other DecodeStreams. */ var JpxStream = function JpxStreamClosure() { - function JpxStream(stream, maybeLength, dict) { + function JpxStream(stream, maybeLength, dict, params) { this.stream = stream; this.maybeLength = maybeLength; this.dict = dict; + this.params = params; DecodeStream.call(this, maybeLength); } JpxStream.prototype = Object.create(DecodeStream.prototype); @@ -25547,10 +25549,11 @@ * the stream behaves like all the other DecodeStreams. */ var Jbig2Stream = function Jbig2StreamClosure() { - function Jbig2Stream(stream, maybeLength, dict) { + function Jbig2Stream(stream, maybeLength, dict, params) { this.stream = stream; this.maybeLength = maybeLength; this.dict = dict; + this.params = params; DecodeStream.call(this, maybeLength); } Jbig2Stream.prototype = Object.create(DecodeStream.prototype); @@ -25567,23 +25570,16 @@ } var jbig2Image = new Jbig2Image(); var chunks = []; - var decodeParams = this.dict.getArray('DecodeParms', 'DP'); - // According to the PDF specification, DecodeParms can be either - // a dictionary, or an array whose elements are dictionaries. - if (isArray(decodeParams)) { - if (decodeParams.length > 1) { - warn('JBIG2 - \'DecodeParms\' array with multiple elements ' + 'not supported.'); - } - decodeParams = decodeParams[0]; - } - if (decodeParams && decodeParams.has('JBIG2Globals')) { - var globalsStream = decodeParams.get('JBIG2Globals'); - var globals = globalsStream.getBytes(); - chunks.push({ - data: globals, - start: 0, - end: globals.length - }); + if (isDict(this.params)) { + var globalsStream = this.params.get('JBIG2Globals'); + if (isStream(globalsStream)) { + var globals = globalsStream.getBytes(); + chunks.push({ + data: globals, + start: 0, + end: globals.length + }); + } } chunks.push({ data: this.bytes, @@ -36306,6 +36302,9 @@ var filter = dict.get('Filter', 'F'); var params = dict.get('DecodeParms', 'DP'); if (isName(filter)) { + if (isArray(params)) { + params = params[0]; + } return this.makeFilter(stream, filter.name, length, params); } var maybeLength = length; @@ -36361,11 +36360,11 @@ } if (name === 'DCTDecode' || name === 'DCT') { xrefStreamStats[StreamType.DCT] = true; - return new JpegStream(stream, maybeLength, stream.dict); + return new JpegStream(stream, maybeLength, stream.dict, params); } if (name === 'JPXDecode' || name === 'JPX') { xrefStreamStats[StreamType.JPX] = true; - return new JpxStream(stream, maybeLength, stream.dict); + return new JpxStream(stream, maybeLength, stream.dict, params); } if (name === 'ASCII85Decode' || name === 'A85') { xrefStreamStats[StreamType.A85] = true; @@ -36385,7 +36384,7 @@ } if (name === 'JBIG2Decode') { xrefStreamStats[StreamType.JBIG] = true; - return new Jbig2Stream(stream, maybeLength, stream.dict); + return new Jbig2Stream(stream, maybeLength, stream.dict, params); } warn('filter "' + name + '" not supported yet'); return stream; diff --git a/package.json b/package.json index 7d41647c7..20dc40b28 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "pdfjs-dist", - "version": "1.6.242", + "version": "1.6.244", "main": "build/pdf.js", "description": "Generic build of Mozilla's PDF.js library.", "keywords": [