Я работаю над серверным приложением Spring Boot. Мне нужно прочитать существующий PDF-файл как шаблон и добавить к нему несколько текстов, а затем вернуть новый PDF-файл.
Я пробовал несколько способов чтения PDF-файла из папки ресурсов приложения, но неважно в этом случае полученный файл всегда будет пустым.
//One of the ways I tried:
File file = ResourceUtils.getFile("classpath:temp.pdf");
//file.exist() will return true, but the file is blank if wrote to another file
Полученный файл будет иметь правильное количество страниц , но без содержимого.
Я попытался прочитать в PNG, TXT или JSON, все работало нормально. Мой текущий обходной путь - на самом деле превратить шаблон PDF в PNG, а затем использовать изображение в качестве шаблона. Но я не хочу go этот маршрут, если только это не единственный путь.
Я также попытался использовать библиотеку iText (iText 5), чтобы прочитать ее, но все еще получил пустую страницу.
PdfReader pdfReader = new PdfReader("file.pdf");
PdfStamper pdfStamper = new PdfStamper(pdfReader, new FileOutputStream("newFile.pdf"));
pdfStamper.close();
pdfReader.close();
//newFile.pdf will be blank but will have the same number of pages as file.pdf does.
Так что я думаю, что это больше связано с самим моим приложением.
Я использую Spring Boot 1.5.12.
Кто-нибудь сталкивался с этой проблемой перед? Существуют ли какие-либо конфигурации для приложения, необходимые для обработки PDF?
Есть предложения о том, как это исправить, или есть мысли о том, что могло пойти не так?
Большое спасибо!