Штрих-код не отображается в PDF с помощью iText

Я использую iText для динамического создания документов PDF. Теперь я пытаюсь динамически создать штрих-код в этом PDF-файле. Adobe Live Cycle имеет встроенную функцию штрих-кода. Вы можете просто перетащить текстовое поле штрих-кода на страницу, и оно будет создано.

Проблема:
я поместил поле штрих-кода в PDF-файл. Затем передайте число в поле штрих-кода со страницы JSP. Но появляется только номер. Строки штрих-кода никогда не отображаются

Номер 20099002 отображается в документе PDF, но строки штрих-кода не отображаются. Я пробовал несколько других вариантов штрих-кода в LiveCycle, но все они дали тот же результат.

    OurJavaPage.java 
    public class ExampleForm extends BaseOutput { 
    private static final Log LOG = LogFactory.getLog(ExampleForm.class); 
    public OutputStream generate() throws IOException, DocumentException { 
        ByteArrayOutputStream baos = new ByteArrayOutputStream(); 
        PdfReader reader; 
        reader = new PdfReader(BASEDIR + "MailingExample.pdf"); 

        PdfStamper stamper = new PdfStamper(reader, baos); 
        Participant participantHome = home.getParticipant(); 
        Set<Location> homeLocs = participantHome.getLocations(); 

        final AcroFields form = stamper.getAcroFields(); 

        setFormField(form, "addrNumber[0]", addrMaster.getStreetNum()); 
        setFormField(form, "dateMiddle[0]", formatDate("MM-dd-yyyy", new Date())); 

// *********** Here's the problem *****************************
        setFormField(form, "Code128ABarcode1[0]", "20099002");
// ************************************************************

        debugAcrobatForm("ExampleForm", form); 
        stamper.setFormFlattening(true); 
        stamper.close(); 

        return baos; 
    } 
}

Операционная система: Linux
Программирование: Java, .jsp, iText
Программное обеспечение: Adobe Live Cycle Designer ES 8.1

Ответов (6)

Вы спрашивали в очень активном списке рассылки IText?

Если это была динамическая форма XFA, созданная с помощью LiveCycle, то использование выравнивания формы приведет к потере полей формы. Однако статические формы XFA должны работать.

Ссылка: http://itext.ugent.be/library/question.php?id=30

Поддержка XFA в iText улучшается, но в лучшем случае нечеткая.

Встраивает ли ваше программное обеспечение штрих-код в виде графического изображения или шрифтового представления символов?

В последнем ли это встраивание шрифта в PDF?

Задача решена!!!

Я связался с iText, и они предложили мне изменить эту строку.

От: stamper.setFormFlattening (true);
Кому: stamper.setFormFlattening (ложь);

Это сработало.

Вам нужно добавить шрифт штрих-кода в систему ur (библиотека шрифтов), тогда он будет виден в раскрывающемся списке шрифтов ur. Используйте acro-field (текст) и установите этот шрифт в этом acro-поле. Ваша проблема будет решена. также используйте setformflattening = true, так как это сделает PDF-файл недоступным для редактирования.

у меня он отлично работает ... возможно, это связано с тем, как вы делаете шаблон в конструкторе жизненного цикла (статический или динамический) ...

см. образец здесь http://1t3xt.info/examples/browse/?page=example&id=433

С уважением, Рагхавендра Самант