iText - 使用 PdfCleanUpProcessor 后输出文件字体看起来模糊

iText - Output file font looks blurry after using PdfCleanUpProcessor

我正在使用 iText 5.5.8 删除 PDF 中矩形中的一些文本,完全按照 this example。例如。如下代码片段:

final Rectangle rect = new Rectangle(0, 12, 300, 21);
final PdfReader reader = new PdfReader(inputPDF);
final PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(outputPDF));
for (int i=1;i<=reader.getNumberOfPages();i++) {        
    cleanUpLocations.add(new PdfCleanUpLocation(i, rect, BaseColor.WHITE));
}

PdfCleanUpProcessor cleaner = new PdfCleanUpProcessor(cleanUpLocations, stamper);   
cleaner.cleanUp();

stamper.close();
reader.close();

但是,在输出文件中,所有那些粗体文本的重量都变重了,并且看起来很模糊。同时,所有普通文本仍然与原始文本相同。

有谁知道如何解决这个问题?

最后,我通过将 iText 降级回 5.5.4 版本解决了这个问题!

这是对你的问题有用的另一种可能的解决方案:

在版本 5.5.10 中,这对我有用: 我下载了包含源代码的 jar 文件 (itextpdf-5.5.10-sources.jar),将其导入到一个新的 eclipse 项目中,编辑了 .java 文件(注释掉这两行代码),编译它,用新编译的 .class 文件替换了原来的 .class 文件,并创建了一个同名的 jar 文件。 希望这可以帮助任何有同样问题的人!