gm
将pdf转化为图片本身需求很简单,原本的流程是将pdf
打印出来,然后涂写答案后,通过扫描仪扫描成图片,再进行上传操作。不过感觉太麻烦,想全部通过程序来搞定,需求就变成了将pdf转成图片,然后对图片进行程序填涂,然后提交
.
由于之前安装过imageMagick
,所以直接把代码拿过来运行,竟然报错。
Command failed: identify: FailedToExecuteCommand `"gswin64c.exe"
找资料说是缺少ghostscript
,又安装了之后才可以的。
ghostscript : https://www.ghostscript.com/releases/gsdnld.html pdf2img : https://github.com/fitraditya/node-pdf2img/tree/master/lib
将pdf的第一页转化为图片
const gm = require('gm').subClass({ imageMagick: true })
let fs = require('fs');
let ips = fs.createReadStream('./1.pdf');
console.log(ips.path);
gm(ips, ips.path + '[0]').density(600, 600)
.resize(1024)
.quality(100)
.write('./1.png', function (err, v) {
console.log(err, v);
})
整体来说,可行。但是效率有点太低..目前还没有找到好的解决方案,先用着这个。
转载请注明出处: https://chrunlee.cn/article/pdf-2-png-by-gm.html