Below, please find the release notes for VirtualViewer v5.9.0 and associated minor releases. For questions, please contact us at or by phone at (617) 607-2010.

v5.9.0 - May 26, 2022

General availability release.

Known Issues

  • None

New features


Caption Support for Video and Audio

Custom captions and subtitles can now be displayed for video and audio documents. Caption files must be provided when the media file is loaded from the Content Handler, in WebVTT format (.vtt), in the Content Handler’s getDocumentContent function. One or more caption files can be attached to getDocumentContent’s return object, like so:

  List<com.snowbound.common.transport.MediaCaption> captions = new ArrayList<>();
  captions.add(new MediaCaption("My Caption Label", webVTTByteArray);
  result.put(ContentHandlerResult.KEY_AVAILABLE_MEDIA_CAPTION_FILES, captions);

The VirtualViewer client can then display any of the provided captions if enabled by the user. Other caption attributes can be provided by modifying properties of the MediaCaption object.

All captions must be provided by the Content Handler. VirtualViewer does not currently support auto-generating captions.

Browser support for audio captions

All browsers natively support captions for their video players, but please note that some browsers do not fully support captions for their audio player and do not have a built-in control or button to enable captions. To address this, captions can be turned on by using the Javascript API call virtualViewer.toggleCaptions() or captions can be configured on by default in User Preferences > Media Preferences.

Changeable Font Sizes

VirtualViewer now supports browser font scaling. Each browser has a built in font scaling that either puts a floor on font size or scales all fonts up or down in size. VirtualViewer supports these, but they are not all equal in support. Chrome sets the size, and will be usable in all size options, although ugly in some places. Firefox and Safari have a “minimum font size” that VirtualViewer will respect, but only truly supports up to 16 point font. Sizes above that will effect usability. Chrome has extra small to extra large font options, and all are supported.

Improved Rendering for MSG/EML Documents

The default rendering mode for MSG/EML files has been improved to better handle HTML content including inline images and tables.

The MSG rendering mode can be configured with the web.xml init-param msgRenderPreference. There is a known issue with rendering right-to-left text in the new default “HTML” rendering mode; to allay this issue and restore the previous MSG rendering mode, msgRenderPreference should be set to “RTF” (or “ASCII”, for unformatted text). The new rendering mode is enabled by setting msgRenderPreference to “HTML”.

Minor features

Tesseract OCR Language Configuration

You can now specify the language when performing OCR via the Javascript API. The optional ocrLanguage parameter of virtualViewer.searchText can be set to an ISO three-letter language code for the Tesseract OCR engine. That document will be OCRed with training data for that language, which should improve word and special character recognition. Note: Tesseract OCR training data for each desired language should be placed into the folder specified by web.xml’s tesseractDataPath.

The default OCR language for images can be configured with web.xml’s defaultOcrLanguage.

Customize Media Toolbar Buttons

Administrators can now specify which buttons are enabled/disabled in VirtualViewer while audio/video files are displayed. This was added to better support custom buttons that were intended for use during media playback.

The toolbar-config.js objects have a new variable in them, mediaEnabled. Adding this variable and setting it to true for any button object will make it selectable during media playback. The buttons that are disabled by default are not fully supported for media playback, so enabling the button won’t enable the feature.

Bug Fixes

  • Focusing on an annotation’s text edit box auto selects all the text in the box
  • Made cookies stricter, which should reduce browser warnings
  • Fixed an edge case with exporting a document with both overlay images and document notes