开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 4030|回复: 31
收起左侧

[易源码分享] PDF文件合并-本地调用非网络api

[复制链接]
结帖率:100% (3/3)
发表于 2022-10-13 15:32:02 | 显示全部楼层 |阅读模式   北京市北京市
分享源码
界面截图:
是否带模块: 纯源码
备注说明: -
本帖最后由 benbenyw 于 2022-10-13 18:13 编辑

因为业务需要,需要动态生成PDF报单,但是最终使用的时候单独的每个报单打印起来很麻烦,尤其是几百个一起
所以往往会合并成一个pdf保存和打印都方便

这里吐槽一下新版的Adobe Acrobat DC界面贼难看,效率也奇低,100页的纯文本pdf合并竟然需要10几分钟偶尔还会卡死,巨无语。
市面上也有不少pdf工具可以实现合并拆分的功能,但是其实总觉得引入一个外部工具不够优雅,就想着在自己的工具里集成这个功能,让每次生成的报单都合并在一个pdf文件里

于是在论坛研究了一上午,竟然发现没有这样的例子(也许搜索姿势不对),我知道易语言里有一个Haru Free PDF的类库,但是1来没有汉化和例子,2来我去官方论坛看了一下,官方好像也说不支持导入外部pdf因为解析一个已有的pdf比创造一个pdf难度大。。。。(好有道理啊)
企业VX截图_16656457643311.png

所以只能另辟蹊径,别的库呢?貌似要别的语言,那么有没有命令行的?还真有……就搜到了cpdf这个工具,命令行下功能还不少,不限于合并、提取、分割,其他功能可以参考官方文档:

https://www.coherentpdf.com/usage-examples.html

cpdf下载地址https://github.com/coherentgraphics/cpdf-binaries



调用命令行本身就没什么难度了,更多功能就大家自行挖掘了。我这个就简单演示了一下合并功能。速度很快哦~附件比较大,因为方便github上不去的同学直接使用,在源码里置入了cpdf,调用前会判断写出。
刚才集成到了文档生成工具里,186个pdf合并,只用了9秒钟,体积方面:cpadf生成27.2M,Acrobat DC合并文件21.2M,感觉可以接受。
企业VX截图_1665655740988.png

PDF文件合并.part1.rar (2 MB, 下载次数: 79)

评分

参与人数 8好评 +6 精币 +18 收起 理由
网络注册会员 + 1 + 2 支持开源~!感谢分享
kk2apple + 1 + 2 支持开源~!感谢分享
kyo9766 + 1 开源精神必须支持~
半辈子 + 1 + 2 YYDS~!
一一一2 + 1 + 3 支持开源~!感谢分享
sinewtec + 1 + 4 支持开源~!感谢分享
Daen + 1 感谢分享,很给力!~
冰点 + 1 + 3 感谢分享,很给力!~

查看全部评分


本帖被以下淘专辑推荐:

结帖率:0% (0/1)

签到天数: 18 天

发表于 2023-10-29 18:05:57 | 显示全部楼层   湖北省十堰市
谢谢分享.........
回复 支持 反对

使用道具 举报

结帖率:0% (0/1)
发表于 2023-10-15 07:52:38 | 显示全部楼层   山东省烟台市
支持开源~!感谢分享
回复 支持 反对

使用道具 举报

结帖率:75% (3/4)

签到天数: 9 天

发表于 2023-9-5 14:54:48 | 显示全部楼层   河北省石家庄市
支持开源~!感谢分享
回复 支持 反对

使用道具 举报

结帖率:100% (5/5)

签到天数: 14 天

发表于 2023-7-4 21:09:35 | 显示全部楼层   河北省保定市
支持开源~!感谢分享
回复 支持 反对

使用道具 举报

结帖率:50% (1/2)
发表于 2022-11-12 18:31:41 | 显示全部楼层   广东省佛山市
感谢,正需要
回复 支持 反对

使用道具 举报

结帖率:100% (3/3)

签到天数: 10 天

 楼主| 发表于 2022-10-28 11:17:26 | 显示全部楼层   北京市北京市
薛天赐 发表于 2022-10-27 15:35
牛B这个模块很牛B,找了几年了 都没有PDF的操作例子 谢谢大佬 !

不客气,只是cpdf限制免费非商用,商用的话还是注意点,商用授权还蛮贵的小500美元一年
回复 支持 反对

使用道具 举报

结帖率:50% (1/2)

签到天数: 5 天

发表于 2022-10-27 15:35:02 | 显示全部楼层   广东省深圳市
benbenyw 发表于 2022-10-25 19:50
cPDF的文档里有提到盖章/水印的方法,但是我测试了一下,发现按照文档的方式,叠加以后水印印章都会有一 ...

牛B这个模块很牛B,找了几年了 都没有PDF的操作例子 谢谢大佬 !
回复 支持 反对

使用道具 举报

结帖率:100% (3/3)

签到天数: 10 天

 楼主| 发表于 2022-10-25 19:50:25 | 显示全部楼层   北京市北京市
薛天赐 发表于 2022-10-25 13:20
在PDF里面加盖印章麻烦给个例子,印章是PNG图片类型

cPDF的文档里有提到盖章/水印的方法,但是我测试了一下,发现按照文档的方式,叠加以后水印印章都会有一个白色的背景挡住下面的文字,你看图吧命令的用法我也截在图里了

在命令行里 cpdf --help看了一下说明,发现还有一个参数是-stamp-under,然后就成了
企业VX截图_16666974279095.png
↑ cpdf -stamp-on 印章.pdf 文件.pdf -o 盖章后.pdf
企业VX截图_16666984781195.png
↑ cpdf -stamp-under 印章.pdf 文件.pdf -o 盖章后.pdf
回复 支持 反对

使用道具 举报

结帖率:50% (1/2)

签到天数: 5 天

发表于 2022-10-25 13:20:26 | 显示全部楼层   广东省深圳市
在PDF里面加盖印章麻烦给个例子,印章是PNG图片类型
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表