Преобразование динамического XFA в статический PDFJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Преобразование динамического XFA в статический PDF

Сообщение Anonymous »

Требование: просматривать PDF-файлы на основе XFA на мобильных устройствах.

Варианты, которые я пробовал:
  • Поскольку XFA не поддерживается в Adobe Mobile Reader, я могу свести XFA в статический PDF-файл. Я пробовал, но динамические XFA-файлы невозможно преобразовать в статические PDF-файлы с помощью iText.
  • Позже я попробовал распечатать формы XFA, используя «Adobe PDF» в качестве службы печати. Это работает, как и ожидалось, при выполнении вручную, но каким-то образом очищает данные формы при выполнении с помощью кода.
Ниже приведен пример кода для задачи печати. Adobe Acrobat DC установлен для службы печати Adobe PDF.

Код: Выделить всё

import java.awt.print.PrinterJob;
import javax.print.PrintService;
import javax.print.PrintServiceLookup;

...
private static void writePDF(long uid, Path path) throws Exception {
final String inFile = path.toString();
PDDocument pdfdoc = PDDocument.load(inFile);
PrinterJob printJob = PrinterJob.getPrinterJob();

printJob.setPageable(new PDPageable(pdfdoc));
// printJob.setPrintable(new PDPageable(pdfdoc));
printJob.setPrintService(getSystemPrinter("Adobe PDF"));

printJob.setJobName(path.getFileName().toString());
pdfdoc.silentPrint(printJob);
}

private static PrintService getSystemPrinter(final String printerName) {
PrintService desiredPrinter = null;
for (PrintService printer : PrintServiceLookup.lookupPrintServices(null, null)) {
if (printerName.equalsIgnoreCase(printer.getName())) {
desiredPrinter = printer;
break;
}
}
return desiredPrinter;
}
Кто-нибудь, предложите обходной путь для достижения желаемого. Спасибо!

Подробнее здесь: https://stackoverflow.com/questions/365 ... static-pdf
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»