<!doctype html> <head> <!-- CSS CODE --> <style> #pdf_renderer { display: block; margin: 0 auto; } </style> </head> <body> <div id="my_pdf_viewer"> <div id="canvas_container"> <canvas id="pdf_renderer"></canvas> </div> <center> <div id="navigation_controls"> <button id="go_previous">Previous</button> <input id="current_page" value="1" type="number"/> <button id="go_next">Next</button> </div> <a href="Resume_14.docx.pdf" download="Resume_14.docx.pdf"> Download PDF</a> </center> </div> <script> var myState = { pdf: null, currentPage: 1, zoom: 1 } pdfjsLib.getDocument('./Resume_14.docx.pdf').then((pdf) => { myState.pdf = pdf; render(); }); function render() { myState.pdf.getPage(myState.currentPage).then((page) => { var canvas = document.getElementById("pdf_renderer"); var ctx = canvas.getContext('2d'); var viewport = page.getViewport(myState.zoom); canvas.width = viewport.width; canvas.height = viewport.height; page.render({ canvasContext: ctx, viewport: viewport }); }); } document.getElementById('go_previous').addEventListener('click', (e) => { if(myState.pdf == null || myState.currentPage == 1) return; myState.currentPage -= 1; document.getElementById("current_page").value = myState.currentPage; render(); }); document.getElementById('go_next').addEventListener('click', (e) => { if(myState.pdf == null || myState.currentPage > myState.pdf._pdfInfo.numPages) return; myState.currentPage += 1; document.getElementById("current_page").value = myState.currentPage; render(); }); document.getElementById('current_page').addEventListener('keypress', (e) => { if(myState.pdf == null) return; // Get key code var code = (e.keyCode ? e.keyCode : e.which); // If key code matches that of the Enter key if(code == 13) { var desiredPage = document.getElementById('current_page').valueAsNumber; if(desiredPage >= 1 && desiredPage <= myState.pdf._pdfInfo.numPages) { myState.currentPage = desiredPage; document.getElementById("current_page").value = desiredPage; render(); } } }); </script> </body> </html> HTML, XML