2015-12-13 1 views
1

Я пытаюсь сделать код на PDFA tutorial работу, адаптируя ее к Groovy, и как только я добавить содержимое в мой PDF я получаю PdfAConformanceErrorКак вставить Helvetica, чтобы сделать пример itext tutorial?

All the fonts must be embedded. This one isn't. Helvetica 

Если учебник поможет мне здесь или я просто предположил, что уже знает, что делать? Как я не уверен, что делаю, какой будет лучший метод?

+1

Вы можете сделать только учебное пособие, если вы * вставляете * шрифт. Вы не предоставляете программу шрифтов Helvetica (iText поставляется с файлом AFM, но вам нужен файл PFB). Почему вы не используете FreeSans, как это делается в учебнике? См. Также http://developers.itextpdf.com/question/why-do-i-get-font-embedding-error-when-creating-pdfa1a –

+0

Моя ошибка ... У меня был неправильный путь к файлу шрифта, поэтому вместо того, чтобы давать исключение для этого, он пытался использовать Helvetica, которого я не предоставил ни ... –

ответ

3

Как показано на примере, вы должны убедиться, что все шрифты встроены.

Создание внедренного шрифта:

Font bold10 = FontFactory.getFont(
    "./src/main/resources/com/itextpdf/FreeSansBold.ttf", 
    BaseFont.WINANSI, BaseFont.EMBEDDED, 10); 

Добавление содержимого с помощью этого встроенного шрифта:

document.add(new Paragraph("Invoice number: " + invoice.getNumber(), bold10)); 

Обратите внимание, что Helvetica является шрифт по умолчанию в IText, но программа шрифта не входит. Обычно он также недоступен в системах Windows. Это связано с лицензированием.

Даже если у вас есть программа шрифтов, вы должны убедиться, что вам разрешено распространять ее, вставив ее в файл PDF.

+0

Спасибо - у меня был неправильный путь, но теперь лучше понять учебник. –

Смежные вопросы