通过imagemagick将pdf转化为图片

通过imagemagick将pdf转化为图片

月光魔力鸭

2021-12-16 09:28 阅读 997 喜欢 0 imagemagick pdf2img pdf转图片

通过gm 将pdf转化为图片

本身需求很简单,原本的流程是将pdf打印出来,然后涂写答案后,通过扫描仪扫描成图片,再进行上传操作。不过感觉太麻烦,想全部通过程序来搞定,需求就变成了将pdf转成图片,然后对图片进行程序填涂,然后提交.

找了一堆包发现大都基于gm来实现的

由于之前安装过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


感谢支持!

赞赏支持
提交评论
评论信息 (请文明评论)
暂无评论,快来快来写想法...
推荐
在我们做运维或者小工具的时候,总会有些需要提醒的事情,比如服务器宕机或者天气提醒,但是发email又会不够及时或者可能会忽略,那么短信就是一个不错的选择了
在开发项目过程中,经常需要将开发的项目部署到服务器上,但是每个环境都有每个环境的配置等等,如果每次打包的时候都要去调整(可能删除、替换等),那就很烦人了,这里分享下自己实现的几个简单的小工具(当然这个工具可能只对我自己有用),希望能够帮到你。
开始入手webpack ,直接看的官方文档和demo,对于自动刷新这部分还是希望通过express 加载插件来控制,但是文档没有提供,经过参考github上其他高玩的套路,最终整理了一个基础的配置版本。
最近在折腾的时候又想写less了,但是换框架了,成了thinkjs,考虑到开发阶段一直编译编译less的情况..最终根据middleware的特点实现了一个超级简单的less中间件。
今天想在服务器上跑下自己自动签到的程序,需要安装puppeteer ,结果出错。 permission denied, mkdir '/root/.nvm/versions/node/v9.11.1/lib/node_modules/
对于开发来说,看到别人家的小程序都这么靓,这么顺畅,这么好用,用户又多... 自然是眼馋的..用户馋不来,可以先馋他的身子..啊不,代码啊。
在平时nodejs练习过程中,可能会安装多个不同版本的nodejs,那么我们如何来轻松的管理和切换呢?推荐你一个nvm来试试水
在使用marked来做md解析的时候,部分解析规则可能并不是很如意,比如说,我在md中写了a标签,但是这些标签都是在当前页面替换的,而我想要的是新打开窗口。