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 に答える