Skip to content

Instantly share code, notes, and snippets.

@fjavier
Created June 27, 2018 15:55
Show Gist options
  • Save fjavier/af076f78cb0e7ce084cf9b074e486f25 to your computer and use it in GitHub Desktop.
Save fjavier/af076f78cb0e7ce084cf9b074e486f25 to your computer and use it in GitHub Desktop.
Mostrar PDF en HTML con uso de la libreria PDF.js
<!DOCTYPE html>
<html>
<head>
<title>Prueba impresion</title>
<!-- DESCARGAR LA LIBRERIA E UTILIZARLA -->
<script type="text/javascript" src="./build/pdf.js"></script>
<script type="text/javascript" src="./build/pdf.worker.js"></script>
</head>
<body>
<h1>Ejemplo PDF.js</h1>
<h2>Mostrar PDF en HTML</h2>
<input type="button" name="imprimir" onclick="imprimir()" value="imprimir">
<canvas id="canva"></canvas>
<script type="text/javascript">
function imprimir() {
var valueToPrint = "JVBERi0xLjUKJeLjz9MKMyAwIG9iago8PC9GaWx0ZXIvRmxhdGVEZWNvZGUvTGVuZ3RoIDQxOT4+c3RyZWFtCnicpZJNb9swDIbv+hU8doe0khJ/9EhbrKtAFh1JCTAPO61YgQE9bGf9+MlugrXF1g2YD7Kgl6T4PqIEBRsFEmqly/rlSXwXXRLbGqqmhvQgKImD0LBfTpc4CZfo9CRu7hQoCemruPqQvi2xv0LWYq+SqlZfN2/y5Kr+eBRXutJabaSUtxstVbvpsiFHA/aWPTiMMFqPMXfs0c+YHUfoORgKNpWtIcDhiNA7DJhrqWRpsamWcqccrTtZhBEHg448guOJZog4duwwj5TQndeJQ2JPMeuSKq+lzEov1iQ8/sbep8/l/7Diedd43bxvXDaL8ebZuAkvnRuaMCQcyZf2YAjo0WA2NljMQzhODJGdNRgsX1RYVSAHGAJ/5Kzbna7lbtsung45sl9phMKCoMNwOFIodQq5gimX6yiif7VLOOMLJtv6/5lUfxkGJRcm7ZnJn5H0pe2Zs2HHobzbWybPMpxl2C6TMuIKRelK3pZ7yufyniPBXQHY29gznKiMXOEyQ07HYOPI+Z7jRAb3lO+xs2ntpVTEmz63FzC79p/A/AQt6dOCCmVuZHN0cmVhbQplbmRvYmoKMSAwIG9iago8PC9UYWJzL1MvR3JvdXA8PC9TL1RyYW5zcGFyZW5jeS9UeXBlL0dyb3VwL0NTL0RldmljZVJHQj4+L0NvbnRlbnRzIDMgMCBSL1R5cGUvUGFnZS9SZXNvdXJjZXM8PC9Db2xvclNwYWNlPDwvQ1MvRGV2aWNlUkdCPj4vUHJvY1NldCBbL1BERiAvVGV4dCAvSW1hZ2VCIC9JbWFnZUMgL0ltYWdlSV0vRm9udDw8L0YxIDIgMCBSPj4+Pi9QYXJlbnQgNCAwIFIvUm90YXRlIDkwL01lZGlhQm94WzAgMCA2MTIgNzkyXT4+CmVuZG9iago1IDAgb2JqClsxIDAgUi9YWVogMCA2MjIgMF0KZW5kb2JqCjIgMCBvYmoKPDwvU3VidHlwZS9UeXBlMS9UeXBlL0ZvbnQvQmFzZUZvbnQvSGVsdmV0aWNhL0VuY29kaW5nL1dpbkFuc2lFbmNvZGluZz4+CmVuZG9iago0IDAgb2JqCjw8L0tpZHNbMSAwIFJdL1R5cGUvUGFnZXMvQ291bnQgMS9JVFhUKDIuMS43KT4+CmVuZG9iago2IDAgb2JqCjw8L05hbWVzWyhKUl9QQUdFX0FOQ0hPUl8wXzEpIDUgMCBSXT4+CmVuZG9iago3IDAgb2JqCjw8L0Rlc3RzIDYgMCBSPj4KZW5kb2JqCjggMCBvYmoKPDwvTmFtZXMgNyAwIFIvVHlwZS9DYXRhbG9nL1BhZ2VzIDQgMCBSL1ZpZXdlclByZWZlcmVuY2VzPDwvUHJpbnRTY2FsaW5nL0FwcERlZmF1bHQ+Pj4+CmVuZG9iago5IDAgb2JqCjw8L01vZERhdGUoRDoyMDE4MDYyMjExMjQyMi0wNicwMCcpL0NyZWF0b3IoSmFzcGVyUmVwb3J0cyBMaWJyYXJ5IHZlcnNpb24gNi4zLjApL0NyZWF0aW9uRGF0ZShEOjIwMTgwNjIyMTEyNDIyLTA2JzAwJykvUHJvZHVjZXIoaVRleHQgMi4xLjcgYnkgMVQzWFQpPj4KZW5kb2JqCnhyZWYKMCAxMAowMDAwMDAwMDAwIDY1NTM1IGYgCjAwMDAwMDA1MDEgMDAwMDAgbiAKMDAwMDAwMDc4NyAwMDAwMCBuIAowMDAwMDAwMDE1IDAwMDAwIG4gCjAwMDAwMDA4NzUgMDAwMDAgbiAKMDAwMDAwMDc1MiAwMDAwMCBuIAowMDAwMDAwOTM4IDAwMDAwIG4gCjAwMDAwMDA5OTIgMDAwMDAgbiAKMDAwMDAwMTAyNCAwMDAwMCBuIAowMDAwMDAxMTI3IDAwMDAwIG4gCnRyYWlsZXIKPDwvSW5mbyA5IDAgUi9JRCBbPGRjNzM0ZDIxZGM4MzE2YjI0Yjc0Y2UzNzg0Y2U3OGE4PjxjNzk5ODBiZTcwOThkMTg0ZGZkNTdmM2E1MTVlZGU2NT5dL1Jvb3QgOCAwIFIvU2l6ZSAxMD4+CnN0YXJ0eHJlZgoxMjk0CiUlRU9GCg\u003d\u003d";
var byteCharacters = window.atob(valueToPrint);
PDFJS.workersrc= "./build/pdf.worker.js";
// Asynchronous download PDF
var loadingTask = PDFJS.getDocument({data:byteCharacters});
loadingTask.promise.then(function (pdf) {
console.log("PDF loaded");
var pageNumber = 1;
pdf.getPage(pageNumber).then(function (page) {
console.log('Page Loaded');
var scale = 1.5;
var viewPort = page.getViewport(scale);
var canvas = document.getElementById('canva');
var context = canvas.getContext('2d');
canvas.height = viewPort.height;
canvas.width = viewPort.width;
var renderContext = {
canvasContext : context,
viewport : viewPort
}
var renderTask = page.render(renderContext);
renderTask.then(function() {
console.log("Page render");
})
})
});
}
</script>
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment