iText 7
Open Source Java API для PDF-документів
Бібліотека Java дозволяє розробникам читати, писати, редагувати та перетворювати текст у файли PDF у програмах Java.
iText 7 — це Java API з відкритим вихідним кодом, який дозволяє розробникам програмного забезпечення створювати власні PDF-рішення. Він надає важливі функції для інтеграції функцій PDF у програми або продукти Java. Це допоможе вам створити розумний документообіг. Документообіг – важливий процес у компанії.
Портативний формат документів (PDF) є одним із найбільш використовуваних у світі форматів документів і залишається революційним. Дані завжди відіграють ключову роль в успіху організації. iText 7 допомагає вашій організації, перетворюючи ваші дані в документи PDF. Це може допомогти вам заощадити час і гроші.
Початок роботи з iText 7
Щоб правильно використовувати бібліотеки iText, вам знадобляться дві речі. Дійсний файл ліцензійного ключа та остання версія бібліотеки ліцензійних ключів. Ви можете легко завантажити бібліотеку ліцензійних ключів.
iText 7 має подвійну ліцензію як AGPL/комерційне програмне забезпечення. AGPL — це ліцензія на безкоштовне/відкрите програмне забезпечення. Ви можете скористатися центральним репозиторієм, щоб завантажити iText 7 Core.
iText 7 Core доступний через Maven у центральному репозиторії. Ви можете вибрати, чи хочете ви використовувати один модуль або всі модулі. Якщо ви хочете використовувати всі модулі iText 7, вам потрібно просто додати наведений нижче фрагмент XML у ваш pom.xml. Maven виконає всю важку роботу за вас і завантажить необхідні модулі з Центрального сховища.
Вам потрібно мати бібліотеку ліцензійних ключів (itext-licensekey-x.y.z.jar) на шляху до класів.
Ось команда
mvn clean instal
Він скомпілює вихідні коди Java і запакує бінарні класи в пакети jar за замовчуванням.
Java API для створення PDF-документів і керування ними
iText 7 дозволяє розробникам програмного забезпечення створювати, а також маніпулювати PDF-документом у програмах Java. Формат файлу PDF є одним із найпопулярніших форматів файлів, які використовуються сьогодні. Крім того, ви можете легко змінювати існуючі документи PDF. Бібліотека також дає розробникам можливість легко вставляти нові сторінки, а також додавати новий вміст до наявної сторінки PDF.
Маніпулювання документом PDF - Java
// Initialize document
PdfDocument pdfDoc = new PdfDocument(new PdfReader("input.pdf"),
new PdfWriter("output.pdf"));
// Add annotation in it
PdfAnnotation ann = new PdfTextAnnotation(new Rectangle(400, 795, 0, 0))
.setTitle(new PdfString("FileFormat"))
.setContents("Developer Guide for fileformats");
pdfDoc.getFirstPage().addAnnotation(ann);
// Close document
pdfDoc.close();
Перетворення тексту на документи PDF
PDF Java API дозволяє Java-програмістам легко перетворювати текст у PDF-документи у своїх власних програмах Java. Експортувати простий текстовий файл у PDF-документ дуже просто. Це дає вам можливість визначити вирівнювання на рівні документа. Крім того, останній випуск також підтримує кілька функцій макета, які полегшують читання порівняно зі старими версіями.
Перетворення тексту на PDF - Java
// Initialize output document
PdfDocument pdf = new PdfDocument(new PdfWriter("TextToPDF.pdf"));
Document document = new Document(pdf);
// Open txt document
BufferedReader br = new BufferedReader(new FileReader("input.txt"));
String line;
// Add each line
while ((line = br.readLine()) != null) {
document.add(new Paragraph(line));
}
// Save document
document.close();
Для будь-якої організації завжди дуже важливо захищати свої важливі дані, а також документи. Бібліотека Java iText 7 надає численні методи безпеки використання документів, як-от надання доступу до них авторизованим користувачам або редакторам шляхом застосування до них паролів, використання цифрових підписів тощо. У наведеному нижче прикладі коду Java показано, як додати пароль до існуючого документа PDF.
Додайте пароль для захисту PDF-файлів через Java
PdfReader reader = new PdfReader(src);
WriterProperties props = new WriterProperties()
.setStandardEncryption(USERPASS, OWNERPASS, EncryptionConstants.ALLOW_PRINTING,
EncryptionConstants.ENCRYPTION_AES_128 | EncryptionConstants.DO_NOT_ENCRYPT_METADATA);
PdfWriter writer = new PdfWriter(new FileOutputStream(dest), props);
PdfDocument pdfDoc = new PdfDocument(reader, writer);
pdfDoc.close();