iText水印文本的扁平化问题
本文关键字:扁平化 问题 文本 iText | 更新日期: 2023-09-27 18:00:40
我正在使用iTextSharp为PDF格式的现有文档添加水印。我读入它们,创建一个PdfTemplate对象,将水印文本、颜色、透明度等添加到这个PdfTemplate中,然后将模板添加到我使用PdfWriter.DirectContent.获得的PdfContentByte中
这个解决方案已经为我扔给它的所有文档工作了一段时间,但出于某种原因,一些特定的PDF在水印文本周围打印了一个不透明的矩形。
我已经尝试了很多事情,包括将PdfGState的OverPrintMode设置为1,在创建后打开生成的文件,然后在保存新副本之前使用PdfStamper的setFormFlatting和setFreeTextFlatting。。。到目前为止,一切都不起作用。
问题是,我不在乎压平表单字段或按钮,我只想在生成整个内容后压平文档的所有层。这在iText API中是否可行?
好吧,回来结束这个问题,因为我很久以前就解决了:
问题是,有问题的PDF非常旧(PDF标准的1.3版),不支持作为水印元素一部分的透明度。
我通过虚拟打印机将旧的PDF打印到一个临时文件中,然后继续处理该文件,这是PDF标准的新版本。