У меня есть шаблон PDF, созданный в Acrobat Reader DC, который содержит поле, которое я пытаюсь заполнить некоторым текстом. Поле имеет определенный шрифт, который я хочу сохранить. Я могу получить поле и изменить значение.
Однако, когда я открываю PDF в Internet Explorer, шрифт является шрифтом по умолчанию. Заблуждение заключается в том, что если я открою его в Chrome, он отобразит правильный шрифт. Не уверен, почему это так, любая помощь приветствуется. Я использую PDFBox версии 2.
(шрифт работает, если я не использую Java для редактирования файла, если я просто вручную изменяю его в Acrobat и сохраняю файл, тогда он отображается правильно.)
См. Ниже используемый код.
File file = new File("PDFToReadFrom.pdf");
PDDocument pdDoc = PDDocument.load(file);
PDDocumentCatalog pdCatalog = pdDoc.getDocumentCatalog();
PDAcroForm pdAcroForm = pdCatalog.getAcroForm();
for(PDField pdField : pdAcroForm.getFields()){
pdField.setValue("value");
}
pdDoc.save(new File("test.pdf"));
pdDoc.close();