0

我正在尝试使用 itext 从 pdf 文件创建 pdf/a 文件。一切顺利,我得到一个 pdf/a 文件。但是当我在这里查看http://www.pdf-tools.com/pdf/validate-pdfa-online.aspx 我得到一个错误

The width for character 1 in font 'ArialRegular' does not match.
The width for character 2 in font 'ArialRegular' does not match.
The width for character 3 in font 'ArialRegular' does not match.

我该如何解决这个错误?

PdfReader pdfReader = new PdfReader(file);

FontFactory.defaultEmbedding = true;
BaseFont bf = BaseFont.createFont(FONT, BaseFont.CP1252, BaseFont.EMBEDDED);
while (currentpagenumber < pdfReader.getNumberOfPages()) {
    document.newPage();
    currentpagenumber++;
    finalpagenumber++;
    page = pdfAWriter.getImportedPage(pdfReader, currentpagenumber);
    cb.addTemplate(page, 0, 0);
    cb.beginText();
    cb.setFontAndSize(bf, 18);
    cb.showTextAligned(PdfContentByte.ALIGN_CENTER, finalpagenumber+"", 520, 5, 0);
    cb.endText();
    ICC_Profile icc = ICC_Profile.getInstance(new FileInputStream(PROFILE));

这是基本代码。我还尝试使用 pdfdictionary 查找每个页面中使用的字体 .. 并尝试将其嵌入为基本字体 .. 但无法工作..

4

1 回答 1

0

以前从未使用过 IText,但现在只是想进行类似的转换,它似乎是库中的一个错误,而不是您使用它的方式。我能给你的最好的选择是报告一个错误:http: //sourceforge.net/p/itext/bugs/ IText 邮件列表也是另一个尝试的地方。

md_5

于 2012-10-26T12:03:52.170 回答