![](/img/trans.png)
[英]Rendering multiple pages of pdf to single Canvas using pdf.js and ImageData
[英]“Invalid canvas size” while rendering PDF to PNG using pdf.js
我在使PDF.js库将PDF呈现为PNG文件时遇到麻烦。
我的步骤是:
mkdir pdf-test
npm init
npm install pdfjs-dist assert canvas
pdf2png.js
从示例页面复制到工作文件夹 pdf2png.js
设置其路径 node pdf2png.js
我得到以下输出:
# PDF document loaded.
(node:13760) UnhandledPromiseRejectionWarning: AssertionError [ERR_ASSERTION]: Invalid canvas size
at NodeCanvasFactory_create [as create] (D:\tests\pdf-test\pdf2png.js:23:5)
at D:\tests\pdf-test\pdf2png.js:70:21
令人惊讶的是,如果我克隆了整个PDF.js存储库并按照说明从源代码进行构建,则脚本可以正常工作,并且我得到了正确呈现的PNG文件。
从NPM安装预构建版本时,我缺少什么?
您缺少更新。
最新的pdfjs-dist
npm版本是Oct 27, 2018
v2.0.943
,而最新的GitHub版本是Feb 16, 2019
v2.1.266
。
此最新更新具有以下更改日志: 迁移到canvas 2.x api也影响了pdf2png.js
文件,如您在此处看到的:
因此,如果您使用的是pdf.js
GitHub存储库中的最新pdf2png.js
文件,则pdfjs-dist
npm软件包和pdf2png.js
文件之间存在某种版本不匹配的pdf2png.js
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.