v4.10.38
This release contains improvements for accessibility, the annotation editor, font conversion, performance, SMasks and the viewer.
- Bump the stable version in
pdfjs.config
by @timvandermeij in https://github.com/mozilla/pdf.js/pull/19178 - When zooming replace the css-zoomed canvas by the new one only when rendering is finished by @calixteman in https://github.com/mozilla/pdf.js/pull/19164
- Ensure that a missing/invalid "Content-Range" header is handled in
PDFNetworkStream
(issue 19075) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19114 - Do not stringify errors when logging them by @nicolo-ribaudo in https://github.com/mozilla/pdf.js/pull/19148
- Get the first codepoint instead of the first char when using the toUnicode map by @calixteman in https://github.com/mozilla/pdf.js/pull/19184
- Support toggling the
PDFFindBar
options with theEnter
key (issue 19175) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19185 - Update dependencies and translations to the most recent versions by @timvandermeij in https://github.com/mozilla/pdf.js/pull/19190
- Print more warnings about potential problems in Node.js environments by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19191
- Fix intermittent issues in the
issue14307.pdf
integration tests by @timvandermeij in https://github.com/mozilla/pdf.js/pull/19192 - Add a ref test for setting disableFontFace to true by @calixteman in https://github.com/mozilla/pdf.js/pull/19197
- Take the
userUnit
into account in thePageViewport
class (issue 19176) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19196 - Improve perfs of the font renderer by @calixteman in https://github.com/mozilla/pdf.js/pull/19189
- Remove the raw path-strings after creating the actual
Path2D
glyph-objects by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19200 - Update OpenJPEG to 2.5.3 by @calixteman in https://github.com/mozilla/pdf.js/pull/19203
- [Editor] Don't commit the current drawing while zooming by @calixteman in https://github.com/mozilla/pdf.js/pull/19202
- Make sure the canvas is always the first child of its wrapper by @calixteman in https://github.com/mozilla/pdf.js/pull/19204
- [Editor] When resizing a stamp annotation, the opposite corner must stay fixed by @calixteman in https://github.com/mozilla/pdf.js/pull/19201
- Simplify logic to insert canvas as first element by @nicolo-ribaudo in https://github.com/mozilla/pdf.js/pull/19206
- Fix intermittent failures when moving a freetext annotation in integration tests by @calixteman in https://github.com/mozilla/pdf.js/pull/19198
- Update Puppeteer to version 23.10.2 by @calixteman in https://github.com/mozilla/pdf.js/pull/19208
- Update Puppeteer to version 23.10.3 by @calixteman in https://github.com/mozilla/pdf.js/pull/19210
- [Editor] Improve drawing on a touch screen. by @calixteman in https://github.com/mozilla/pdf.js/pull/19209
- [Editor] Avoid to focus an existing editor when enabling the layer by @calixteman in https://github.com/mozilla/pdf.js/pull/19215
- Move the pinch stuff in its own file in order to use for editors by @calixteman in https://github.com/mozilla/pdf.js/pull/19216
- [Editor] Add the ability to resize an editor in using a pinch gesture by @calixteman in https://github.com/mozilla/pdf.js/pull/19219
- Don't remove trailing regular spaces from the "raw" response headers (issue 19205) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19214
- [api-minor] Remove deprecated
getDocument
options (PR 18776 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19224 - Bump library version to
4.10
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19225 - Disable touch-zooming, in the viewer, if
AbortSignal.any
is unsupported (PR 19216 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19226 - Add basic support for non-embedded HelveticaLTStd-Bold fonts (issue 19234) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19236
- Take the absolute value of the font size when the annotation contents is in xhtml (bug 1938087) by @calixteman in https://github.com/mozilla/pdf.js/pull/19238
- Disable the
handle reading ranges with missing/invalid "Content-Range" header
unit-test in Google Chrome (PR 19114 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19237 - Fix left offset when scrolling to search result by @nicolo-ribaudo in https://github.com/mozilla/pdf.js/pull/19232
- Update dependencies and translations to the most recent versions by @timvandermeij in https://github.com/mozilla/pdf.js/pull/19243
- Add missing
startWorkerTask
calls in the "SaveDocument" handler by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19246 - Improve the test folder structure by @timvandermeij in https://github.com/mozilla/pdf.js/pull/19254
- Remove mention of Bower from the README (PR 15390 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19258
- Shorten some
if
-statements in thesrc/core/
folder by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19260 - Remove the unused
glyphNameMap
parameter fromType2Compiled
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19263 - Assert that the
fontMatrix
is always valid incompileGlyph
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19262 - Reduce duplication when handling "DocException" and "PasswordRequest" messages by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19259
- For images that include SMask/Mask entries, ignore an SMask defined in the current graphics state (bug 986450) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19269
- Update l10n files by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19271
- Remove the
requestRange
/requestFull
methods from theNetworkManager
class by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19273
v4.9.155
This release primarily contains a bugfix for a Node.js-specific regression in the previous release; see #19145 and #19149 for context. Moreover, improvements for the annotation editor are included.
- Bump the stable version in
pdfjs.config
by @timvandermeij in https://github.com/mozilla/pdf.js/pull/19139 - Fix the clickable area for rotated ink annotations by @calixteman in https://github.com/mozilla/pdf.js/pull/19142
- [Editor] Don't focus a newly added drawing if it isn't visible on screen by @calixteman in https://github.com/mozilla/pdf.js/pull/19144
- [Editor] Make ink annotation editable by @calixteman in https://github.com/mozilla/pdf.js/pull/19151
- Add test cases for redirected responses by @Rob--W in https://github.com/mozilla/pdf.js/pull/19074
- Annotation deletion popup (bug 1899731) by @ryzokuken in https://github.com/mozilla/pdf.js/pull/18900
- [Editor] Corrrectly get the words from the alt-text when reporting the telemetry (bug 1929311) by @calixteman in https://github.com/mozilla/pdf.js/pull/19155
- Fix unused css variables (follow-up of #18900) by @calixteman in https://github.com/mozilla/pdf.js/pull/19160
- Introduce
Promise.try()
usage in the code-base by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19161 - Correctly wait for the editor mode when double clicking on an annotation in integration tests by @calixteman in https://github.com/mozilla/pdf.js/pull/19163
- Ensure that the
.toggleButton
, as used in the findbar, always have visible hover/focus state (issue 19165) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19172 - [Editor] Correctly update the current drawing when zooming by @calixteman in https://github.com/mozilla/pdf.js/pull/19174
- Avoid to display an alert or a confirm dialog if the message is empty by @calixteman in https://github.com/mozilla/pdf.js/pull/19177
- Prevent Webpack from resolving
import.meta.url
statements during building (issue 19145) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19149
v4.9.124
This release contains improvements for the annotation editor, form rendering, image conversion, text selection and the viewer.
- Bump the stable version in
pdfjs.config
by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18994 - Update dependencies and translations to the most recent versions by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18995
- Enable the "should have an alt attribute from toolTip" unit-test in Node.js by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18998
- Enable the 'gets PDF filename from query string appended to "blob:" URL' unit-test in Node.js by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18997
- Use the
toBase64Util
helper function in the unit-tests by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18999 - Install and use the most recent Node types for the types tests by @timvandermeij in https://github.com/mozilla/pdf.js/pull/19000
- Fix the "must convert input to uppercase" scripting integration test by @timvandermeij in https://github.com/mozilla/pdf.js/pull/19001
- [api-minor] Update the minimum supported Node.js version to 20, and only support the Fetch API for "remote" PDF documents in Node.js by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18959
- Fix error on empty response headers by @CyberAndrii in https://github.com/mozilla/pdf.js/pull/19010
- Try to improve handling of missing trailer dictionaries in
XRef.indexObjects
(issue 18986) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19007 - Shorten a few helper functions in
src/core/core_utils.js
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19005 - Add helper functions to load image blob/bitmap data in
test/unit/api_spec.js
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19003 - Bump library version to
4.9
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19002 - Simplify toRomanNumerals function by @calixteman in https://github.com/mozilla/pdf.js/pull/19011
- Fix Typo:XFATemplate class Para Styling paddingight => paddingRight by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19012
- Set the padding of the buttons in the toolbars to zero by @calixteman in https://github.com/mozilla/pdf.js/pull/19018
- Shorten the
Page.prototype.userUnit
getter slightly by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19019 - [api-minor] Replace the
canvas
package with@napi-rs/canvas
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19015 - Apply gradient when stroking text by @calixteman in https://github.com/mozilla/pdf.js/pull/19023
- Disable ref test 'issue18896' for Chrome because it takes too much time by @calixteman in https://github.com/mozilla/pdf.js/pull/19024
- Simplify saving added/modified annotations. by @calixteman in https://github.com/mozilla/pdf.js/pull/19026
- Migrate to ESLint flat config by @nicolo-ribaudo in https://github.com/mozilla/pdf.js/pull/19029
- Add a
PartialEvaluator
helper for fetching CMap and Standard Font data by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19021 - Use Python 3.13 in the GitHub workflows by @timvandermeij in https://github.com/mozilla/pdf.js/pull/19035
- Update dependencies and translations to the most recent versions by @timvandermeij in https://github.com/mozilla/pdf.js/pull/19033
- [api-minor] Add a
getDocument
option to disableImageDecoder
usage by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19031 - Remove the
extensions/chromium/.eslintrc
file (PR 19029 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19052 - Enable the ESLint
no-var
rule in thesrc/core/evaluator.js
file by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19050 - Enable the ESLint
no-console
rule in parts of the code-base by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19042 - Avoid redundant CMap-value lookup in
extendCMap
(PR 5101 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19057 - Convert the
Dict
-implementation to use aMap
internally by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19051 - Improve clean-up of
#_hcmCache
-data inDOMFilterFactory.prototype.destroy
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19059 - [api-minor] Disable
ImageDecoder
usage by default in Chromium browsers by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19045 - When saving some annotations with the same name, set the value in the parent by @calixteman in https://github.com/mozilla/pdf.js/pull/19054
- Remove obsolete Gitpod files by @timvandermeij in https://github.com/mozilla/pdf.js/pull/19062
- Update dependencies and translations to the most recent versions by @timvandermeij in https://github.com/mozilla/pdf.js/pull/19061
- Update svglint to 3.1.0 by @calixteman in https://github.com/mozilla/pdf.js/pull/18669
- Use JSON imports instead of PDFJSDev.json by @nicolo-ribaudo in https://github.com/mozilla/pdf.js/pull/19068
- Fix the "must check that an infinite loop is not triggered" integration test by @timvandermeij in https://github.com/mozilla/pdf.js/pull/19064
- Enable the
unicorn/no-single-promise-in-promise-methods
ESLint plugin rule by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19071 - Fix 'must load a SVG, delete it and undo' integration test by @calixteman in https://github.com/mozilla/pdf.js/pull/19069
- Simplify the
getUuid
helper function by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19084 - Use the V entry as an option when no options in a choice widget by @calixteman in https://github.com/mozilla/pdf.js/pull/19086
- [Editor] Simplify the draw layer code by @calixteman in https://github.com/mozilla/pdf.js/pull/19085
- [Editor] Avoid to scroll when dragging an editor on a touch screen by @calixteman in https://github.com/mozilla/pdf.js/pull/19087
- [Editor] Avoid to use event.movementX/Y when resizing an editor by @calixteman in https://github.com/mozilla/pdf.js/pull/19088
- Ensure that the response-origin of range requests match the full request (issue 12744) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19028
- Rescale the image data when they're really too large by @calixteman in https://github.com/mozilla/pdf.js/pull/19095
- Fix path traversal issue in createTemporaryNodeServer by @Rob--W in https://github.com/mozilla/pdf.js/pull/19096
- Convert the
getPdfManager
function to be asynchronous by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19091 - Drop trailing whitespace from test/unit/api_spec.js by @Rob--W in https://github.com/mozilla/pdf.js/pull/19100
- Fix the highlight integration test when highlighting with the keyboard by @calixteman in https://github.com/mozilla/pdf.js/pull/19111
- [Editor] Disallow to have multiple pointers while dragging an editor by @calixteman in https://github.com/mozilla/pdf.js/pull/19109
- [Editor] Add a new base class to allow to add a drawing in the SVG layer. by @calixteman in https://github.com/mozilla/pdf.js/pull/19093
- Correctly compute the mapping between text and normalized text when it contains a compound word on two lines by @calixteman in https://github.com/mozilla/pdf.js/pull/19122
- Use the
stopEvent
helper function everywhere possible by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19121 - Very slightly improve the performance when searching in a pdf by @calixteman in https://github.com/mozilla/pdf.js/pull/19123
- [Editor] Allow to abort the current drawing by @calixteman in https://github.com/mozilla/pdf.js/pull/19129
- Fix #serializeBoxes function not output correct quadPoints values for deserialize (issue19056) by @jarklee in https://github.com/mozilla/pdf.js/pull/19066
- Simplify the code to zoom in using a pinch gesture by @calixteman in https://github.com/mozilla/pdf.js/pull/19124
- Build date consistently (in term of tz) when executing some embedded JS (bug 1934157) by @calixteman in https://github.com/mozilla/pdf.js/pull/19131
- Use even more optional chaining in the
src/display/api.js
file by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19135 - Shorten the
WorkerMessageHandler
class a little bit by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19136 - Move the
getPage
call inPDFDocumentProperties
class by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19137 - Update dependencies and translations to the most recent versions by @timvandermeij in https://github.com/mozilla/pdf.js/pull/19099
- Disable the browser-tests in Google Chrome on the bots by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/19117
v4.8.69
This release contains improvements for the annotation editor, font conversion, form rendering, image conversion and the viewer.
- Bump the stable version in
pdfjs.config
by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18858 - Fix typing logic in the scripting integration tests by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18862
- Improve the promise-caching in the
PDFDocument.fieldObjects
getter by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18871 - Remove the temporary "visibilitychange" listener, in
PDFViewer
, withAbortSignal.any()
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18873 - Avoid exceptions in the console with ill-formed flate streams by @calixteman in https://github.com/mozilla/pdf.js/pull/18878
- Don't add the grey outline when hovering a selected highlight by @calixteman in https://github.com/mozilla/pdf.js/pull/18879
- [Editor] Remove
ColorPicker
event listeners withAbortSignal.any()
(PR 18586 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18874 - Fix failing integration test on Windows with Chrome by @calixteman in https://github.com/mozilla/pdf.js/pull/18860
- Add an option to gulp makeref/browsertest to only run tests with specific ids by @calixteman in https://github.com/mozilla/pdf.js/pull/18833
- Move the regular expression caching into the
PDFDateString
class by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18885 - Remove event listeners with
AbortSignal
in theAltTextManager
class by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18881 - Don't add attribute 'aria-haspopup' when no popup is rendered for an annotation by @calixteman in https://github.com/mozilla/pdf.js/pull/18889
- Clamp the hival parameter of Indexed color space to the range [0; 255] by @calixteman in https://github.com/mozilla/pdf.js/pull/18890
- Fallback on gray colorspace when there are no colorspace and no name in the scn/SCN arguments by @calixteman in https://github.com/mozilla/pdf.js/pull/18895
- Some jpx images can have a mask by @calixteman in https://github.com/mozilla/pdf.js/pull/18899
- implementing optional content radiobutton groups by @agrahn in https://github.com/mozilla/pdf.js/pull/18825
- Remove unnecessary options from
removeEventListener
in theweb/app.js
file by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18893 - Create fewer Objects in
PDFViewerApplication.bindEvents
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18898 - Reduce duplication when collecting optional content groups by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18905
- Handle null parentElement for selection anchor by @hubgit in https://github.com/mozilla/pdf.js/pull/18884
- Add the
pdkids
PDF document to the repository by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18902 - When changing a property on a radio button then change it for the siblings (bug 1922766) by @calixteman in https://github.com/mozilla/pdf.js/pull/18916
- Re-factor the
MessageHandler
-class event handler function by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18888 - Remove event listeners with
AbortSignal
in theGrabToPan
class by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18919 - [api-minor] Update the
canvas
package to version 3 by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18922 - Bump library version to
4.8
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18924 - Run CI tests in Node.js version 23 by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18925
- Remove the
eslint-plugin-{fetch-options,html}
andeslint-config-prettier
dependencies by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18927 - Update dependencies and translations to the most recent versions by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18921
- Simplify localization of the "default-content" in FreeText editors by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18920
- Replace
eslint-plugin-sort-exports
byeslint-plugin-perfectionist
by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18929 - Fix the "Text selection using mouse doesn't jump when hovering on an empty area in a single page" integration test by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18923
- Remove
mask-image
duplication for the print/download buttons by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18930 - Fallback to a standard font if a font-file entry doesn't contain a Stream (issue 18941) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18942
- Try to discourage "unrelated" information under
Attach (recommended) or Link to PDF file
in the bug report template (PR 18535 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18940 - Change the
BaseCMapReaderFactory
fetch-helper to return aUint8Array
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18933 - Use ImageDecoder in order to decode jpeg images (bug 1901223) by @calixteman in https://github.com/mozilla/pdf.js/pull/18910
- Add a comment in l10n file for the non-standard attribute default-content by @calixteman in https://github.com/mozilla/pdf.js/pull/18947
- Always fill the mask with the backdrop color by @calixteman in https://github.com/mozilla/pdf.js/pull/18960
- Re-factor the
ImageResizer._goodSquareLength
definition by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18965 - [api-minor] Remove the
CMapCompressionType
enumeration by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18951 - Make util.scand a bit more flexible with dates which don't match the given format (bug 1910431) by @calixteman in https://github.com/mozilla/pdf.js/pull/18967
- [Editor] Split the long words when showing the alt-text tooltip (bug 1903588) by @calixteman in https://github.com/mozilla/pdf.js/pull/18968
- Use a BMP decoder when resizing an image by @calixteman in https://github.com/mozilla/pdf.js/pull/18918
- [Editor] Utilize Fluent "better" when localizing the AltText by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18971
- Allow
StreamsSequenceStream
to skip sub-streams that are not actual Streams (issue 18973) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18974 - Improve the implementation of the
PDFDocument.fingerprints
-getter by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/17862 - Simplify the "ReaderHeadersReady" message-handler in the API by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18977
- [Editor] Refactor the free highlight stuff in order to be able to use the code for more general drawing by @calixteman in https://github.com/mozilla/pdf.js/pull/18972
- Re-factor the
toHexUtil
helper (PR 17862 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18978 - Don't initialize
L10n.#elements
eagerly since it's unused in MOZCENTRAL builds by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18979 - Change the "FetchBuiltInCMap"/"FetchStandardFontData" message-handlers to be asynchronous by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18983
- Use the
hexNumbers
structure in thestringToUTF16HexString
helper by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18993 - Ensure that serializing of StructTree-data cannot fail during loading by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18990
- Inline the
flushChunks
helper function, used ingetPdfManager
on the worker-thread by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18992 - Move the various DOM-factories into their own files by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18988
v4.7.76
This release contains improvements for accessibility, the annotation editor, annotation rendering, font conversion, form rendering, text selection, tiling pattern rendering and the viewer.
- Bump the stable version in
pdfjs.config
by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18678 - [Editor] Make the focused stamp annotation more clear from a screen reader point of view (bug 1911994) by @calixteman in https://github.com/mozilla/pdf.js/pull/18664
- [Editor] Make highlight annotations editable (bug 1883884) by @calixteman in https://github.com/mozilla/pdf.js/pull/18427
- Update dependencies and translations to the most recent versions by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18679
- Use
Headers
consistently in the differentIPDFStream
implementations by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18673 - [Editor] Make the stamp annotations alt text readable by either VO or NVDA (bug 1912001) by @calixteman in https://github.com/mozilla/pdf.js/pull/18658
- [Editor] Remove the disclaimer when the user is editing the alt-text in the new alt-text modal (bug 1911764) by @calixteman in https://github.com/mozilla/pdf.js/pull/18670
- Improve the
StructTreeLayerBuilder.render
method by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18689 - In the autoprint integration test, resolve the promise on 'afterprint' event by @calixteman in https://github.com/mozilla/pdf.js/pull/18690
- [Editor] Avoid to throw when an highlight annotation is resetted by @calixteman in https://github.com/mozilla/pdf.js/pull/18697
- Make tagged images visible for screen readers (bug 1708040) by @calixteman in https://github.com/mozilla/pdf.js/pull/18692
- Avoid to have a white line around the canvas by @calixteman in https://github.com/mozilla/pdf.js/pull/18698
- Use "full" localization ids in the
ColorPicker
class (PR 18674 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18705 - Use "full" localization ids in the
AltText
class (PR 18674 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18706 - Use response-
Headers
in the differentIPDFStream
implementations by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18682 - Prevent
.visibleMediumView
from overriding already hidden elements (issue 18704, PR 18596 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18707 - [CRX] Migrate Chrome extension to Manifest Version 3 by @Rob--W in https://github.com/mozilla/pdf.js/pull/18681
- [CRX] Detect availability of DNR responseHeaders before use by @Rob--W in https://github.com/mozilla/pdf.js/pull/18711
- Update dependencies and translations to the most recent versions by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18708
- [JS] Let AFSpecial_KeystrokeEx match a format without 'decoration' (bug 1916714) by @calixteman in https://github.com/mozilla/pdf.js/pull/18718
- [Editor] Avoid to have the ML disclaimer when the ML engine isn't ready (bug 1917543) by @calixteman in https://github.com/mozilla/pdf.js/pull/18719
- [Editor] Avoid to have a stamp editor resizing itself by @calixteman in https://github.com/mozilla/pdf.js/pull/18716
- Remove ununsed static
HighlightEditor._l10nPromise
field by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18724 - Consume any pending path before drawing an annotation by @calixteman in https://github.com/mozilla/pdf.js/pull/18726
- Consider foo-\nBar as a compound word by @calixteman in https://github.com/mozilla/pdf.js/pull/18730
- Ensure that textLayers can be rendered in parallel, without interfering with each other by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18731
- [JS] Correctly format floating numbers when they're close to an integer (bug 1918115) by @calixteman in https://github.com/mozilla/pdf.js/pull/18737
- Bump dset from 3.1.3 to 3.1.4 by @dependabot in https://github.com/mozilla/pdf.js/pull/18738
- [Editor] Avoid an extra new line when serializing a FreeText annotation (bug 1897909) by @calixteman in https://github.com/mozilla/pdf.js/pull/18740
- Fluent: use explicit NUMBER() in plural variants by @flodolo in https://github.com/mozilla/pdf.js/pull/18741
- Use the "pageColorsBackground" option as background-color for non-loaded pages (issue 18680) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18742
- [CRX] Enable WebAssembly in Chrome extension by @Rob--W in https://github.com/mozilla/pdf.js/pull/18748
- [CRX] Fix feature detect of DNR responseHeaders option by @Rob--W in https://github.com/mozilla/pdf.js/pull/18728
- [Editor] Take into account the device pixel ratio when drawing an added image by @calixteman in https://github.com/mozilla/pdf.js/pull/18749
- Simplify the code that picks the appropriate NetworkStream-implementation by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18756
- Rename the toolbar buttons in order to free their current names by @calixteman in https://github.com/mozilla/pdf.js/pull/18757
- Read a signed integer when using PUSHW in sanitizing a font (bug 1919513) by @calixteman in https://github.com/mozilla/pdf.js/pull/18760
- Fix the rendering of the different separators we've in the UI by @calixteman in https://github.com/mozilla/pdf.js/pull/18761
- Link to the new issue templates from the README (PR 18308 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18763
- Ignore non-existing /Shading resources during parsing (issue 18765) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18766
- Use
fs/promises
in the Node.js unit-tests (PR 17714 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18772 - Update dependencies and translations to the most recent versions by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18771
- [api-minor] Pass
CanvasFactory
/FilterFactory
, rather than instances, togetDocument
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18776 - Bump library version to
4.7
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18777 - [Editor] Don't show the ml toggle button when the ml is disabled (bug 1920515) by @calixteman in https://github.com/mozilla/pdf.js/pull/18779
- Refactor the toolbar html & css to improve its overall accessibility (bug 1171799, bug 1855695) by @calixteman in https://github.com/mozilla/pdf.js/pull/18385
- Update
typescript
to version 5.6.2 by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18781 - Remove useless css variable --editor-toolbar-base-offset by @calixteman in https://github.com/mozilla/pdf.js/pull/18783
- Remove duplicated --toolbar-height definition in the css by @calixteman in https://github.com/mozilla/pdf.js/pull/18784
- Correctly compute the font size when printing a text field with an auto font size (bug 1917734) by @calixteman in https://github.com/mozilla/pdf.js/pull/18790
- Increase the size of the toolbar depending on the uidensity (bug 1171799) by @calixteman in https://github.com/mozilla/pdf.js/pull/18786
- Add Calixte to the list of authors by @sylvestre in https://github.com/mozilla/pdf.js/pull/18791
- Remove the unused
splitToolbarButton
CSS class (PR 18385 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18795 - Unify separate
#toolbarContainer
-blocks in the CSS (PR 18385 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18796 - Fix the rendering of tiling pattern when the steps are lower than the tile dimensions (bug 1837738) by @calixteman in https://github.com/mozilla/pdf.js/pull/18798
- Slightly re-factor the
transportFactory
initialization ingetDocument
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18785 - Remove
trackTransform
arguments fromCachedCanvases.getCanvas
-calls (PR 15281 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18799 - Add basic support for non-embedded GillSansMT fonts (issue 18801) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18802
- [Editor] When deleting an annotation with popup, then delete the popup too by @calixteman in https://github.com/mozilla/pdf.js/pull/18800
- [Editor] Avoid to have a selected stamp annotation on top of the secondary toolbar (bug 1911980) by @calixteman in https://github.com/mozilla/pdf.js/pull/18793
- Ensure that the CursorTools-buttons are disabled e.g. during editing (PR 15522 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18812
- [api-minor] Update the minimum supported Google Chrome version to 103 by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18822
- Re-factor how
PDFLayerViewer
decides if the UI needs to updated on "optionalcontentconfigchanged" events by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18829 - Make the secondary menu button usable with the keyboard when NVDA is enabled by @calixteman in https://github.com/mozilla/pdf.js/pull/18830
- Write the display flags in F entry when saving an annotation (issue 18072) by @calixteman in https://github.com/mozilla/pdf.js/pull/18824
- Fix
toolbarViewer
/toolbarContainer
regressions (PR 18385, 18786 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18831 - [Editor] Add the possibility to save an updated stamp annotation (bug 1921291) by @calixteman in https://github.com/mozilla/pdf.js/pull/18805
- [GV] Increase the height (48px) of the toolbar in order to fit the a11y recommendations (bug 1838602) by @calixteman in https://github.com/mozilla/pdf.js/pull/18837
- [Editor] Make the editor deserialization async by @calixteman in https://github.com/mozilla/pdf.js/pull/18843
- Remove the
PDFViewer.annotationEditorMode
setter event listeners withAbortSignal.any()
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18842 - [Editor] Make stamp annotations editable (bug 1921291) by @calixteman in https://github.com/mozilla/pdf.js/pull/18834
- Fluent: remove NUMBER() function from variant selector by @flodolo in https://github.com/mozilla/pdf.js/pull/18846
- [Editor] Avoid an exception when undoing the deletion of a pre-existing annotation by @calixteman in https://github.com/mozilla/pdf.js/pull/18851
- Fix missing annotation parent in using the one from the Fields entry by @calixteman in https://github.com/mozilla/pdf.js/pull/18845
- Change how we handle l10n-args for dates in the DocumentProperties dialog (bug 1922618) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18852
- Add more authors by @sylvestre in https://github.com/mozilla/pdf.js/pull/18854
- Keep the empty lines in the text fields by @calixteman in https://github.com/mozilla/pdf.js/pull/18853
- Update dependencies and translations to the most recent versions by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18855
- Use Calibri and Lucida Console, when it's possible, in place of sans-serif and monospaced (bug 1922063) by @calixteman in https://github.com/mozilla/pdf.js/pull/18844
v4.6.82
This release contains improvements for the annotation editor, font rendering, form rendering, performance, text selection and the viewer.
- Bump the stable version in
pdfjs.config
by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18500 - Shorten the errors mentioning API parameters in
BaseCMapReaderFactory
andBaseStandardFontDataFactory
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18502 - Initialize all user-options upfront in AppOptions by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18501
- Disable link annotations during text selection by @nicolo-ribaudo in https://github.com/mozilla/pdf.js/pull/18481
- Ignore non-dictionary nodes when parsing StructTree data (issue 18503) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18504
- Stop testing in Node.js 21 since it's reached end-of-life by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18505
- Update dependencies to the most recent versions by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18506
- Remove
PDFWorkerUtil
and move its contents intoPDFWorker
instead by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18507 - Remove the
globals
dependency by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18509 - Improve how the findbar's toggle button is referenced in the viewer code by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18510
- [Editor] Implement the new alt text flow (bug 1909604) by @calixteman in https://github.com/mozilla/pdf.js/pull/18492
- [Editor] Add a checkerboard behind the image preview in the new alt-text dialog in order to see its potential transparency by @calixteman in https://github.com/mozilla/pdf.js/pull/18516
- [Editor] Allow Float32Array for quadpoints in annotations (bug 1907958) by @calixteman in https://github.com/mozilla/pdf.js/pull/18526
- Give all HTML button elements a type by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18517
- Introduce a CSS variable for the toolbar height (bug 1171799) by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18518
- Further emphasize the importance of
Attach (recommended) or Link to PDF file
in the bug report template by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18535 - Move all event listeners into
Toolbar.prototype.#bindListeners
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18523 - [Editor] Add a new dialog for alt-text settings (bug 1909604) by @calixteman in https://github.com/mozilla/pdf.js/pull/18537
- [Editor] Use the color defined for the message bar foreground by @calixteman in https://github.com/mozilla/pdf.js/pull/18539
- [Editor] Fix l10n issues by @calixteman in https://github.com/mozilla/pdf.js/pull/18538
- [Editor] Don't create the image settings dialog if new alt-text is disabled by @calixteman in https://github.com/mozilla/pdf.js/pull/18540
- [Editor] Avoid to have the create alt-text button without a click listener by @calixteman in https://github.com/mozilla/pdf.js/pull/18543
- Fix the color of the buttons in a dialog in HCM by @calixteman in https://github.com/mozilla/pdf.js/pull/18547
- Link to the list of supported browsers in the bug report template by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18542
- Inline single-line event handlers in the
web/app.js
file by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18527 - [Editor] Load the model when the user switch to the stamp editing mode by @calixteman in https://github.com/mozilla/pdf.js/pull/18546
- Improve the larger event listeners in the
web/app.js
file by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18544 - [Editor] Guess alt text even when showing the dialog is disabled by @calixteman in https://github.com/mozilla/pdf.js/pull/18541
- Stop sending the unused
options
parameter to various download-methods in the viewer by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18551 - Empty fields are 0 when using AFSimple_Calculate by @calixteman in https://github.com/mozilla/pdf.js/pull/18552
- Update the Babel plugin to remove empty static blocks by @nicolo-ribaudo in https://github.com/mozilla/pdf.js/pull/18562
- Update dependencies to the most recent versions by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18554
- Use the
waitForEvent
helper function in the text layer integration tests by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18555 - Define a few editor event handler functions inline by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18560
- [Editor] Update the disclaimer string in the new alt-text dialog (bug 1911738) by @calixteman in https://github.com/mozilla/pdf.js/pull/18570
- Remove obsolete
otherPages
variable from the scripting integration tests by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18567 - Don't stop calculating field values when a Calculate callback throws by @calixteman in https://github.com/mozilla/pdf.js/pull/18566
- [Editor] Add the uiManager to the window object when testing by @calixteman in https://github.com/mozilla/pdf.js/pull/18574
- [Editor] Move the AI icon on the top of its parent div by @calixteman in https://github.com/mozilla/pdf.js/pull/18575
- [Editor] Dispatch changes in prefs enableAltTextModelDownload and enableGuessAltText to the viewer (bug 1912024) by @calixteman in https://github.com/mozilla/pdf.js/pull/18573
- Revert "[Editor] Dispatch changes in prefs enableAltTextModelDownload and enableGuessAltText to the viewer (bug 1912024)" by @calixteman in https://github.com/mozilla/pdf.js/pull/18578
- Dispatch changes in prefs enableAltTextModelDownload and enableGuessAltText to the viewer (bug 1912024) by @calixteman in https://github.com/mozilla/pdf.js/pull/18579
- [Editor] Pass a buffer instead of a typed array when passing image data to the model by @calixteman in https://github.com/mozilla/pdf.js/pull/18580
- Enable the
unicorn/{prefer-includes,throw-new-error}
linting rules by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18571 - Remove the
eslint-plugin-mozilla
dependency by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18583 - Group and scope the findbar rules using CSS nesting by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18568
- [Editor] Change the background color of the image preview in the new alt text dialog by @calixteman in https://github.com/mozilla/pdf.js/pull/18584
- [Editor] Remove event listeners with
AbortSignal.any()
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18586 - Check that
AbortSignal.any()
is supported inPDFViewer
too (PR 18586 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18587 - Revert "[Editor] Pass a buffer instead of a typed array when passing image data to the model" by @calixteman in https://github.com/mozilla/pdf.js/pull/18588
- [Editor] Add a first test to test the new alt text flow by @calixteman in https://github.com/mozilla/pdf.js/pull/18581
- [Firefox] Remove the "loadaiengineprogress" listener with
AbortSignal.any()
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18592 - Remove the sidebar resizing event listeners with an
AbortController
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18593 - [Editor] Add the telemetry for the new alt text (bug 1912500) by @calixteman in https://github.com/mozilla/pdf.js/pull/18589
- Group and scope the secondary toolbar button container/icon rules using CSS nesting by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18595
- Remove the
secondaryToolbarButton
CSS class by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18596 - Group and scope the secondary toolbar rules using CSS nesting by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18597
- Limit base-class initialization checks to development and TESTING modes by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18598
- Remove the
enableHighlightEditor
preference by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18594 - [api-minor] Allow specifying custom match logic in PDFFindController by @nicolo-ribaudo in https://github.com/mozilla/pdf.js/pull/18549
- Bump library version to
4.6
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18604 - Improve the viewer CSS after nesting the findbar and secondary toolbar rules by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18601
- Handle the "switchannotationeditorparams" event in the editor-code (issue 18196) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18605
- Link to official releases and the demo viewer in the bug report template by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18610
- Fix the telemetry for the new alt-text flow by @calixteman in https://github.com/mozilla/pdf.js/pull/18611
- Enable disabled integration tests for Firefox by @calixteman in https://github.com/mozilla/pdf.js/pull/18613
- Shorten the
PDFViewerApplication._parseHashParams
method by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18612 - Update dependencies and translations to the most recent versions by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18615
- Set the event handlers in the integration tests before any event is triggered by @calixteman in https://github.com/mozilla/pdf.js/pull/18617
- [Editor] Move setting
window.uiManager
back to the test code by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18623 - Fix the "must check that a value is correctly updated on a field and its siblings" scripting integration test by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18624
- Use standard glyph mapping for non-embedded and non-composite Calibri fonts (issue 18208) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18628
- Send fetch requests for all page dict lookups in parallel by @richard-smith-preservica in https://github.com/mozilla/pdf.js/pull/18627
- Support an odd number of digits in hexadecimal strings (issue 18645) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18646
- Don't show the print dialog when printing in some integration tests by @calixteman in https://github.com/mozilla/pdf.js/pull/18635
- Introduce a helper method for fetching l10n-data in
PDFDocumentProperties
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18636 - Introduce a
L10n
-method to translate an element once, and use that inPDFLayerViewer
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18643 - Use
HTMLCanvasElement.toBlob()
unconditionally inPDFPrintService
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18644 - Update dependencies and translations to the most recent versions by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18648
- Utilize Fluent to format numbers and dates in
PDFDocumentProperties
/AnnotationLayer
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18638 - [Editor] Add a missing parameter in the telemetry for the new alt text flow (bug 1914480) by @calixteman in https://github.com/mozilla/pdf.js/pull/18650
- [Editor] Utilize Fluent "better" when localizing the resizer DOM-elements by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18649
- [Editor] Define the "pdfjs-editor-new-alt-text-generated-alt-text-with-disclaimer" string once by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18654
- [Editor] Fix few telemetry issues with the new alt text flow (bug 1915434) by @calixteman in https://github.com/mozilla/pdf.js/pull/18661
- Upgrade Puppeteer to version 23.1.1 by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18590
- [CRX] Remove obsolete manifest features by @Rob--W in https://github.com/mozilla/pdf.js/pull/18651
- Simplify the
PDFDocumentProperties.#updateUI
method by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18655 - Use the URL global instead of the deprecated url.parse by @nicolo-ribaudo in https://github.com/mozilla/pdf.js/pull/18657
- Use "full" localization ids in the
PDFDocumentProperties
class by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18663 - [Editor] Update the loading icon when wait for ML to take into account prefered-reduced-motion setting by @calixteman in https://github.com/mozilla/pdf.js/pull/18666
- Update l10n files by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18671
- Use "full" localization ids throughout the code-base by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18674
- Add a helper function for http/https requests in
src/display/node_stream.js
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18665 - Shorten the code that inits
AnnotationEditorLayerBuilder
in theweb/pdf_page_view.js
file by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18672 - Add an option (i.e. --noFirefox) to only use Chrome when running tests by @calixteman in https://github.com/mozilla/pdf.js/pull/18675
v4.5.136
This release contains improvements for the annotation editor, font rendering, image rendering and the viewer.
- Bump the stable version in
pdfjs.config
by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18359 - [Editor] Take into account the page translation when computing the quadpoints when saving an highlight by @calixteman in https://github.com/mozilla/pdf.js/pull/18361
- [api-minor][Editor] When switching to editing mode, redraw pages containing editable annotations (bug 1883884) by @calixteman in https://github.com/mozilla/pdf.js/pull/18134
- Bump library version to 4.5 by @calixteman in https://github.com/mozilla/pdf.js/pull/18365
- [Editor] Make sure everything is cleaned up when we switch to annotation editor mode by @calixteman in https://github.com/mozilla/pdf.js/pull/18366
- [api-minor] Remove the deprecated
renderTextLayer
andupdateTextLayer
functions (PR 18104 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18349 - Use vertical variant of a char when it's in a missing vertical font (bug 1905623) by @calixteman in https://github.com/mozilla/pdf.js/pull/18369
- [Firefox] Generate a PDF.js default-prefs file that can be used directly in mozilla-central (bug 1905864) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/15209
- Update dependencies and translations to the most recent versions by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18367
- Make sure the editor is visible before getting its rect by @calixteman in https://github.com/mozilla/pdf.js/pull/18374
- Fix the integration tests related to printing by @calixteman in https://github.com/mozilla/pdf.js/pull/18383
- [Editor] Remove the option enableStamp by @calixteman in https://github.com/mozilla/pdf.js/pull/18389
- Move the internal API/Worker
isEditing
-state intoRenderingIntentFlag
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18387 - Remove the
renderForms
parameter from the AnnotationgetOperatorList
methods by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18394 - Check the relevant parameters inside of the
mustBeViewedWhenEditing
method by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18393 - [Editor] Avoid to query ML engine several times for the same image by @calixteman in https://github.com/mozilla/pdf.js/pull/18380
- Allow to change the toolbar height when changing the pref toolbar.density in Firefox (bug 1171799) by @calixteman in https://github.com/mozilla/pdf.js/pull/18397
- Fix the "must check that charLimit is correctly set" scripting integration test by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18399
- [Editor] Change the enableML pref for enableAltText (bug 1905923) by @calixteman in https://github.com/mozilla/pdf.js/pull/18398
- Fix orphaned browser processes due to uncaught exceptions in the tests by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18401
- Move the "updatedPreference" event listener registration by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18402
- Fix the "caches image resources at the document/page level as expected (issue 11878)" unit test by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18404
- Handle toUnicode cMaps that omit leading zeros in hex encoded UTF-16 (issue 18099) by @alexcat3 in https://github.com/mozilla/pdf.js/pull/18390
- Introduce a
waitForScripting
helper function and use it in all scripting integration tests by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18405 - Use BiDi protocol for Chrome tests by @calixteman in https://github.com/mozilla/pdf.js/pull/17962
- Re-factor
BasePreferences
to essentially be a wrapper aroundAppOptions
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18413 - [Editor] Wait for 'pagerendered' to switch to editing mode by @calixteman in https://github.com/mozilla/pdf.js/pull/18418
- Fix
ensureMinFontSizeComputed
calculation if<body>
is a flex container by @razh in https://github.com/mozilla/pdf.js/pull/18416 - Allow e.g. /FitH destinations without additional parameter (bug 1907000) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18421
- Also update the width/unicode data when replacing missing glyphs in non-embedded Type1 fonts (issue 18059) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18412
- [Editor] Update the freetext annotation dictionary instead of creating a new one when updating an existing freetext by @calixteman in https://github.com/mozilla/pdf.js/pull/18419
- Create absolute filter-URLs when needed in
DOMFilterFactory
(issue 18406) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18417 - Remove the remaining
zoomDisabledTimeout
usage (issue 17727) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18423 - [Editor] Make editor toolbars usable whatever their z-index (bug 1879104) by @calixteman in https://github.com/mozilla/pdf.js/pull/18425
- [Editor] Disable existing highlights when drawing a new one (bug 1879035) by @calixteman in https://github.com/mozilla/pdf.js/pull/18424
- Update dependencies to the most recent versions and update the JS/CSS files for the new Prettier/Stylelint versions by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18432
- Disable network connections to Contile for the tests by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18433
- Remove obsolete
pdfjs-dist
code from the Gulpfile by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18434 - [Editor] Add an option to use the new 'add an image' flow (bug 1907207) by @calixteman in https://github.com/mozilla/pdf.js/pull/18429
- Fix
DOMFilterFactory.#createUrl
in MOZCENTRAL builds (18417 PR follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18430 - [Editor] When in non-editing mode, add a new editor only once the editing mode has switched by @calixteman in https://github.com/mozilla/pdf.js/pull/18440
- [api-minor] Remove
Outliner
from the official API by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18441 - Remove active smask when restoring the initial canvas state by @calixteman in https://github.com/mozilla/pdf.js/pull/18445
- Add the possibility to change some pdfjs preferences from the viewer (bug 1908483) by @calixteman in https://github.com/mozilla/pdf.js/pull/18449
- Allow /XYZ destinations without zoom parameter (issue 18408) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18453
- Include additional data when fetching browser preferences in the PDF Viewer (bug 1908401) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18448
- [Editor] Allow to change a preference from the editor UI manager by @calixteman in https://github.com/mozilla/pdf.js/pull/18454
- Load the image-to-text model when opening the pdf viewer in Firefox (bug 1908938) by @calixteman in https://github.com/mozilla/pdf.js/pull/18461
- Reduce a tiny bit of duplication in
PDFViewerApplication.setTitleUsingUrl
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18464 - Re-factor the code to remove all uses of
PDFViewerApplication.downloadComplete
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18463 - Add more validation when setting
AppOptions
(PR 18413 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18450 - Move the
Preferences
initialization as early as possible by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18470 - Introduce some
Map
-usage in the AppOptions by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18469 - Add a pref containing the url for the sumo page about alt text (bug 1909097) by @calixteman in https://github.com/mozilla/pdf.js/pull/18471
- Disable system fonts on Android (issue 18210) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18465
- Add the possibility to delete a model (bug 1908939) by @calixteman in https://github.com/mozilla/pdf.js/pull/18472
- Fallback on DeviceGray when a colorspace cannot be parsed by @calixteman in https://github.com/mozilla/pdf.js/pull/18468
- Remove the unused
AppOptions.remove
method by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18475 - Use a transparent color when setting fill/stroke colors in a pattern context but with no colorspace by @calixteman in https://github.com/mozilla/pdf.js/pull/18467
- Re-factor how the "docBaseUrl" API-option is set in the viewer by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18476
- Add better support for AppOptions with multiple types (PR 18465 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18480
- Add a pref to know if the alt-text must be automatically generated (bug 1909310) by @calixteman in https://github.com/mozilla/pdf.js/pull/18484
- Remove the
streamqueue
dependency by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18483 - Replace the GENERIC-only "locale" with "localeProperties" in AppOptions by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18486
- [Editor] Correctly save a non-ascii alt text by @calixteman in https://github.com/mozilla/pdf.js/pull/18493
- Consistently dispatch events, if needed, when setting AppOptions by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18495
v4.4.168
This release contains improvements for annotations, annotation editing, font conversion, image decoding, performance, scripting, text selection, test/release infrastructure and the viewer.
- Bump the stable version in
pdfjs.config
by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18182 - Update dependencies and translations to the most recent versions by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18183
- [api-minor] Simplify how the list of points are structured by @calixteman in https://github.com/mozilla/pdf.js/pull/18163
- Bump library version to 4.4 by @calixteman in https://github.com/mozilla/pdf.js/pull/18192
- Disconnect the resize observer and remove scroll listener when unbinding window events by @calixteman in https://github.com/mozilla/pdf.js/pull/18193
- Switch to page-scrolling mode when the pdf has more than 10000 pages (bug 1895050) by @calixteman in https://github.com/mozilla/pdf.js/pull/18189
- Upgrade
gulp
to version 5.0.0 by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18197 - Decompress when it's possible images in using DecompressionStream by @calixteman in https://github.com/mozilla/pdf.js/pull/18167
- Fix decoding of JPX images having an alpha channel by @calixteman in https://github.com/mozilla/pdf.js/pull/18204
- Change openjpeg.js license from Apache 2 to BSD 2-clause by @calixteman in https://github.com/mozilla/pdf.js/pull/18205
- Change
DownloadManager.download
to use Uint8Array-data by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18216 - Inline the
#finishRendering
helper inTextLayerBuilder.prototype.render
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18217 - [Editor] Support dragging & dropping images on a pdf (bug 1900907) by @calixteman in https://github.com/mozilla/pdf.js/pull/18214
- Update our OpenJPEG decoder in order to fix a malloc failure due to big image (bug 1901253) by @calixteman in https://github.com/mozilla/pdf.js/pull/18219
- Don't display annotations with a PMD (barcode stuff) entry (bug 1899804) by @calixteman in https://github.com/mozilla/pdf.js/pull/18228
- Update dependencies and translations to the most recent versions by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18231
- Add an option to enable/disable hardware acceleration (bug 1902012) by @calixteman in https://github.com/mozilla/pdf.js/pull/18238
- Remove the
DownloadManager.downloadUrl
method by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18236 - Display a wait cursor when saving by @calixteman in https://github.com/mozilla/pdf.js/pull/18243
- Fix an query with an empty selector in integration tests by @calixteman in https://github.com/mozilla/pdf.js/pull/18246
- Improve how the wait-cursor is toggled when copying all text by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18244
- Improve date parsing in the js sandbox by @calixteman in https://github.com/mozilla/pdf.js/pull/18234
- Don't recommend installing
gulp-cli
globally in the README and on the website by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18247 - Replace Wintersmith with Metalsmith by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18248
- Include the generated API documentation directly on the API page by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18251
- Improve some old code in the
src/display/api.js
file by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18250 - Compute correctly the unitsPerEm value from the fontMatrix when converting a font (bug 1539074) by @calixteman in https://github.com/mozilla/pdf.js/pull/18253
- Implement reproducibility for the JSDoc builds by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18256
- Ensure that saving, in the viewer, works for partially loaded documents by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18254
- Implement reproducibility for the release builds by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18258
- Update jpx decoder by @calixteman in https://github.com/mozilla/pdf.js/pull/18257
- Only disable HWA in m-c build and for local dev by @calixteman in https://github.com/mozilla/pdf.js/pull/18255
- Only use the l10n fallback bundle when normal ftl-file fetching failed (issue 18264) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18270
- Ensure that dependencies are added to the operatorList for locally cached images (issue 18259) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18269
- Clean up before closing the tab in integration tests by @calixteman in https://github.com/mozilla/pdf.js/pull/18271
- Add a helper function for handling locally cached image data (PR 18269 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18273
- [Editor] Set the canvas in the stamp editor at the right position in odd spread mode by @calixteman in https://github.com/mozilla/pdf.js/pull/18275
- [Editor] Fix intermittent failure in integration test when highlighting with the keyboard by @calixteman in https://github.com/mozilla/pdf.js/pull/18277
- Enable dumpio when running the tests in order to have some useful debug data by @calixteman in https://github.com/mozilla/pdf.js/pull/18260
- Don't save modified documents, when running tests, upon closing the viewer (issue 18274) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18282
- Pause l10n (i.e. disconnect the mutation observer in fluent) when closing the viewer by @calixteman in https://github.com/mozilla/pdf.js/pull/18280
- Avoid to call a function in the js sandbox when it has been destroyed by @calixteman in https://github.com/mozilla/pdf.js/pull/18286
- [Editor] Remove the various listeners when destroying the editor manager by @calixteman in https://github.com/mozilla/pdf.js/pull/18284
- Update dependencies to the most recent versions and upgrade
eslint-plugin-unicorn
to version 54.0.0 by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18278 - Update the regular expression in
tweakWebpackOutput
to support minified-legacy builds (issue 18290) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18292 - Add a new helper, in the viewer, to close everything during testing by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18289
- Respect
maxCanvasPixels
when computing canvas dimensions by @nicolo-ribaudo in https://github.com/mozilla/pdf.js/pull/18218 - [Editor] Don't create an observer for the stamp annotation after the viewer has been closed by @calixteman in https://github.com/mozilla/pdf.js/pull/18301
- Don't throw if there's not enough data to get the header in
FlateStream
(issue 18298) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18304 - [Editor] Correctly set the accessibility data when copying & pasting a stamp with an alt text (bug 1903589) by @calixteman in https://github.com/mozilla/pdf.js/pull/18296
- Close
PDFFindBar
when closing the viewer during testing by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18302 - Always use DW if it's a number for the font default width (bug 1903731) by @calixteman in https://github.com/mozilla/pdf.js/pull/18306
- Use the new formatted issue templates by @nicolo-ribaudo in https://github.com/mozilla/pdf.js/pull/18308
- Expose entireWord in updateFindControlState by @bootleq in https://github.com/mozilla/pdf.js/pull/18303
- Update dependencies and translations to the most recent versions by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18312
- Try to shutdown Fluent "more" when closing the viewer during testing by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18313
- Disable system addon updates for Firefox in testing mode by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18316
- Close the page in the text layer caret selection integration test by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18317
- Fix the "copy/paste from a tab to an other" stamp editor integration test by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18320
- Don't ignore errors in the Jasmine suite start/end stages by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18321
- Include a security policy for PDF.js by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18311
- Improve the security policy by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18323
- Fix the computation of unitsPerEm when the fontMatrix has some negative coefficients by @calixteman in https://github.com/mozilla/pdf.js/pull/18324
- Fix the timeout logic in the
waitForEvent
integration test helper function by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18325 - Use
waitForEvent
in thepasteFromClipboard
integration test helper function by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18326 - Override the minimum font size when rendering the text layer by @nicolo-ribaudo in https://github.com/mozilla/pdf.js/pull/18283
- Remove the
requestAnimationFrame
work-around inL10n.prototype.destroy
(PR 18313 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18333 - Add the possibility to dispatch some pdf.js events at the chrome level (bug 1904585) by @calixteman in https://github.com/mozilla/pdf.js/pull/18332
- Refactor the copy/paste logic in the integration tests and fix a race condition involving the
waitForEvent
integration test helper function by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18331 - Cancel the
requestAnimationFrame
in thewatchScroll
helper (PR 18193 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18335 - Cancel the
requestAnimationFrame
in the API when cancelling rendering by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18336 - Add a port option to gulp server by @calixteman in https://github.com/mozilla/pdf.js/pull/18339
- Fix intermittent failures with freetext and stamp tests by @calixteman in https://github.com/mozilla/pdf.js/pull/18338
- Ignore test issue17779.pdf in talos because it times out by @calixteman in https://github.com/mozilla/pdf.js/pull/18341
- Take into account PageOpen and PageClose actions which are present in some fields by @calixteman in https://github.com/mozilla/pdf.js/pull/18345
- Add a comment about
test/webserver.mjs
being development-only code by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18346 - Introduce a GitHub Actions workflow for publishing a release and fix
npm publish
warnings about thepackage.json
format by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18350 - Use
npm ci
, notnpm install
, on CI by @wojtekmaj in https://github.com/mozilla/pdf.js/pull/18353 - Disable new tab page stuff in Firefox when running tests by @calixteman in https://github.com/mozilla/pdf.js/pull/18356
- Generate provenance statements on npm publish by @wojtekmaj in https://github.com/mozilla/pdf.js/pull/18352
- Fix the repository URL in the
package.json
file forpdfjs-dist
by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18358
v4.3.136
This release contains improvements for performance, image rendering, text selection, annotation editing, accessibility, handling of corrupted documents, integration with third-party frameworks (see #17245) and the viewer.
- Bump the stable version in
pdfjs.config
by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18023 - Update dependencies and translations to the most recent versions by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18024
- Fix rendering problem when zooming on Safari by @Aditi-1400 in https://github.com/mozilla/pdf.js/pull/18019
- [api-minor] Remove the use of (get/put)ImageData when drawing SMasks (bug 1874013) by @calixteman in https://github.com/mozilla/pdf.js/pull/18029
- [api-minor] Expose the /Desc-attribute of file attachments in the viewer (issue 18030) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18031
- Remove the limit used to decided if a group canvas must be upscaled or not by @calixteman in https://github.com/mozilla/pdf.js/pull/18035
- Bump library version to
4.3
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18033 - Add even more validation of width-data (PR 18017 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18037
- [api-minor] Improve the
FileSpec
implementation by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18034 - Pin GitHub actions to Node.js 21 by @nicolo-ribaudo in https://github.com/mozilla/pdf.js/pull/18009
- Avoid to aria-hide the structure tree (bug 1894849) by @calixteman in https://github.com/mozilla/pdf.js/pull/18044
- Remove most
waitForTimeout
usage from the freetext editor integration tests by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18041 - Validate even more dictionary properties by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18026
- Remove event listeners with
signal
in web/pdf_viewer.js by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18055 - Remove the unused
Font.prototype.spaceWidth
getter (PR 13424 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18069 - Revert "Fix rendering problem when zooming on Safari" for causing bug 1895909 by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18079
- Slightly re-factor how the viewer initializes debug-only functionality by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18061
- Remove the
ignoreErrors
option from theFontFaceObject
class by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18066 - [api-minor] Re-factor how Node.js packages/polyfills are loaded (issue 17245) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18051
- Restore broken functionality and simplify the implementation in
src/display/text_layer.js
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18052 - Update the Babel plugin to remove empty class constructors by @nicolo-ribaudo in https://github.com/mozilla/pdf.js/pull/18060
- [api-minor] Include the document /Lang attribute in the textContent-data by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/17941
- [Editor] Fix the CSS properties of the canvas when it's used in a stampEditor (bug 1895909) by @calixteman in https://github.com/mozilla/pdf.js/pull/18080
- Fix flickering on text selection by @nicolo-ribaudo in https://github.com/mozilla/pdf.js/pull/17923
- Improve the
TextLayerRenderTask
implementation by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18089 - Update openjpeg build (bug 1896577) by @calixteman in https://github.com/mozilla/pdf.js/pull/18087
- Update dependencies and translations to the most recent versions by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18092
- Inline the
_fetchDocument
helper function ingetDocument
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18091 - Implement a unit test for the
BaseException
class by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18093 - Remove unnecessary
signal
parameter fromremoveEventListener
calls by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18094 - Avoid re-parsing global images that failed decoding (issue 18042, PR 17428 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18047
- Actually disable
TextLayerRenderTask.prototype.#processItems
whenMAX_TEXT_DIVS_TO_RENDER
is reached (PR 18089 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18103 - [api-minor] Respect the
drawingDelay
also when CSS-only zooming is used (issue 18022) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18077 - Remove the
rimraf
dependency in favor of the built-in Node.jsfs.rmSync
by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18106 - Remove the obsolete
needle
dependency by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18107 - Don't invoke
cleanupTextLayer
when there are pending textLayers by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18109 - Support charCodes larger than 32-bit in
adjustMapping
(issue 18117) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18119 - Freeze
evaluatorOptions
in the src/core/pdf_manager.js file by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18115 - [api-minor] Re-factor the basic textLayer-functionality by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18104
- Remove the
through2
dependency in favor of the built-in Node.jsstream.Transform
by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18113 - Update puppeteer to 22.9.0 by @calixteman in https://github.com/mozilla/pdf.js/pull/18121
- Support corrupt PDF documents that contain "endsteam" commands (issue 18122) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18125
- [Editor] Update popup position and contents after a FreeText has been edited by @calixteman in https://github.com/mozilla/pdf.js/pull/17968
- [Editor] Pass a buffer instead of a blob url to the ML api by @calixteman in https://github.com/mozilla/pdf.js/pull/18136
- Add test for drawing delay with CSS-only zoom by @nicolo-ribaudo in https://github.com/mozilla/pdf.js/pull/18129
- Remove most
waitForTimeout
usage from the scripting integration tests by @timvandermeij in https://github.com/mozilla/pdf.js/pull/17974 - Add language attribute to canvas by @Aditi-1400 in https://github.com/mozilla/pdf.js/pull/17770
- Improve /Page validation for linearized documents (issue 18138) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18143
- Remove the
merge-stream
dependency in favor of theordered-read-streams
dependency by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18145 - Shorten the code in the
web/text_layer_builder.js
file by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18152 - Update dependencies and translations to the most recent versions by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18153
- Introduce a
getRect
utility function for the integration tests by @timvandermeij in https://github.com/mozilla/pdf.js/pull/18154 - [GeckoView] Don't use the system fonts (bug 1882613) by @calixteman in https://github.com/mozilla/pdf.js/pull/18156
- Prevent XRef errors from breaking font loading (bug 1898802) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18166
- Update the "File Layout Overview" docs by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18160
- Improve the
loadingParams
functionality in the API by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18159 - Simplify the integration test in adding a function to turn on/off an editing tool by @calixteman in https://github.com/mozilla/pdf.js/pull/18165
- Move the dialog css stuff in its own file by @calixteman in https://github.com/mozilla/pdf.js/pull/18174
- Target ES2022 when building the TypeScript definitions (issue 17932) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18161
- Slightly shorten some worker-thread code by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18169
- Don't register a pending
TextLayer
untilrender
is invoked (PR 18104 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18171 - [api-minor] Remove the
setTextContentSource
method inTextLayerBuilder
(PR 18104 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18170 - [api-minor] Simplify API to implement zoom in custom viewers by @nicolo-ribaudo in https://github.com/mozilla/pdf.js/pull/18179
v4.2.67
This release includes a new JPX decoder, based on OpenJPEG, which improves JPX image rendering performance and correctness. Moreover, this release contains improvements for the annotation editor, font conversion and the viewer.
Note that text selection boxes for some PDF files may overlap visually. This is a known issue that we currently track in https://github.com/mozilla/pdf.js/issues/17561.
- Bump the stable version in
pdfjs.config
by @timvandermeij in https://github.com/mozilla/pdf.js/pull/17924 - Convert the history code to use proper private methods by @timvandermeij in https://github.com/mozilla/pdf.js/pull/17925
- Update dependencies and translations to the most recent versions by @timvandermeij in https://github.com/mozilla/pdf.js/pull/17927
- Remove the tag for missing font subset when trying to find a substitution by @calixteman in https://github.com/mozilla/pdf.js/pull/17930
- Fix resetting of cursor-tools when closing the document (PR 17464 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/17933
- Warn when a non-embedded font has an invalid name by @calixteman in https://github.com/mozilla/pdf.js/pull/17934
- Remove the
mkdirp
dependency in favor of the built-in Node.jsfs.mkdirSync
by @timvandermeij in https://github.com/mozilla/pdf.js/pull/17935 - Improve type definitions for the viewer by @ex37 in https://github.com/mozilla/pdf.js/pull/17879
- Fix the "must check that invisible fields are made visible" scripting integration test by @timvandermeij in https://github.com/mozilla/pdf.js/pull/17940
- Remove the
rimraf
dependency in favor of the built-in Node.jsfs.rmSync
in the test folder by @timvandermeij in https://github.com/mozilla/pdf.js/pull/17938 - [api-minor] Update the minimum supported Safari version to 16.4 by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/17942
- Fix the "must check that a field has the correct value when a choice is changed" scripting integration test by @timvandermeij in https://github.com/mozilla/pdf.js/pull/17947
- [api-minor] Add a jpx decoder based on OpenJPEG 2.5.2 by @calixteman in https://github.com/mozilla/pdf.js/pull/17946
- Bump library version to
4.2
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/17949 - Build the openjpeg-based decoder in a web environment in order to avoid issues when used in node by @calixteman in https://github.com/mozilla/pdf.js/pull/17954
- Fix
JpxImage
API issues (PR 17946 follow-up) by @timvandermeij in https://github.com/mozilla/pdf.js/pull/17951 - [JPX] Throw an exception with the error messages returned by openjpeg by @calixteman in https://github.com/mozilla/pdf.js/pull/17956
- [Editor] Provide an element to render in the annotation layer after a freetext has been edited (bug 1890535) by @calixteman in https://github.com/mozilla/pdf.js/pull/17914
- Remove
waitForTimeout
usage from the helper functions by @timvandermeij in https://github.com/mozilla/pdf.js/pull/17966 - Remove some event listeners with
signal
in the viewer by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/17964 - [Editor] Don't show the context menu when resizing by @calixteman in https://github.com/mozilla/pdf.js/pull/17973
- Correctly update the xref table when an annotation is deleted by @calixteman in https://github.com/mozilla/pdf.js/pull/17970
- Update dependencies and translations to the most recent versions by @timvandermeij in https://github.com/mozilla/pdf.js/pull/17972
- Improve jpx decoding by around 20% in enabling simd support when compiling OpenJPEG by @calixteman in https://github.com/mozilla/pdf.js/pull/17983
- [api-minor] Remove the image-related error message prefixes by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/17979
- Use the pdf.js warn when using jpx decoder by @calixteman in https://github.com/mozilla/pdf.js/pull/17985
- Extend the globally cached image main-thread copying to "complex" images as well (PR 17428 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/17978
- Update
JpxImage.parseImageProperties
to support TypedArray data in IMAGE_DECODERS builds by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/17977 - Add
signal
-support in theEventBus
, and utilize it in the viewer (PR 17964 follow-up) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/17967 - Set correctly the change property for the event triggered when a choice list is changed by @calixteman in https://github.com/mozilla/pdf.js/pull/17999
- Remove all
waitForTimeout
usage from the annotation integration tests by @timvandermeij in https://github.com/mozilla/pdf.js/pull/17969 - Validate explicit destinations on the worker-thread to prevent
DataCloneError
(issue 17981) by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/17984 - Allow to insert several annotations under the same parent in the structure tree by @calixteman in https://github.com/mozilla/pdf.js/pull/17986
- Always enable smoothing when rendering downscaled image by @calixteman in https://github.com/mozilla/pdf.js/pull/17868
- Simplify the way to pass the glyph drawing instructions from the worker to the main thread by @calixteman in https://github.com/mozilla/pdf.js/pull/18015
- Validate additional font-dictionary properties by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18014
- Add more validation of width-data by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18017
- Reduce code-duplication when caching data in
CompiledFont.getPathJs
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18018 - Re-factor
SimpleLinkService
to extendPDFLinkService
by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18013 - [api-minor] Move the page reference/number caching into the API by @Snuffleupagus in https://github.com/mozilla/pdf.js/pull/18001