Methods
-
getInstance( [element])
-
Gets an already existing instance of WebViewer. If only one instance of WebViewer exists on the page, then 'element' is not required, and the function will return the instance of WebViewer. If more than one instance of WebViewer exists, you must pass in the DOM element containing the instance of WebViewer you want to retrieve. This function can be imported directly as a module as well.
Parameters:
Name Type Argument Description elementHTMLElement <optional>
The DOM element containing the instance of WebViewer you want to retrieve Returns:
Returns an instance of WebViewer. Returns null if no instances are available.- Type
- WebViewerInstance
Example
import { getInstance } from '@pdftron/webviewer' // After WebViewer has already been constructed const instance = getInstance(); -
WebViewer(options, viewerElement)
-
A function that creates an instance of WebViewer, and embeds it on the HTML page
Parameters:
Name Type Description optionsWebViewerOptions viewerElementHTMLElement Properties:
Name Type Description WorkerTypesWorkerTypes The types of workers that can be preloaded in WebViewer BackendTypesBackendTypes The types of backend workers. Returns:
A promise resolved with WebViewer instance.- Type
- Promise.<WebViewerInstance>
Example
WebViewer({ licenseKey: 'Insert commercial license key here after purchase' }, document.getElementById('viewer')) .then(function(instance) { const documentViewer = instance.Core.documentViewer; const annotationManager = instance.Core.annotationManager; // call methods from instance, documentViewer and annotationManager as needed // you can also access major namespaces from the instances as follows: // const Tools = instance.Core.Tools; // const Annotations = instance.Core.Annotations; });
Type Definitions
-
BackendTypes
-
The types of backend workers. Pass "asm" to force the use of the ASM.js worker, "ems" to force the use of the WebAssembly worker (or ASM.js on non-wasm browsers) or "wasm-threads" to use threaded WebAssembly.
Properties:
Name Type Description ASMstring 'asm' Use of ASM.js worker. WASMstring 'ems' Use of the WebAssembly worker (or ASM.js on non-wasm browsers). THREADED_WASMstring 'wasm-threads' Use of threaded WebAssembly worker. -
WebViewerOptions
-
Type:
- Object
Properties:
Name Type Argument Default Description pathstring Path to the WebViewer lib folder annotationUserstring <optional>
Guest Name of the user for annotations configstring <optional>
URL path to a custom JavaScript for customizations cssstring <optional>
URL path to a custom CSS file for customizations disabledElementsArray.<string> <optional>
List of data-elements to be disabled in UI accessibleModeboolean <optional>
false Enable accessibility features. E.g tab page selection and page text in the DOM enableAnnotationsboolean <optional>
true Enable annotations feature enableFilePickerboolean <optional>
false Enable file picker feature enableMeasurementboolean <optional>
false Enable measurement tools enableRedactionboolean <optional>
false Enable redaction tool disableVirtualDisplayModeboolean <optional>
false Disable virtual display mode for pages. The virtual display mode allows documents with many pages to be loaded efficiently in continuous scrolling mode. If disabled then single page mode will be used for documents with many pages. extensionstring <optional>
Extension of the document to be loaded filenamestring <optional>
The name of the file that will be used when downloading the document. The extension in the filename will be used as the document type to be loaded (e.g. myfile.docx will treat the file as docx) if no extension option is passed. initialDocstring <optional>
URL path to a document to load on startup isAdminUserboolean <optional>
false Set user permission to admin isReadOnlyboolean <optional>
false Set user permission to read-only licenseKeystring <optional>
License key for viewing documents. If not set then WebViewer will be in demo mode. uistring <optional>
default Type of UI to be used. Accepts `default`|`beta`. disableLogsboolean <optional>
false Disables console logs coming from WebViewer, including the version and build numbers disableFlattenedAnnotationsboolean <optional>
false Disables the flattened rendering of existing annotations in documents. uiPathstring <optional>
Path to UI folder to use a different UI or customized UI. Default is'./ui/index.html'. selectAnnotationOnCreationboolean <optional>
false If true then newly added annotations will be selected automatically highContrastModeboolean <optional>
false If true then the UI will use high constrast colours to help with accessibility. -
WorkerTypes
-
Used to preload workers before a document has been loaded.
Properties:
Name Type Description PDFstring To preload the PDF worker object OFFICEstring To preload the Office worker object LEGACY_OFFICEstring To preload the Legacy Office worker object CONTENT_EDITstring To preload the content edit worker object ALLstring To preload all the workers objects Example
WebViewer({ preloadWorker: `${WebViewer.WorkerTypes.PDF},${WebViewer.WorkerTypes.OFFICE}` }) .then(function(instance) { ... }); -
zoomStepFactor
-
Set the zoom step size for zooming in/out.
Type:
- Object
Properties:
Name Type Description zoomStepFactor.stepnumber zoom step size in %, should always be positive zoomStepFactor.startZoomnumber zoom level that the zoom step size start to apply, should always be positive. Example
WebViewer(...) .then(function(instance) { const documentViewer = instance.Core.documentViewer; // you must have a document loaded when calling this api documentViewer.addEventListener('documentLoaded', function() { instance.UI.setZoomStepFactors([ { step: 50, startZoom: 0 } ]); }); });