1. 产品
  2.   PDF格式
  3.   Java
  4.   Apache PDFBox  

Apache PDFBox  

 
 

用于 PDF 文档处理的 Java API

开源 Java 库,用于在 Java 应用程序中创建、打印和拆分或合并 PDF 文档。

Apache PDFBox 是一个用于处理 PDF 文档的开源纯 Java 库。使用这个库,Java 开发人员可以开发 Java 程序来创建新的 PDF 文档并轻松地操作现有的 PDF 文档。它还使开发人员能够从 PDF 文档中读取和提取内容。除此之外,PDFBox 还包括一个命令行实用程序,用于使用可用的 Jar 文件对 PDF 文档执行各种操作。

可移植文档格式 (PDF) 是一种文件格式,有助于以独立于应用程序软件、硬件和操作系统的方式呈现数据。 Apache PDFBox 支持多种高级功能,例如创建、渲染、打印、拆分、合并、更改、验证和提取 PDF 文件的文本和元数据。

Previous Next

Apache PDFBox 入门

首先,您需要从 PDFBox 下载页面下载最新版本。要成功构建 PDFBox,您需要安装 Java 7 或更高版本以及 Maven 3。使用以下构建命令

安装命令

 mvn clean instal 

该命令将编译 Java 源代码并默认将二进制类打包成 jar 包。

用于创建和修改新 PDF 文档的 Java API

Apache PDFBox 允许程序员从头开始生成新的 PDF 文档。创建文档后,开发人员可以将文档保存在所需的位置。 PDF是当今最常用的文件格式之一。 PDF 文档在各种平台上兼容,并且独立于用于创建它的硬件、操作系统和应用程序软件来表示文档。 PDFBox 还方便开发人员修改现有的 PDF 文档。开发人员可以向现有页面文档添加新页面和文本。

创建 PDF 文档 - Java

// Create a new PDF document
PDDocument document = new PDDocument();
// Save document
document.save("fileformat.pdf");
// Close document
document.close();

使用 Java 库拆分和合并 PDF 文档

Apache PDFBox 提供了将多个 PDF 文档合并为单个 PDF 文档的功能。要首先合并多个文档,您需要加载现有的 PDF 文档,然后设置目标文件的路径。之后,开发人员可以按照他们希望在最终合并的 PDF 文件中找到的顺序添加所有源 PDF 文件。我们可以将给定的 PDF 文档拆分为多个 PDF 文件。此 Splitter 类用于将给定的 PDF 文档拆分为其他几个单独的文档。

合并 PDF 文档 - Java

// Initialize PDFMergerUtility object
PDFMergerUtility pdfMergerUtility = new PDFMergerUtility();
// Set output file path
pdfMergerUtility.setDestinationFileName("merged.pdf");
// Add source documents
pdfMergerUtility.addSource(new File("document1.pdf"));
pdfMergerUtility.addSource(new File("document2.pdf"));
// Merger documents
pdfMergerUtility.mergeDocuments(MemoryUsageSetting.setupMainMemoryOnly());

在 Java 应用程序中添加和提取图像到 PDF 文档

Apache PDFBox 便于 Java 开发人员将图像插入到现有的 PDF 文档中。图像总是为内容增加真正的价值。图像帮助我们学习、吸引注意力、解释概念和激发灵感。 PDFBox 提供了一个用于将图像插入 PDF 文档的库。该库使用 Java 程序在 PDF 文档中插入图像。该 API 还使开发人员能够从现有 PDF 文档中提取图像并将其存储在本地磁盘上。

在 PDF 中添加图像 - Java

// Create a new PDF document
PDDocument document = new PDDocument();
// Create a new page
PDPage page = new PDPage();
// Add page
document.addPage(page);
// Initialize PDImageXObject object
PDImageXObject pdImage = PDImageXObject.createFromFile("logo.png",document);
// Initialize PDPageContentStream object
PDPageContentStream contents = new PDPageContentStream(document, page);
// Drawing image
contents.drawImage(pdImage, 70, 250);
// Close contents
contents.close();
// save document
document.save("image.pdf");

使用 Java 库以各种方式打印 PDF 文档

Apache PDFBox 使 Java 开发人员能够使用标准 Java 打印 API 打印 PDF 文档。它允许开发人员以各种方式打印 PDF 文档。开发人员现在可以按实际大小打印文档,这是推荐的打印方式。它支持使用打印预览对话框以及自定义属性进行打印。开发人员还可以使用自定义页面大小和自定义边距打印 PDF 文档。

通过 Java API 打印 PDF 文件

 import java.awt.print.PrinterException;
 import java.io.IOException;
 import org.apache.pdfbox.pdmodel.PDDocument;
 public class Print {
public static void main(String[] args) throws IOException, PrinterException
{
  PDDocument pdf=PDDocument.load("d:\\filename.pdf");
      pdf.print();
}
}
 中国人