iText PDF Заполнение формы и переход на вторую страницу при необходимости - PullRequest
0 голосов
/ 10 февраля 2012

Я успешно создал приложение для заполнения форм iText с использованием Java, но столкнулся с проблемой, поскольку динамический контент не всегда имеет одинаковую длину.

По сути, я создаю форму счета, и, конечно, длина счета зависит от того, сколько товаров было заказано.

Форма допускает 12 записей, но я не могу понять, что делать, если есть более 12 записей. Я попытался добавить страницу с тем же шаблоном, но он просто добавляет пустую страницу в конце, а затем выдает исключение, потому что он не может обработать переданную дополнительную информацию.

Есть идеи, как добавить более одной страницы? Я использую PdfReader для чтения во входном файле (PDF-форма, созданная с помощью Acrobat). Затем я использую итератор для перехода по полям и штампу.

Я пытаюсь сделать это внутри цикла for, который должен проходить через каждую страницу, но когда он попадает на страницу 2, он выдает ошибку, потому что PdfReader для этого файла уже существует. Перемещение создания PdfReader вне цикла for также не помогло.

Любой вклад будет оценен.

1 Ответ

0 голосов
/ 13 февраля 2012

Привет, хорошо, вы используете PDF AcroForm, иначе вы не сможете заполнить его iText, но AcroForms - это статические формы, вы хотите использовать XFAForms - PDF-форму, которая внедряется в XML, но iText еще не полностью поддерживает XFAForms. Что вы можете сделать, это использовать координаты вашей первой линейки продуктов и поместить на нее таблицу PDF, которая может проходить по нескольким страницам, вы можете указать, должна ли строка быть завершена или нет при переходе на другую страницу, это можно прочитать на глава 4 книги iText in Action, написанной Бруно Лоуги

...