PDFJS
PDFJS print
by vikikamath
HTML
<script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.2.0/require.js"></script>
<button id='print'>
Print
</button>
<!-- <canvas id='the-canvas'></canvas> -->
<div id='container'>
<div id='viewer'>
</div>
</div>
<img id='snapshot'/>
CSS
#print {
z-index: 2;
position: fixed;
float: left;
margin: 20;
}
.textLayer {
display:none;
}
JavaScript
function pdfPrint() {
var canvases = document.getElementsByTagName('canvas');
console.log(canvases);
button.style.display = 'none';
[].forEach.call(canvases, function(canvas) {
var img = document.createElement('img');
img.src = canvas.toDataURL();
img.style.display = 'inline';
canvas.style.display = 'none';
})
window.print();
var imgs = document.getElementsByTagName('img');
[].forEach.call(imgs, function(img, i) {
img.style.display = 'none';
canvases[i].style.display = 'block';
})
button.style.display = 'inline';
}
var button = document.getElementById('print');
button.onclick = pdfPrint;
requirejs.config({
paths: {
'pdfjs-dist/build/pdf': 'https://rawgit.com/mozilla/pdfjs-dist/master/build/pdf',
'pdfjs-dist/build/pdf.worker': 'https://rawgit.com/mozilla/pdfjs-dist/master/build/pdf.worker',
'pdfjs-dist/web/pdf.components': 'https://rawgit.com/mozilla/pdfjs-dist/master/web/pdf_viewer'
}
});
require(['pdfjs-dist/build/pdf', 'pdfjs-dist/build/pdf.worker', 'pdfjs-dist/web/pdf.components'], function(pdfjs) {
console.log(pdfjs)
// In production, change this to point to the built `pdf.worker.js` file.
//global.PDFJS.workerSrc = '../../src/worker_loader.js';
// Fetch the PDF document from the URL using promises.
/* pdfjs.getDocument('https://rawgit.com/mozilla/pdf.js/master/test/pdfs/tracemonkey.pdf').then(function(pdf) {
// Fetch the page.
pdf.getPage(1).then(function(page) {
var scale = 1.5;
var viewport = page.getViewport(scale);
// Prepare canvas using PDF page dimensions.
var canvas = document.getElementById('the-canvas');
var context = canvas.getContext('2d');
canvas.height = viewport.height;
canvas.width = viewport.width;
// Render PDF page into canvas context.
var renderContext = {
canvasContext: context,
viewport: viewport
};
page.render(renderContext);
});
});*/
var pdfViewer = new...