繁体   English   中英

使用pdf.js将PDF转换为PNG时,“画布大小无效”

[英]“Invalid canvas size” while rendering PDF to PNG using pdf.js

我在使PDF.js库将PDF呈现为PNG文件时遇到麻烦。

我的步骤是:

  1. mkdir pdf-test
  2. npm init
  3. npm install pdfjs-dist assert canvas
  4. pdf2png.js示例页面复制到工作文件夹
  5. 将随机PDF复制到此文件夹,在第54行的pdf2png.js设置其路径
  6. 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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM