iText 7
用于 PDF 文档的开源 Java API
Java 库允许开发人员在 Java 应用程序中读取、写入、编辑文本并将其转换为 PDF 文件。
iText 7 入门
要正确使用 iText 的库,您需要做两件事。有效的许可证密钥文件和最新版本的许可证密钥库。您可以轻松下载许可证密钥库。
iText 7 是双重许可的 AGPL/商业软件。 AGPL 是免费/开源软件许可证。您可以使用中央存储库下载 iText 7 Core。
iText 7 Core 可通过中央存储库上的 Maven 获得。您可以选择是要使用一个模块还是所有模块。如果您想使用所有 iText 7 模块,您只需在 pom.xml 中添加以下 XML 片段。 Maven 将为您完成所有艰苦的工作,并从中央存储库下载所需的模块。
您需要在类路径上有一个许可证密钥库 (itext-licensekey-x.y.z.jar)。
这是命令
mvn clean instal
默认情况下,它将编译 Java 源并将二进制类打包成 jar 包。
用于创建和操作 PDF 文档的 Java API
iText 7 使软件开发人员能够在 Java 应用程序中创建和操作 PDF 文档。 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 程序员能够在他们自己的 Java 应用程序中轻松地将文本转换为 PDF 文档。将纯文本文件导出为 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();
对于任何组织来说,保护和保护其重要数据及其文档始终非常重要。 iText 7 Java 库为使用文档的安全性提供了许多技术,例如通过对其应用密码与授权用户或编辑者共享它、使用数字签名等。以下 Java 代码示例显示了如何向现有 PDF 文档添加密码。
通过 Java 添加密码以保护 PDF 文件
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();