Some test text!
Web / Guides / WVS API Wrapper
We offer a script file in the tools section of our WebViewer Server download package called WVSApiWrapper.js
, this script allows the use of WebViewer Server using the extended API. This script currently provides functionality for PDF fetching and thumbnail fetching with future features planned.
This wrapper can be used with your WebViewer Server without the need for WebViewer. We have written it as a single Javascript file with no dependencies to allow ease of deployment.
<script src="./WVSApiWrapper.js"></script>
<script>
var wvs = WebViewerServer({
serverUrl: "http://<HOST_IP_ADDRESS or localhost>:8090"
});
wvs.getPDF({ uri: 'http://<HOST_IP_ADDRESS or localhost>:8090/myfile.pdf' }).then(function (pdfLink) {
window.open(pdfLink, "theFrame");
});
</script>
<html>
<iframe name="theFrame" width="1000" height="1000" ></iframe>
</html>
Constructs a server object to communicate with WebViewer Server.
An object containing options for the server.
The address to your WebViewer Server. Required.
const server = WebViewerServer({
serverUrl: http://pdftron.com/myserver
});
The server object containing all callable functions for the Extended API wrapper.
Generates a PDF on the server from the passed URL. Returns a link to the completed PDF.
An object containing options for the getPdfFromUrl call. The following are possible arguments:
The uri of the document to generate a PDF from. Overwritten if the file
argument is passed.
A file object for a document to generate a PDF from. Overwrites the uri
argument if passed.
If set to true, conversions will be done according to the PDFA format. This feature is only available when using the uri
argument.
If set to true, the file returned will be linearized.
Can be set to XFDF that should be merged with the file. Expects UTF-8 encoded XFDF data as a string.
The custom headers will be used when the server fetches the document requested through the uri argument. They should be passed as a JSON object.
options: {
customHeaders: {Cookie: 'test=123', MyHeader: '123'}
}
The format of the document passed. Only required if the uri
passed does not have the correct document extension.
The cacheKey to lock the cache to for this document. If not passed, caching is handled through normal mechanisms.
A callback function that returns current progress on the job.
function onprog(data) {
console.log(data);
// will print current progress
// { type: 'fetch' or 'upload', loaded: current progress, total: 'total'}
}
server.getPDF({
uri: 'http://pdftron.com/sample.docx,
extension: 'docx',
onProgress: onprog,
}).then(uri => {
console.log(uri);
// do something with file link
}).then(e => {
console.log(e);
});
// now we do the same, except with a file directly on the local system
// get file from input element
const selectedFile = document.getElementById('input').files[0];
server.getPDF({
file: selectedFile
onProgress: onprog,
}).then(uri => {
console.log(uri);
// do something with file link
}).catch(e => {
console.log(e);
});
A promise which resolves to the completed URL for the PDF or rejects with an error.
Generates a thumb (image render) of a PDF on the server from the passed URL or file object.
An object containing options for the getPdfFromUrl call. The following are possible arguments:
The uri of the document to generate a PDF from. Overwritten if the file
argument is passed.
A file object for a document to generate a PDF from. Overwrites the uri
argument if passed.
A callback function that returns current progress on the job.
The custom headers will be used when the server fetches the document requested through the uri argument. They should be passed as a JSON object.
options: {
customHeaders: {Cookie: 'test=123', MyHeader: '123'}
}
The cacheKey to lock the cache to for this document. If not passed, caching is handled through normal mechanisms.
The desired size of the rendered image. Allows for large
(1280p) medium
(640p) small
320p. Defaults to large
.
The desired page to render of the PDF into an image. Page numbers are indexed starting at 0. Defaults to 0
.
function onprog(data) {
console.log(data);
// will print current progress
// { type: 'fetch' or 'upload', loaded: current progress, total: 'total'}
}
server.getThumb({
uri: 'http://pdftron.com/sample.docx,
extension: 'docx',
onProgress: onprog,
}).then(uri => {
console.log(uri);
// do something with file link
}).then(e => {
console.log(e);
});
// now we do the same, except with a file directly on the local system
// get file from input element
const selectedFile = document.getElementById('input').files[0];
server.getThumb({
file: selectedFile
onProgress: onprog,
}).then(function(uri) {
console.log(uri);
// do something with file link
}).catch(function(e) {
console.log(e);
});
A promise which resolves to the completed URL for the image or rejects with an error.
Trial setup questions? Ask experts on Discord
Need other help? Contact Support
Pricing or product questions? Contact Sales