Вот текущая проблема: У меня есть форма XFA, созданная третьей стороной, и я бы хотел использовать ее как есть. я был в состоянии генерировать PDF с заполненными полями по:Прозрачные изображения отображаются как черные ящики после xfa.fillXfaForm. Поддерживаются ли прозрачные изображения для заполнения xfa?
a) Extracting the XML via Acrobat Pro
b) filling the fields within the XML and calling
XfaForm xfa = form.getXfa();
xfa.fillXfaForm(new FileInputStream(XML));
То, что я пытаюсь сделать, это просто печать изображения/водяной знак над 2-й странице, которая имеет вид ш/несколько полей. «PRA» «DRAFT», которое я штампую, имеет прозрачный фон, поэтому, если надпись работает, фон изображения должен сделать подложку и выглядеть так, чтобы текст изображения сидел поверх страницы pdf.
То, что я хотел выполнить, было бы тривиально, если бы это была не форма XFA. Я бы просто использовал pdfStamper iText и отпечатал этот прозрачный PNG на 2-й странице, но поскольку теперь я ограничился использованием Adobe LiveCycle Designer, я заметил, что эта некоторая тривиальная задача в документе, отличном от XFA, не столь тривиальна в XFA. С предыдущего поста я узнал, что не могу смешивать технологии вместе. Мне пришлось выбирать между nonXFA (AcroForms) и XFA (построенный Adobe LiveCycle Designer). В принципе, я не мог сделать fillXFA, а затем использовать штамп, поэтому мне пришлось выяснить, как это сделать, используя XFA.
Я пробовал следующие шаги как статический PDF и динамический PDF ... не было никакого значения, какой тип PDF был.
1) В рамках Adobe LiveCycle Designer я перешел на вторую страницу исходного PDF-файла и определил 2 поля изображения.
overlay1 - this will span the top portion width of the page which has text
content underneath
overlay2 - this will span the lower portion width of the page which has text
content underneath
2) В качестве теста ... Я выбрал изображение для Overlay1, который имеет прозрачный фон, и это передний план фона как черновик Во время разработки ... изображение прозрачности ПРОЕКТА работало и было заложен верхняя часть содержимого правильно для изображения. Окно: overlay1. Я сохранил измененный PDF-файл на основе XFA, открыл его в Acrobat Pro и экспортировал XML-структуру XFA. Я проверил, что overlay1 имел изображение DRAFT в качестве кодированной строки base64.
<overlay1 xmlns:xfa="http://www.xfa.org/schema/xfa-data/1.0/" xfa:contentType="image/png"
>iVBORw0KGgoAAAANSUhEUgAACWAAAAJYCAYAAADmY91UAAAACXBIWXMAAC4jAAAuIwF4pT92AABH
.......
.......
3) Когда я принял ту же основание 64 строки и только вошла его содержание в overlay2 и вынес его с помощью метода fillXFA ... образ был черный ящик вместо этого. Я также открыл файл в Acrobat Pro, затем дважды щелкнул по области imageField, выбрал прозрачное изображение, и он все еще появился как черный ящик. Я повторил предыдущий шаг с изображением без прозрачности и прямоугольным белым фоном наложил все под ним.
4) Я пошел вперед и сделал еще одно изображение ... которое не имело прозрачности. ПРОЕКТ без прозрачности и его фон белый. Я его кодировал в формате base64. Мне удалось разместить его как на overlay1 & наложениях изображений overlay2 без проблем. Новая проблема заключается в том, что на белом фоне изображений DRAFT все покрывало все.
Почему начальный прозрачный png работал во время разработки Adobe LifeCycle Design (время разработки), а после вызов fillXFA отображается как черный ящик? Но если я изменил изображение, чтобы не использовать прозрачность на все ... все работает?
Поддерживает ли XFA прозрачные изображения для полей изображений во время заполнения xfa?Помните, что он работал во время дизайна , когда я сказал дизайнеру Adobe LiveCycle использовать этот прозрачный png для этого поля.
Я в основном пытаюсь создать 2 водяных знака изображения на определенной странице в формате XFA.
Мой текущий план резервного копирования состоит в том, чтобы сгладить PDF (снять XFA) и вернуть все поля обратно в форму с помощью Acrobat Pro и заполнить ее с помощью стандартных запросов PDF itext и использования шаблона (это будет быть утомительным, так как есть куча полей). Но я хотел бы знать, должен ли кто-нибудь когда-либо делать то же самое с формой XFA PDF, прежде чем я посмотрю вариант B.
Посмотрим, произойдет ли это, если я использую другой формат файла, поддерживающий прозрачность. –