Skip to content

Foxit PDF SDK for Web 9.0.0 ​

Release date: March 7, 2023

TIP

Microsoft Internet Explorer is no longer supported from this version.

New features and updates ​

  • Advanced page editor Edit PDF page content: manipulate text blocks (font, alignment, merge/split), search and replace, and create shapes with presets, shadows, and more.

  • Image diff comparison

    • Related APIs: OverlayComparisonService::compareImageData(), PDFViewer::getOverlayComparisonService(), PDFViewer::getOverlayComparisonOptionsService()
    • Compare images between two documents pixel by pixel and generate an output image for overlay comparison in your app.
  • TypeScript declarations New .d.ts files in the SDK package: lib/index.d.ts, lib/UIExtension.d.ts, lib/UIExtension.full.d.ts, lib/PDFViewCtrl.d.ts, and lib/PDFViewCtrl.full.d.ts.

  • Custom dynamic stamps

    • Related APIs: PDFUI::callAddonAPI(), setDynamicStamp, getDynamicStamp, removeDynamicStamp
    • Create stamps with custom images, text, or logos for reuse across documents.
  • Multi-line tiled watermarks

    • Related API: PDFDoc::addWatermark()
    • Specify page range with pageStart and pageEnd; use isMultiline for multi-line tiling and rowSpace / columnSpace for spacing.
  • Paste annotations to a target page programmatically

    • Related API: PDFPage::pasteAnnot(srcAnnot, position)
  • Default font properties for FreeText annotations Set defaults for Typewriter, Callout, and text box via PDFViewer::setDefaultAnnotConfig() or Set current properties as default in the annotation properties UI.

  • Data for stamps under the mouse

    • Related APIs: PDFViewCtrl:Stamp class, PDFUI::getStampService()
    • Retrieve hover stamp information and monitor stamp state handler changes—for example, resize before placing on the page.
  • Preserve formatting when copying and pasting text with the hand tool Paste from Word, WordPad, or web pages as FreeText with rich formatting (color, size, bold, italic, underline, strikethrough). Links and images in copied content are ignored in the web viewer. If a font is unavailable, Helvetica is used.

  • Show perimeter and area measurement labels and values

    • Related APIs: Polygon::enableCaption, PolyLine::enableCaption
  • PDFDoc.sign rotation support Rotate signature fields to 0, 90, 180, or 270 degrees before placing on the document.

  • Signed signature details

    • Related API: PDFSignature::getSignInfo()
  • Text selection in hand state handler

    • Related API: PDFViewCtrl::stateHandlerManager
    • Option to enable or disable text selection with the hand tool; cursor changes to I-beam over text for drag selection.
  • Custom snapshot interaction

    • Related APIs/classes: PDFUI::setSnapshotInteractionClass(), UIExtension::Snapshot, UIExtension::SnapshotInteraction
    • Override snapshot interaction behavior.
  • UI component state management

    • Related APIs: Component::keepState(), Component::revokeKeepState(), Component::isStateKept()
    • show() / hide() can be overridden by SDK defaults; use state APIs to preserve user visibility—for example, hide the Redaction apply menu and call keepState().
  • Redaction UI improvements "Mark for Redaction" options (Mark Text & Image, Mark Area, Mark Page) are now separate elements for easier customization.

  • Collaboration addon Built-in client and server features for collaborative PDF workflows.

API changes ​

The second parameter of PDFDoc::sign(signInfo, DigestSignHandler) changed:

  • Previous: DigestSignHandler(signInfo, buffer) where buffer is ArrayBuffer.
  • Current: DigestSignHandler(signInfo, plainContent) where plainContent is Blob.

Demos ​

  • Image diff comparison: Three synchronized viewers with pixel differences in the center instance.
  • Multiple instances: Running multiple PDFViewer instances on one page.

Bug fixes ​

  • Typewriter annotations may not render correctly when text exceeds the allocated area.
  • Screen image annotation render order inconsistent with Foxit PDF Editor.
  • Only the last signature treated as valid when verifying multiple signatures.
  • A signature may not appear when multiple signatures share the same name.
  • Annotation context menu missing in fullscreen.
  • Gray text may appear black when changing PDF background color.
  • Browser crash when signing/verifying large files.
  • Fill color not applied when shape border width is 0.
  • Font name missing from font list after form field property changes.
  • Link actions execute when the cursor is not over the link.
  • Some rotated images in image form fields display incorrectly.
  • page.addAnnot icon ineffective for file attachments.
  • Fonts from setJRFontMap() render incorrectly.
  • [Mobile] Long-press on annotations or pages not working correctly.
  • [iPad] Stylus compatibility fixes on some iPad versions.