This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
window.addEventListener('load', function () { | |
isPageRendering= false; | |
pageRenderingQueue = null; | |
canvas = document.getElementById('pdf_canvas'); | |
canvasContext = canvas.getContext('2d'); | |
initEvents(); Add events | |
initPDFRenderer(); // render first page | |
}); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function initPDFRenderer() { | |
const url = 'test1.pdf'; // pdf sorce | |
let option = { url}; | |
pdfjsLib.getDocument(option) | |
.promise | |
.then( pdfData => { | |
totalPages = pdfData.numPages; // total number of pages | |
let pagesCounter= document.getElementById('total_page_num'); // update total pages text | |
pagesCounter.textContent = totalPages; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function initEvents() { | |
let prevPageBtn = document.getElementById('prev_page'); | |
let nextPageBtn = document.getElementById('next_page'); | |
let goToPage = document.getElementById('go_to_page'); | |
prevPageBtn.addEventListener('click', renderPreviousPage); | |
nextPageBtn.addEventListener('click',renderNextPage); | |
goToPage.addEventListener('click', goToPageNum); | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function renderPage(pageNumToRender = 1) { | |
isPageRendering = true; | |
document.getElementById('current_page_num').textContent = pageNumToRender; | |
// use getPage method | |
.getPage(pageNumToRender) | |
.then( page => { | |
const viewport = page.getViewport({scale :1}); | |
canvas.height = viewport.height; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function renderPageQueue(pageNum) { | |
if(pageRenderingQueue != null) { | |
pageRenderingQueue = pageNum; | |
} else { | |
renderPage(pageNum); | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function renderNextPage(ev) { | |
if(currentPageNum >= totalPages) { | |
alert("This is the last page"); | |
return ; | |
} | |
currentPageNum++; | |
renderPageQueue(currentPageNum); | |
} | |
function renderPreviousPage(ev) { | |
if(currentPageNum<=1) { |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function goToPageNum(ev) { | |
let numberInput = document.getElementById('page_num'); | |
let pageNumber = parseInt(numberInput.value); | |
if(pageNumber) { | |
if(pageNumber <= totalPages && pageNumber >= 1){ | |
currentPageNum = pageNumber; | |
numberInput.value =""; | |
renderPageQueue(pageNumber); | |
return ; | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!DOCTYPE html> | |
<html lang="en" dir="ltr"> | |
<head> | |
<meta charset="utf-8"> | |
<title></title> | |
<style> | |
canvas { | |
width: 500px; | |
height: 700px; | |
border: 3px solid black; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var array = [1,2,3,4,4,5]; | |
var isGreaterThanZero = array.every(function(item, index, array) { | |
array.push(0); | |
return item > 0; | |
}); | |
console.log(isGreaterThanZero); // true |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var array = [1,2,0,0]; | |
var isGreaterThanZero = array.every(function(item, index, array) { | |
array.pop(); | |
return item > 0; | |
}); | |
console.log(isGreaterThanZero); // true |