March 13 2012. This release contains many API and user interface improvements and adds a new watermark interface, support for Submit and Reset buttons in interactive forms and the ability to invert colors.

Version numbers: jPDFNotes v4.70, jPDFViewer v6.20.

New Features:

Watermark Interface 107, 364: New convenience setWatermark method that will set that watermark on documents when they are loaded. Look for setWatermark method and new interface com.qoppa.pdf.IWatermark.

Submit Forms: Support for Submit and Reset button actions in interactive PDF forms

Invert Colors Mode 1413: It is now possible to invert colors when rendering PDF documents. For typical documents, the display will change from “Black on White” to “White on Black”. New method setInvertColorsMode in LoupeTool and PDFPageView.

License Keys Improvements 2054 [All PDF library products]: We’ve added convenient ways for our customers to request, validate and set license keys on Qoppa’s library jar files.

Thumbnail On Demand 1558: Thumbnail image producing threads are now created on demand. Threads are not created when the thumbnail pane is hidden.

Tabbing Through Fields 2239: When tabbing to navigate through fields in an interactive form, if the field is a single line text field, the contents of the field is now selected. This will help when editing data within form fields.

Easy Open Link 1792 When the text selected on a page corresponds to a valid web or email url, the mouse context menu will show an option to “Open Link”. This was already available in jPDFNotes, it is now available in jPDFViewer.


Form Field Editing Right-Click Menu 638: When editing a form field, it is now possible to right click in the field to show an edit menu in order to cut, copy, or paste text (control-click for one-button mice).

Improved Search Results Display 1538: Search results will now be centered within the window to make it easier to identify them in their surrounding content.

Bookmarks and Deletion / Insertion of Pages
1847: Better handling of bookmarks and go to page actions which should improve bookmarks retention when inserting and deleting pages.

Side Panels Visibility
1878: Added more flexibility to side panels configuration (Attachments, Thumbnails, Bookmarks, Signatures) in the left split pane. Added new interface PDFPanel to handle visibility and selection of panels. Deprecated methods showTab* in PDFViewerBean. Replaced with get*Panel().setPaneVisible() from the bean. Read our KB entry for more details.

Document Properties XMP Meta Data 111:When creating new documents or updating existing document properties, the library also creates or updates the XMP metadata so both document’s properties dictionary and XMP meta data are kept in synch. If missing, the XMP metadata’s tree is created. If the tree exists but the specific attributes for the updated properties are missing, the attributes are created.

Form Field Alignment 119: Cursor alignment and text highlight was incorrect when editing centered or right justified interactive form fields.

Annotation Modified Date 1292: The PDF format only has a modified date, there is no creation date for annotations.

Deprecated current set/get CreationDate methods. Added methods to set / get ModifiedDate -The modified date is now updated every time an annotation gets modified through the API or through the GUI.

Annotation Selection Model 1296: New IAnnotationManager class which managers the selection cycle for annotation component.. Deprecated methods AnnotationComponent is/set Selected.

Toolbar Separators 1553: Added get methods for the toolbar separators in AnnotToolbar, PDFToolbar, SelectToolbar, and SelectToolbarNotesEdit to allow customers to remove toolbar separators or modify them.

ThumbnailContextMenu 1790: New class ThumbnailContextMenu. As part of giving access to context menus to make customization possible, we didn’t open access to the thumbnail context menu in the last release (it was on oversight). To get the thumbnail context menu call notesBean.getThumbnailPanelNotes().getThumbnailContextMenu().

Creation of Annotations 1802: New IAnnotationFactory class. AnnotationFactory class is no longer in the API. IAnnotationFactory is accessible from notesBean.getDocument().getAnnotationFactory().

Applet Improvements:

  • Look & Feel 1781: System look and feel is set on all our applets samples.
  • Applet Dialogs Centering 1326: When running in an applet with the browser window not maximized, annotation’s properties dialog would open at the top left corner instead of being centered on the applet.

Import / Export Radio Buttons 1856: Radio Buttons can have an array of export values. We now convert the stored value to the export value when we export to another format (fdf, xfdf, etc). We also convert it back on import.


Save Form Warning 805: Fixed issue where documents with interactive form fields were not marked as modified after fields were edited. No warning was given to save the document upon closing.

Signing Dialog Display 1327: In jPDFNotes, when signing, the dialog where user chooses the digital certificate seemed “cut” at the bottom.

Better Error Handling in Forms Widgets 1350: Handle gracefully any exception when parsing appearance streams for form widgets and annotations.

Deleting Annotation Disabled. 1963: When disabling annotation deletion through AnnotationTools.setDeleteEnabled(), the trash button in the comments pane is now disabled as well as the cut menu in the annotation mouse context menu.

Text Position. 1990 [All PDF library products]: Fixed a bug with text positioning for text field with specific margin and border properties.

Scrambled Image
2140: Fixed issue with image decoding for specific images with CCITFaxDecode compression.

Text Search on Linux 837: Fixed text search dialog user interface issues: search text field too narrow and some international labels cut.

Obscured Password Field 661: Fixed interactive password field to obscure text when typing password in (passwords field are uncommon in forms).

Export to FDF 1872 [jPDFNotes, jPDFViewer]: Fixed a null pointer exception when exporting check boxes with a null value to an FDF file.

XDP Import 1928: Fix issue with importing an XDP file into an XFA form PDF when multiple fields shared the same name.

Infinite Loop 2118: Fixed infinite loop when saving document while the drawing tool for the ink annotation was active.

Export Annots 2195: Fixed null pointer exception when calling method exportAnnotsAsFDF when using a relative file name as parameter.

Dynamic Font Sizing Minor Fix 1875 : When landing on a field and then exiting without making any changes was resizing the font of the field.

Invalid xref position 1706: Fixed issue when opening some PDF documents “Invalid xref position”.