Remove pdf.js deprecation warnings

1. `page.getViewpoint()` now takes in JSON instead of an integer.
2. Promises are returned from loading and rendering tasks.

See https://mozilla.github.io/pdf.js/examples/index.html for more
details.
This commit is contained in:
Stan Hu 2019-07-29 12:47:40 -07:00
parent 11f82c891a
commit c34138e09e
4 changed files with 11 additions and 5 deletions

View File

@ -39,7 +39,7 @@ export default {
cMapUrl: '/assets/webpack/cmaps/',
cMapPacked: true,
})
.then(this.renderPages)
.promise.then(this.renderPages)
.then(pages => {
this.pages = pages;
this.$emit('pdflabload');

View File

@ -18,7 +18,7 @@ export default {
},
computed: {
viewport() {
return this.page.getViewport(this.scale);
return this.page.getViewport({ scale: this.scale });
},
context() {
return this.$refs.canvas.getContext('2d');
@ -36,7 +36,7 @@ export default {
this.rendering = true;
this.page
.render(this.renderContext)
.then(() => {
.promise.then(() => {
this.rendering = false;
})
.catch(error => {

View File

@ -0,0 +1,5 @@
---
title: Remove pdf.js deprecation warnings
merge_request: 31253
author:
type: fixed

View File

@ -17,7 +17,7 @@ describe('Page component', () => {
pdfjsLib.GlobalWorkerOptions.workerSrc = workerSrc;
pdfjsLib
.getDocument(testPDF)
.then(pdf => pdf.getPage(1))
.promise.then(pdf => pdf.getPage(1))
.then(page => {
testPage = page;
})
@ -31,7 +31,8 @@ describe('Page component', () => {
it('renders the page when mounting', done => {
const promise = Promise.resolve();
spyOn(testPage, 'render').and.callFake(() => promise);
spyOn(testPage, 'render').and.returnValue({ promise });
vm = mountComponent(Component, {
page: testPage,
number: 1,