| 失效链接处理 |
|
iText 9,Java解析PDF神器 !
相关截图:
![]() 主要内容:
一、先认识一下 iText
iText 是一套偏底层、但 API 设计得很克制的 PDF SDK,Java 和 .NET 都能用。社区版叫 iText Core / Community,走 AGPL;公司内部如果要闭源商用,得买商业授权。
它能干的事大致就这几类:
生成:从零拼页面,排段落、表格、图片、页眉页脚
解析:把已有 PDF 里的文字、图片、图层抠出来
加工:拆页、合并、盖章、填表单
合规:PDF/A 归档、PDF/UA 无障碍、数字签名
跟 Apache PDFBox 比,iText 更偏“产品级排版 + 标准合规”;跟一堆在线转换工具比,它是能嵌进你自己服务里的。做发票识别、合同归档、电子签这类业务,它基本是 Java 圈里绕不开的选项。
二、iText 9 到底新在哪
iText 9.0 是 2024 年底发布的大版本,到现在已经迭代到 9.7.1。大版本意味着跟 8.x 不完全兼容,但好消息是:7、8 打下的底子还在,迁移成本没有当年从 5 升 7 那么疼。
我把 9.x 系列里,开发时真正能感知到的变化,收成下面几条。
1. 加密终于跟上 PDF 2.0 的新标准
9.0 直接支持了两个新 ISO 技术规范:
ISO/TS 32003:PDF 2.0 里的 AES-GCM 加密,速度和安全性都比老的 AES-CBC 更舒服
ISO/TS 32004:PDF MAC,给加密文档加一层完整性保护,文件被悄悄改过一眼就能看出来
简单说:以前更多是“锁住不让看”,现在还能证明“没被人动过手脚”。
2. 数字签名,从“能签”变成“能验”
iText 8 把签名能力做厚了,9.0 把 签名校验模块 收了个尾:可以只验某一个签名、能处理加密文档里的签名、还能顺着修订版本和证书链往下追。签和验终于不用两套工具来回倒了。
3. PDF/A、PDF/UA 创建更省心
无障碍和归档一直是 iText 的强项。9.0 把 PDF/A、PDF/UA 的创建和符合性检查收顺了,签 PDF/UA 文档时,签名外观缺字体、缺替代文本,会直接抛符合性异常,而不是让你在一堆属性错误里自己猜。
另外还多了个小而实用的 API:查出某一页真正用到了哪些图层(OCG)。图纸、设计稿这类带图层的 PDF,排查起来方便很多。
|


苏公网安备 32061202001004号
