mirror of
https://github.com/zhigang1992/DefinitelyTyped.git
synced 2026-05-28 16:45:10 +08:00
46 lines
942 B
TypeScript
46 lines
942 B
TypeScript
|
|
|
|
//
|
|
// Fetch the PDF document from the URL using promises
|
|
//
|
|
var pdfDoc: PDFDocumentProxy;
|
|
var pageNum: number;
|
|
|
|
PDFJS.getDocument('helloworld.pdf').then(function (pdf) {
|
|
// Using promise to fetch the page
|
|
pdfDoc = pdf;
|
|
pageNum = 1;
|
|
renderPage(pageNum);
|
|
});
|
|
|
|
function renderPage(pageNum: number) {
|
|
pdfDoc.getPage(pageNum).then(function (page) {
|
|
var scale = 1.5;
|
|
var viewport = page.getViewport(scale);
|
|
|
|
//
|
|
// Prepare canvas using PDF page dimensions
|
|
//
|
|
var canvas = <HTMLCanvasElement>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);
|
|
});
|
|
}
|
|
|
|
function goNext() {
|
|
if (pdfDoc && pageNum < pdfDoc.numPages) {
|
|
++pageNum;
|
|
renderPage(pageNum);
|
|
}
|
|
}
|