var pdfjsLib = window['pdfjs-dist/build/pdf']; function renderPage() { var el_title = document.getElementById('pdfprogress'); el_title.innerHTML = 'Идет подготовка страницы ...'; pageRendering = true; // Using promise to fetch the page pdfDoc.getPage(pageNum).then(function(page) { var canvas = document.getElementById('the-canvas'); var context = canvas.getContext('2d'); //var viewport = page.getViewport({scale: scale}); var viewport = page.getViewport({scale: 1}); canvas.height = viewport.height; canvas.width = viewport.width; // Render PDF page into canvas context var renderContext = { canvasContext: context, viewport: viewport }; var renderTask = page.render(renderContext); // Wait for rendering to finish renderTask.promise.then(function() { pageRendering = false; if (pageNumPending !== null) { // New page rendering is pending renderPage(pageNumPending); pageNumPending = null; } document.getElementById('zoompdf').innerHTML = scale + 'x'; el_title.innerHTML = 'Приятного чтения ↓'; }); }); } function prevclick(){ prevurl = prevlink + '/'+ scale; location.href = prevurl; return; } function nextclick(){ nexturl = nextlink + '/'+ scale; location.href = nexturl; return; } function pdfzoomin(){ scale += 0.25; setzoom(scale); renderPage(); } function pdfzoomout(){ scale -= 0.25; setzoom(scale); renderPage(); } var cnt = 100; function resize_plus(){ var div = document.getElementById("the-canvas"); cnt += 2; div.style.width = cnt+"%"; } function resize_minus(){ var div = document.getElementById("the-canvas"); cnt -= 2; div.style.width = cnt+"%"; } function getzoom(){ var name = 'pdfscale'; var results = document.cookie.match ( '(^|;) ?' + name + '=([^;]*)(;|$)' ); if ( results ){ return parseFloat(unescape(results[2])); } else { return null; } } function setzoom( cvalue, exdays = 30 ) { var cname = 'pdfscale'; var d = new Date(); d.setTime(d.getTime() + (exdays*24*60*60*1000)); var expires = "expires="+ d.toUTCString(); document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/"; } function startpdfviewer(){ czoom = getzoom(); if (czoom != null) scale = czoom; pdfjsLib.getDocument(url).promise.then(function(pdfDoc_) { pdfDoc = pdfDoc_; renderPage(); }); }