May 8 2015.

Version number: 2015R1 (v2105R1)

Java PDF Components
: jPDFViewer, jPDFNotes, jPDFEditor

API Changes (from previous version)

Feature Highlights:

Read our Press Release

API Cleanup

This release, we removed unnecessary classes and functions, most of them had been deprecated for over 2 years. Here is the list of all removed objects with their replacement in the new API.

Parsing / Rendering / Printing

[JPDF-562] – Image handling framework was redesigned to process images more efficiently in memory / CPU usage
[JPDF-583] – New option to render to a given color space, by default sRGB and to simulate overprint. See PDFPage.getImageCS() and PDFEditorBean.setOutputPreview()
[JPDF-516] – (Regression Bug Introduced in v2014R2) Page range would be ignored when printing with Java 1.6
[JPDF-499] – (Document Specific) Do not show invalid font characters to be consistent with other viewers. Used to show square (.notdef) character.
[JPDF-519] – (Document Specific) Rendering marked content that is not optional when turning layers on and off.
[JPDF-522] – (Document Specific) Fix issue with content visibility for nested layers

User Interface Changes
(Viewer, Notes, Editor)

[PS-2330] – Icon redesign to a more modern design that’s easier on the eyes.

Icon redesign to a more modern design shown for jPDFEditorBean
Icon redesign to a more modern design shown for jPDFEditorBean

[JPDF-504] – Open Up an API to Change Page Display Resolution. See PDFViewerBean.setScreenResolution()
[PS-2404..] – Improved translations, added some missing labels in French, Spanish, German and Italian.
Search dialog improvements:

  • [PS-2612] – Search dialog user interface was improved.
  • [PS-2557] – Upon opening the dialog, the search box will now default to text currently selected in the document, if any.
  • [PS-1551] A problem with slower speed on subsequent searches was also resolved.

[PS-2410] – (Notes, Editor) New option to display Rulers & Grid display with customizable options. See PDFNotesBean.setRulerSettings(), PDFNotesBean.setGridSettings().
(Notes, Editor) Improved thumbnail pane to support new drag gestures, when multi-selecting pages:

  • [PS-2548] Drag out multiple thumbnails to create a new file with the selected pages in a folder on users machine
  • [PS-1541] When dragging multiple thumbnails across 2 Qoppa’s components (within the same JVM), support for modifiers: Shift (or no modifier) +Drag to move pages, CTRL+Drag to copy pages
  • Use ThumbnailPanelNotes.enableEditing() to disable all drag and drop

[PS-1530] – (Notes, Editor) Support for Undo when adding attachments
[JPDF-491] – (Notes, Editor) Comments Pane: New ‘Export to FDF’, ‘Export to XFDF’ options under drop-down menu
(Notes, Editor) Quick Annotation Toolbar
Did  you know about  the new toolbar called AnnotPropertiesToolbar that allows user to quickly edit properties of selected annotations? Well, text properties (to edit properties of text annotations such as text box, callout or typewriter) were moved to a separate toolbar, the TextAnnotPropertiesToolbar  and it is now possible to customize more text properties, including bold and italic properties.

(Notes, Editor)

Rotation Handle
Rubber Stamp with Rotation Handle

[JPDF-564] – Improved Annotations Tools: when adding a new annotation, it is still possible to select / move existing annotations, without having to escape the tool.
[PS-2286] – Edit multiple annotations at once through the properties dialog (previously, this was only possible through the quick property toolbar).
[PS-2585] – Measurement annotations improvements: new option to display area and perimeter measurements on the page.
[PS-2456] – Easily rotate rubber stamps with a rotation handle
[PS-2492] – Change transparency dynamically to existing and custom rubber stamps
[Ps-357] – Support for border style (dash, cloud, etc…) in all shape annotations
[PS-2484] – Changing caps only when editing annotation note or author would not save / take effect
[PS-2498]- Improved curve smoothing on pencil annotations: No longer cutting off edges.
[PS-2549] – New option to turn off smoothing on the pencil. See PencilTool.setEnableCurveFit().
[PS-2172] – Added ability to create points or dots with the pencil annotation. (Previously dots were not recognized)
[PS-47] – Change the z-order of annotations with new Move to Back/ to Front options under context menu
[PS-2493] – Pasting text from Outlook, Word would sometimes create a black image stamp.
[JPDF-270] – (Document Specific) Some text highlight would highlight return characters
[JPDF-481] – New place holders classes for unsupported annotations: RichMedia, ThreeDimensional, Watermark, UnsupportedAnnotation (used to load them as RubberStamp)
[JPDF-535] – Open API to access review cycle in annotations. See Annotation.getCheckMarkStatus() and getReviewHistory().

Importing / Exporting Annotations
(Notes, Editor)

[JPDF-464] – Fixed some issues with export / import as XFDF with lines and measuring annotations
[JPDF-528] – Not exporting fill color for line endings (arrow, square, circle) in line annotations into XFDF
[JPDF-538] – XFDF output was writing incorrect file IDs. Now use the hex representation of the file IDs.
[JPDF-505] – (Document Specific) Export as FDF corrupts document

Interactive Form Fields
(Viewer, Notes, Editor)

[PS-933] – New Date picker for date fields
[PS-2704] – Improvements to the combo field editing: show drop-down when clicking down-arrow
[JPDF-472] – Scroll to visible when editing large interactive text fields
[PS-1751] – Support image scaling in button field
[PS-2566] – Support all image types (not only JPEG) when importing images into a button field with Javascript (
[PS-2038] – Handle both field widget and page rotation for text orientation
[JPDF-502] – Field values are not showing up – XFA mapping using bind.match=”dataRef”
[JPDF-375] – Add support for XFA button JavaScript Submit event
[jPDF-439] – (Document Specific) Checkmarks in checkboxes not rendered when “Wingdings 2” font is not embedded
[JPDF-539] – (Document Specific) Infinite loop on flattenFields

(Notes, Editor)

[PS-2447] – Link Tool Improvements: now highlights all links so they are easily identifiable and editable.
[PS-2535] – Linux – Added Chrome to the list of supported browsers for opening links.


[PS-1242] – (Editor) New toolbar in bookmark pane to move bookmarks in the tree
[PS-2102] – (Editor) Edit the style of multiple bookmarks at once
[PS-751] – (Editor) Set defaults for bookmarks color and style through new BookmarkTool class.These values are set in AnnotationTools.toXMLString() and setFromXML(). This was released in v2014R2 but not announced.
[PS-2099] – (Editor) More options when editing bookmark actions: zoom and option to set the destination visually
[PS-2516] – (Editor) Allow selection of multiple bookmarks at different hierarchy levels
[PS-1242] – (Editor) Cut/ paste bookmarks in the tree (in addition to existing cut and paste)
[JPDF-497] – (Editor) Open API to access editing functionality in bookmark panel. See new BookmarkPanelEditor interface.
[JPDF-497] – (Editor) New class to customize the bookmark context menu see BookmarkContextMenu

Content Editing / Redaction

[ PS-2137] – (Editor) New Redaction option to add text on top of the redacted area when the redaction annotation is burnt. See RedactionTool for new properties for font, font size, auto resize, color, alignment, and repeat text.
[PS-2197] – (Editor) Display compression & DPI for image object properties in Content Editing
[JPDF-530] – (Editor) Display color spaces for path, text and image objects in Content Editing
[PS-2428] – (Editor) No more refresh issues where objects seemed to be disappearing when moved (due to clipping issues on specific documents)
[PS-2408] – (Editor) Font size for text content object would sometimes be incorrect under the properties dialog

Document Assembly
(Notes, Editor)

[JPDF-579] – ! Deleting pages was removing some link actions
[JPDF-244] – (Document Specific) StackOverFlow error when deleting page in a PDF when the object tree is very large / complicated
[JPDF-503] – (Document Specific) Output document is blank when extracting first page
[jPDF-515] (Editor) – When 2 tagged documents are merged, the tag structures are also merged.

Digital Signatures
(Notes, Editor)

[JPDF-458] – Add support for JavaScript Field SignatureInfo for Sign button field
[PS-1678] – Fixed issue when reading EchoSign digital signatures when reading the signer and expiration date info.
[JPDF-498] – (Document Specific) Better handle invalid PKCS#7 object in signature. Document will now load.

New! PDF Comparison

[jPDF-561] PDF comparison is a new optional feature available in jPDFEditor that needs special licensing. You can evaluate in demo version and contact us if you are interested in licensing the feature. Comparing and annotating PDF documents can be useful for professionals in a wide variety of design or publishing disciplines, such as  industrial design, architecture, engineering, electronics, printing, graphics, or biology.
2 new modes are available to compare documents. See PDFEditorBean.startCompare()

  1. Compare Overlay allows to superimpose 2 drawings or documents and immediately identify the differences using color coding
  2. Compare Side by Side allows to open 2 two PDF documents in the same frame next to each other in a synchronized view.
  3. It is easy to switch back and forth between the 2 modes.


[JPDF-306] – Support JPEG 2000 compression when adding images. See ImageParams.COMPRESSION_JPEG2000
[PS-1953] – (Editor) New inherited method PDFDocument.isTaggedPDF()
[JPDF-415] – Added new method usePermissionsPassword (to unlock permissions) to jPDFImages, jPDFPrint, jPDFFields, jPDFSecure
[JPDF-220] – Removed PDFNotesBean.setCreateTempOnSave() to create temp files on Save, this belongs to application logic.
[JPDF-529] – New option to set JavaScript option on open document. See PDFDocument.setJSOpenAction().
[JPDF-507] – New 64bit installer for Mac64 with Java 7 bundled for all libraries
Many more tasks with small improvements and bug fixes (hundreds of them!)


Other Announcement: New HTML5 PDF Viewer Available!

In February 2015, Qoppa Software released a new library jPDFWeb that can convert PDF documents to SVG / HTML5, and was integrated into an HTML5 PDF viewer. Read more about the new HTML5 PDF Viewer here.