> For the complete documentation index, see [llms.txt](https://docs.apryse.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.apryse.com/web/changelogs/version-7/v7-2/v7-2-0.md).

# Version 7.2.0 Changelog (2020-11-19)

World's #1 PDF SDK Library for Web, Mobile, Server, Desktop

## WebViewer Core

### New

* Updated PDF workers to PDFNet 8.0. All new [PDFNet 8.0 APIs](https://sdk.apryse.com/api/web/Core.PDFNet.html) are available.
* Updated Office workers with many new rendering improvements for docx, pptx and xlsx
* Added the ability to add custom appearances to an annotation programmatically with the [addCustomAppearance](https://sdk.apryse.com/api/web/Core.Annotations.Annotation.html#addCustomAppearance__anchor) function. To handle saved XFDF custom appearances there is also [annotManager.setCustomAppearanceHandler](https://sdk.apryse.com/api/web/Core.AnnotationManager.html#setCustomAppearanceHandler__anchor).
* Added a new [NoDelete](https://sdk.apryse.com/api/web/Core.Annotations.Annotation.html) property on annotations which prevents deletion but allows modifications
* Updated [addAnnotations](https://sdk.apryse.com/api/web/Core.AnnotationManager.html#addAnnotations__anchor) and [deleteAnnotations](https://sdk.apryse.com/api/web/Core.AnnotationManager.html#deleteAnnotations__anchor) to be able to take an options object. The previous way of calling these functions is deprecated.
* Updated [addAnnotations](https://sdk.apryse.com/api/web/Core.AnnotationManager.html#addAnnotations__anchor) to take an `autoFocus` option which lets you control whether a newly added FreeText or Callout is automatically focused.
* Added [getImageData](https://sdk.apryse.com/api/web/Core.Annotations.StampAnnotation.html#getImageData__anchor) and [setImageData](https://sdk.apryse.com/api/web/Core.Annotations.StampAnnotation.html#setImageData__anchor) functions on stamp annotations which will automatically handle SVG data URLs. The ImageData property has been deprecated.
* Added the [CoreControls.Math](https://sdk.apryse.com/api/web/Core.Math.html) namespace with utility functions for Point, Quad, Rect and Matrix
* Added [setCustomDrawFunction](https://sdk.apryse.com/api/web/Core.Tools.RubberStampCreateTool.html#setCustomDrawFunction__anchor) for the RubberStampCreateTool which allows you to draw extra content onto the custom stamps
* Added [setFreeformRotationEnabled](https://sdk.apryse.com/api/web/Core.AnnotationManager.html#setFreeformRotationEnabled__anchor) to enable/disable freeform rotation for annotations that support it
* Added [Annotations.StickyAnnotation.SIZE](https://sdk.apryse.com/api/web/Core.Annotations.StickyAnnotation.html#.SIZE__anchor) to control the size of all sticky annotations
* Added support for opening EMF files with WebViewer Server
* Listable, NoResize, NoMove, MaintainAspectRatio and IsClickableOutsideRect properties on annotations are now preserved when exporting XFDF
* Added support for the `buttonGetCaption` function in embedded JavaScript
* Made it easier to load WebViewer on SharePoint with optional aspx pages

### Fixes

* Fixed issue where license key wasn't accessible in some cases in Salesforce
* Fixed issue where deselected event was triggered when deleteAnnotations was called programmatically when non-selected annotations were being deleted
* Fixed issue where link XFDF could be modified when no changes were actually made
* Fixed issue with WebViewer Server backend switch race condition
* Fixed issue where the calculation of a value from nested fields wasn't working correctly
* Fixed issue where deleted or moved pages could have their text cached incorrectly
* Fixed issue where using getFileData when loading with DocumentViewer outside of the UI would throw an error with FreeTexts
* Fixed issue where the text on some XOD documents wasn't able to be selected
* Fixed issue with pasting FreeText and Callout annotations getting stuck focused
* Fixed extra whitespace below DocumentViewer when loading directly
* Fixed issue where the NoPrint flag wasn't working on widgets
* Fixed issue where signatures with a border were not able to be signed
* Fixed issue where loadAsPDF didn't work if the extension option was passed in
* Fixed issue where a viewer optimized file that was edited could still show the unedited thumbnail at some zoom levels
* Fixed issue where the cursor for the marquee zoom tool wasn't visible in IE
* Fixed issue with callout becoming blank when zooming in Firefox
* Fixed issue with inputs that had a date format starting with months
* Fixed issue where insertBlankPages was not able to be called when loading a document with WebViewer Server and forceClientSideInit
* Fixed issue where rectangular measurement annotations weren't able to be resized
* Fixed issue where the line caption color didn't match the stroke color
* Fixed issue where copied FreeText annotation text didn't maintain rich text styles
* Fixed uncaught exception error that could rarely occur in Firefox
* Fixed FreeText underline style being too high for some fonts
* Fixed issue where stamp images from another origin couldn't be selected
* Fixed issue where rectangular measurement annotations are not immediately selectable after creation
* Fixed issue where deleting annotations would trigger a deselected event as well even though they weren't selected
* Fixed issue where adding very small FreeText annotations caused an error
* Fixed flickering when setting the page number to the current page
* Fixed issue where sometimes the viewer optimized thumbnail would be displayed in viewport rendering mode
* Fixed issue where undefined field value would get converted to a string
* Fixed issue where the wrong cache hinting value was used for streaming XOD
* Fixed issue where negative currency values could incorrectly cut off the last character
* Fixed potential timing issue when rendering color separations
* Fixed issue where a very small image inside a XOD file could cause an error

## WebViewer UI

### New

* Added [uiPath](https://sdk.apryse.com/api/web/global.html#WebViewerOptions__anchor) option to WebViewer constructor to allow you to set the exact URL of the WebViewer iframe
* Added [setDisplayedSignaturesFilter](https://sdk.apryse.com/api/web/WebViewerInstance.html#setDisplayedSignaturesFilter__anchor) to filter which saved signatures will be displayed in the UI
* Added a [themeChanged event](https://sdk.apryse.com/api/web/WebViewerInstance.html#event:themeChanged__anchor) that fires when the UI theme is changed
* Added a [panelResized event](https://sdk.apryse.com/api/web/WebViewerInstance.html#event:panelResized__anchor) that fires when panels are resized
* Added [cancelPrint](https://sdk.apryse.com/api/web/WebViewerInstance.html#cancelPrint__anchor) to cancel an ongoing print job
* Added an [onProgress](https://sdk.apryse.com/api/web/WebViewerInstance.html#printInBackground__anchor) option to the `printInBackground` function
* Added `instance.setHighContrastMode` and the `highContrastMode` constructor option to increase the UI color contrast
* Updated the printInBackground API to print all pages by default
* Added the ability to enter fractions in the measurement calibration modal
* Added usability improvements for reader mode
* Updated so that empty text is no longer allowed in the custom stamp modal
* Allow a single toolbar button to appear in the ribbon if all other toolbars are hidden
* Added aria labels and roles where they were missing on list items
* Added the ability to tab through many different elements (bookmarks, style headers, color palette, signature and stamp modals)
* Updated the fullscreen button so that it can be enabled programmatically on iOS devices. It is still disabled by default for iOS.
* Updated search panel so that a new search does not automatically happen when changing checkbox values
* Added a missing label on the custom stamp modal
* Updated to React 17
* Added data-element values for items in dropdowns
* Updated the [loadDocument](https://sdk.apryse.com/api/web/WebViewerInstance.html#loadDocument__anchor) function to accept `xodOptions` as an option
* Updated the mergeDocument function to work even if there is no document loaded in the viewer

### Fixes

* Fixed issue with the calibration modal sending extra annotation changed events
* Fixed issue where there could be a gap to the right of the right panel in some cases
* Fixed issue where pressing apply immediately in the calibration modal changes the scale to NaN
* Fixed issue where certain toolbar settings would not persist when toggling between read only mode
* Fixed issue where adding bookmark element did not show correct page label
* Fixed issue where notes panel was slow in IE when there were many annotations
* Fixed issue where search results could be improperly spaced in some cases
* Fixed issue where the color palette wasn't able to be disabled in the rich text popup
* Fixed duplicate page labels in the thumbnail control when multiselecting
* Fixed issue with selecting and copying text in the notes panel
* Fixed issue where an unposted comment would be removed if another annotation was programmatically added to the document
* Fixed issue where long author names would overlap in the notes panel filter popup
* Fixed issue where long author names would overflow inside a note
* Fixed issue where annotation popup wasn't always closed when an annotation was deleted
* Fixed issue where signature modal would accept typed signatures consisting of only whitespace
* Fixed issue where some strings in the watermark modal weren't translated
* Fixed issue where note button wasn't highlighted when the notes panel was open
* Fixed issue where the create stamp popup would close when clicking on the modal
* Fixed issue where page navigation with the arrow keys wasn't working in single page mode
* Fixed issue with loading config files when origins are on multiple lines in some cases
* Fixed issue where the serverUrl option was not including credentials
* Fixed issue with page labels not being able to be entered in the page navigation overlay
* Fixed issues with scrolling to the selected annotation in the notes panel
* Fixed issue when disabling the rich text popup
* Fixed issue with setActiveHeaderGroup not working correctly


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.apryse.com/web/changelogs/version-7/v7-2/v7-2-0.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
