Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
// import * as pdfjsViewer from 'pdfjs-dist/lib/web/pdf_viewer';
// import * as pdfjsLinkService from 'pdfjs-dist/lib/web/pdf_link_service';
// import * as pdfjsFindController from 'pdfjs-dist/lib/web/pdf_find_controller';
const pdfjsLib = require('pdfjs-dist/build/pdf');
const pdfjsViewer = require('pdfjs-dist/lib/web/pdf_viewer');
const pdfjsLinkService = require('pdfjs-dist/lib/web/pdf_link_service');
const pdfjsFindController = require('pdfjs-dist/lib/web/pdf_find_controller');
const container = document.getElementById('viewerContainer');
if (! container) {
throw new Error("No container");
}
const pdfLinkService = new pdfjsLinkService.PDFLinkService();
const pdfFindController = new pdfjsFindController.PDFFindController({
linkService: pdfLinkService,
});
//
// FIXME: I think I ahve to specify a custom RenderingQueue here because right now it renders ALL the pages...
// and I need to limit this to say += 10 pages..
// FIXME: how do we change the zoom
// FIXME: how do we render the thumbnails
// FIXME: the textarea overlay isn't setup to work
const pdfElement = new pdfjsViewer.PDFViewer({
container: container,
pdfRender = pdfPage.render({
canvasContext: canvasElt.getContext('2d'),
viewport: viewport
});
annotationLayerElt.style.visibility = 'hidden';
clearAnnotations();
var viewer = {
scrollPageIntoView: function(params) {
emitEvent('link-clicked', params.pageNumber)
},
};
var linkService = new PDFLinkService();
linkService.setDocument(pdfDoc);
linkService.setViewer(viewer);
pdfPage.getAnnotations({ intent: 'display' })
.then(function(annotations) {
PDFJS.AnnotationLayer.render({
viewport: viewport.clone({ dontFlip: true }),
div: annotationLayerElt,
annotations: annotations,
page: pdfPage,
linkService: linkService,
renderInteractiveForms: false
});
});