Как заполнить редактируемый PDF-файл сохраненными данными в Kotlin?

#android #kotlin #pdf #pdftron

#Android #kotlin #PDF #pdftron

Вопрос:

Я пишу приложение в Android Studio с использованием Kotlin. На данный момент у меня есть один фрагмент, в котором пользователь должен заполнить некоторые поля (например, «Клиент», «Дата» и т. Д.), И я хотел бы поместить эту информацию в редактируемый PDF-файл, который уже существует, когда пользователь нажимает на кнопку «Подтвердить». Я искал часами, но единственное решение, которое я нашел, называется «Pdftron», но я не мог заставить его работать без лицензии (4000 $ / год). Есть ли какой-либо способ заполнить PDF-файл с помощью Kotlin? Кто-нибудь знает, как правильно использовать демо-версию Pdftron?

Заранее благодарю.

Вот скриншот существующего редактируемого PDF-файла в качестве примера:

ИЗОБРАЖЕНИЕ

РЕДАКТИРОВАТЬ: кто-то прислал мне это: https://pdfbox.apache.org /, это могло бы мне помочь. Я разберусь с этим завтра, но я все еще открыт для любых предложений 🙂

Комментарии:

1. «Кто-нибудь знает, как правильно использовать демо-версию Pdftron?» Если ответ Брандена не ответил на ваш вопрос, не могли бы вы пояснить, что вы имеете в виду под этим. Что именно у вас не сработало в демо-версии?

2. Когда я попытался получить доступ к своему PDF-файлу и изменить его, я не смог заставить его работать, поскольку он показывал как ошибку, что мне нужна лицензия на ключ : / Но я думаю, что я нашел другой способ делать то, что я хочу, с помощью «Pdfbox»

Ответ №1:

Вы можете попробовать демо-версию PDFTron, интегрировав через Gradle: https://www.pdftron.com/documentation/android/get-started/integration/gradle / (демо-версия не требует пробного лицензионного ключа, просто добавьте его в свое приложение, чтобы попробовать).

Для вашего приложения похоже, что ваш редактируемый PDF-файл содержит текстовые поля, и вы пытаетесь заполнить эти текстовые поля. В этом случае вы можете использовать Pdftron’s FieldIterator API для обхода текстовых полей и вставки вашей информации.

Для справки вы можете ознакомиться с этим примером Kotlin (в частности, «Пример 2: заполнение форм / изменение значений существующих полей»): https://www.pdftron.com/documentation/samples/kt/InteractiveFormsTest?platforms=android

Комментарии:

1. Спасибо за ваш ответ, но я нашел другой способ делать то, что я хочу, с помощью «Pdfbox». Спасибо, я думаю, ваш ответ будет полезен другим!

Ответ №2:

Мне наконец удалось сделать то, что я хотел, с библиотекой под названием «iText 7», и она отлично работает с Android. Документ здесь:https://api.itextpdf.com/iText7/java/7.1.12