Skip to content

Foxit PDF SDK for Web 9.1.0 ​

Release date: August 29, 2023

New features ​

  • Render and edit annotations using CA, ca, and BM dictionaries from PDF 2.0.
  • Backend font matching for more accurate font mapping.
  • Configure annotation UI move, resize, rotate, and diagonal handles per shape type.
    • Related APIs:
      • PDFViewCtrl::interfaces::CustomOptionsUpdater::updateGetAnnotComponentConfig()
      • PDFViewer::constructor [options.customs.getAnnotComponentConfig=function(){}]
  • All measurement tools support caption color and label text via UI or API.
    • Related APIs: ***.setCaptionColor; ***.setContent
  • New setImage API to set stamps and screens programmatically.
  • New PDFDoc.AddAnnots for batch annotation insertion.
  • Paging seal signatures: add, update, delete, and sign seals.
    • Related APIs:
      • PDFDoc::addPagingSealSignature
      • PDFDoc::getAllPagingSealSignatures
      • PDFDoc::removePagingSealSignature
      • PDFDoc::updatePagingSealSignature
      • PDFDoc::sign()
  • PDFDoc.sign parameters email, reason, and location update default signer contact info in the signature properties dialog.
  • Signature image APIs: get image, detect last signature, remove signature.
    • Related APIs:
      • PDFSignature::getImage
      • PDFDoc::removeSignature
      • PDFSignature::isLast
  • Page thumbnails sync with rotated page view.
  • Task progress for signing, watermarks, add annotation, form recognition, and print.
    • Related APIs:
      • PDFViewer::interfaces:ProgressComponent
      • PDFViewer::registerProgressHandler(callback)
      • PDFUI::constructor(customs.progress)
  • HandStateHandlerConfig::enablePasting to enable or disable paste in hand mode.
  • UIExtension controllers for basic and advanced editors are public.
  • PDFViewer:RegisterPrintHandler to override default printing.
  • Dark mode UI support.
  • Built-in and custom storage drivers for measurement settings across sessions.
    • Related APIs:
      • PDFViewCtrl: Storage
      • PDFViewer::getInstanceId()
      • PDFViewer::constructor [options.instanceId]
  • PDFViewer::getActionCallbackManager to open embedded files linked from annotations.
  • PDFField::getMappingName / setMappingName for form data import/export.
  • PDFField::setAlternateName for accessibility alternate text.
  • Extract, update, and embed files programmatically.
    • Related APIs:
      • PDFDoc::addEmbeddedFile()
      • PDFDoc::setEmbeddedFile()
      • PDFDoc::getEmbeddedFile()

Enhancements ​

  • Improved snapping with existing measurements.
  • Broader undo/redo for annotation editing.
  • More readable measurement distance lines.
  • Better rendering for annotations using Multiply blend mode in appearance streams.
  • PDFViewer::initAnnotationIcons now accepts an array of objects for simpler configuration.

Demos ​

  • server\signature-server-for-linux: configure and start the signature service.
  • examples/UIExtension/dark/: dark mode example.
  • examples/UIExtension/custom-measurement-properties-dialog/index: customize measurement properties on the right.
  • New Vue.js 3 sample on GitHub.
  • New Next.js sample on GitHub.
  • New Mendix low-code integration demo.

Bug fixes ​

  • Transparent annotations with Multiply blend mode in appearance streams.
  • [Demo] commentlist-loadmode not loading all comments.
  • Crash when re-rendering new annotations on specific files.
  • Incomplete annotation tooltips on hover.
  • Reply disabled when annotation properties are locked.
  • Text reset on double-click new text box or Callout.
  • Restored plain-text paste for Typewriter.
  • Annotation render errors when zooming with Ctrl + mouse wheel.
  • CreationDate not updating on timezone change.
  • Unexpected annotation add when pinch-zooming ink on mobile.
  • Stamp added but icon missing from stamp list.
  • [Demo] ScrollTo not working with mouse wheel in basicViewer.
  • [Vue3] "L.filter is not a function" when deploying to Nginx.
  • Blank pages when scrolling specific files.
  • Replace all not applied on every page.
  • SDK checkbox/radio annotations missing in other PDF readers.
  • "File corrupted" when importing data exported via UI into .PDF (uppercase) files.
  • Interdependent calculation errors in specific form fields.
  • Incorrect rendering of "1 bpp with a mask" images.
  • "Cannot set property of undefined" on mobile page tap.
  • "Unknown engine error" when merging documents.
  • Incorrect print output for layered documents.
  • Memory leaks in getFile and getStream.
  • Line-by-line-only text selection in some files.
  • Cannot draw points on signature creation panel.
  • Cannot edit text after applying ink signature to text.
  • Incorrect signature verification after save when processing existing signatures.
  • Context menu firing twice on mouse up (Windows).
  • Inaccessible images when image size points exceed page MediaBox.
  • rightClickPage not fired on right-click in selection mode.
  • Slow scrollbar scrolling on laptops.
  • "Undefined" when partially loading advanced editor components.
  • Left panel hide only lasting one session despite component.hide().
  • Verified: SDK JS init errors from Chrome extension properties on window.
  • Content disappearing when resizing magnifier tool window.
  • maxScale not applied on mobile devices.