• mozilla/pdf.js

    PDF Reader in JavaScript

    Release notes

    #10557 Bump versions in pdfjs.config #10556 api-minor Expose the existence of a Collection dictionary via the getMetadata API method (issue 10555) #10554 Simplify the updatetextlayermatches event handling in TextLayerBuilder #10548 Generate the default_preferences.json file from AppOptions #10558 Re-factor the PDFDataRangeTransport unit-tests and enable them in Node.js/Travis #10560 Update translations and packages #10579 Re-factor the PDFSidebar constructor to simplify its call-site (PR 10123 follow-up) #10578 Try to temporarily hack around the __non_webpack_require__ bug, and update Webpack to the latest stable version (issue 10177) #10577 Move worker-thread only functions from src/shared/util.js and into a new src/core/core_utils.js file #10582 Use Promise.prototype.finally in the PDFRenderingQueue.renderView method #10589 Run the custom_spec unit-tests in Node.js/Travis (PR 10537 follow-up) #10585 Load built-in CMap files using the Fetch API when possible #10573 Avoid truncating/breaking some Type3 glyphs in compileType3Glyph (bug 1245391, issue 10568) #10599 Update Webpack to the latest stable version (4.29.6) #10597 Ensure that the temporary canvas created in CanvasGraphics.isFontSubpixelAAEnabled will be cleared #10595 Zero the width/height of the temporary canvas used during JpegDecode (issue 10594) #10591 Add unique glyph names for CFF fonts. #10601 Zero the width/height of the temporary canvas used during TextLayer rendering #10604 Put the string name of the glyph in the charset array. #10606 Update translations and packages #10590 Fix missing moveTos in SVG paths #10608 Reduce usage of Date.now() in src/core/worker.js #10610 Add type validation to the default_preferences generation (PR 10548 follow-up) #10605 Convert let to const if possible in, and improve unit test coverage for, src/display/display_utils.js #10615 Handle corrupt ASCII85Decode inline images with whitespace "inside" of the EOD marker (issue 10614) #10621 Don't scale SVG stroke width by text matrix #10634 Move NativeImageDecoder into a separate file, and convert it to a class #10633 Convert MurmurHash3_64 to an ES6 class #10628 Try to improve text-selection for Type3 fonts that utilize a non-default /FontMatrix (bug 1513120) #10636 Small clean-up of the PDFDocumentProxy.destroy method and related code #10647 Actually transfer eligible ImageMask data, rather than always copying it #10644 Ensure that blob: URLs will be revoked when pages are cleaned-up/destroyed (JPEG memory usage) #10646 Implement linear-gradient, radial-gradient and dummy-pattern in SVGGraphics. #10635 Convert src/core/parser.js to ES6 syntax and write more unit tests for the lexer and the parser #10657 Update test case description #10652 Prepare the MOZCENTRAL viewer for receiving zoom events from the browser UI (bug 786674, bug 1177385) #10668 Remove the Firefox-specific 'read with streaming' unit-test #10681 fix: electron enviroment detection #10685 Take the FirstChar/LastChar properties into account when computing the hash in PartialEvaluator.preEvaluateFont (issue 10665) #10683 Use CMap in Type0 fonts when CFF is not a CID font #10692 Add Mozilla Code of Conduct #10698 Update translations/packages and include the code of conduct for pdfjs-dist too #10706 Add missing hasChildNodes polyfill to domstubs.js (PR 10022 follow-up) #10675 Firefox regression Fix disableRange=true bug in PDFDataTransportStream #10713 Remove src/core/annotation.js from the gulp jsdoc build target #10678 Remove moz-chunked-arraybuffer support, and related code, from src/display/network.js #10709 api-minor Add basic support for PageLayout in the API and the viewer #10714 Firefox Ensure that loading progress is reported, and the loadingBar updated, when disableRange=true is set #10674 Convert src/display/svg.js to ES6 syntax and implement setRenderingIntent and setFlatness for the SVG backend #10715 Add test for fetch_stream #10725 Attempt to clarify the l10n section of CONTRIBUTING.md #10723 api-minor Implement caret annotations #10728 Annotations - _preparePopup method replaced with MarkupAnnotation #10696 Update ChunkedStream.makeSubStream to actually check if (some) data exists when the length parameter is undefined #10694 Avoid dispatching range requests to fetch PDF data that's already loaded with streaming (PR 10675 follow-up) #10733 Update translations and packages #10735 api-minor Implement free text annotations #10742 Firefox Avoid displaying the indeterminate loadingBar when disableStream=true is set (PR 10714 follow-up) #10746 Add links to PDF.js homepage and API reference in README.md #10727 Support (rare) Type3 fonts which contains image resources (issue 10717) #10754 Add a getDocId method to the idFactory, in Page instances, to avoid passing around PDFManager instances unnecessarily (PR 7941 follow-up) #10738 api-minor Add support for ViewerPreferences in the API (issue 10736) #10765 Add passive: false to the wheel event listener, to work-around broken default behaviour in Chrome 73 and above (issue 10761) #10784 Ensure that the OperatorList constructor actually initializes a NullOptimizer when intended (PR 9089 follow-up) #10756 Attempt to handle corrupt PDF documents that contains path operators inside of text object (issue 10542) #10789 Change PartialEvaluator.handleColorN to throw when no valid pattern is found #10771 api-minor Implement creation/modification date for annotations #10795 Update the canvas npm package to fix Travis CI builds (issue 10790) #10805 Enable the consistent-return ESLint rule #10794 Fix glyph at index zero in CIDFontType2 that has a CIDToGIDMap stream #10826 Remove unused ref property from the parameters object used when creating annotations in AnnotationFactory._create #10827 Convert the (remaining) network streams to ES6 classes #10854 make print resolution configurable via AppOptions #10833 api-minor Implement contents and creation date for the correct annotation types #10859 Update translations and packages #10862 Add caching to reduce the number of Ref objects #10863 Ensure that the Cmd/Name/Ref caches are cleared when running other cleanup code #10869 Restore referrer preserving functionality in Chrome 72+ #10867 Don't clip if path is undefined in SVG back-end #10872 Re-use, rather than re-creating, some Arrays when resetting them in src/display/api.js #10873 Ensure that the Cmd/Name/Ref caches are cleared when terminating the worker (PR 10863 follow-up) #10877 Ignore Annotations with too large border widths, to prevent the annotationLayer from rendering it over the surrounding document (bug 1552113) #10879 api-minor Attempt to reduce memory usage during printing, by always running cleanup once rendering has finished #10890 Add support for outline items, in the default viewer, which default to collapsed when the outline is built #10897 Remove a superfluous linkService.isPageVisible check from PDFFindController (PR 10217 follow-up) #10898 Allow experimenting with the printResolution AppOption when printing with the built-in Firefox version #10905 Pin the version of eslint-plugin-mozilla to prevent failures on Travis (issue 10901) #10903 Move PDFWorkerStream and related code to its own file #10926 Change the signature of the Parser constructor to take a parameter object #10925 Enable the eslint-plugin-no-unsanitized ESLint plugin to disallow unsafe usage of e.g. innerHTML #10902 Implement tiling patterns for the SVG back-end #10936 Update translations and packages #10938 Reduce the number of isCmd calls slightly in the XRef class #10937 Restore the header size limit of 80 KB #10947 Make the find helper function, in src/core/document.js, more efficient by using peekBytes rather reading the stream one byte at a time #10949 Delay initialization of searching, in the viewer, until the first page has rendered