PDF 是一种广泛用于共享和打印文档的格式。您通常喜欢在将文件发送给其他人之前将其转换为 PDF 格式。在某些情况下,还需要将 PNG 和 JPG 等图像转换为 PDF 文档。因此,在本文中,您将学习如何在 Java 中将图像转换为 PDF 格式。我们还将演示如何以编程方式将多个图像转换为 PDF。
Java Image to PDF Converter API - 免费下载
Aspose.PDF for Java 是一个 PDF 操作 API,可用于创建、修改和处理 PDF 文件。此外,它的高质量转换器可让您无缝转换 PDF 和其他文档。您可以 下载 API 或使用以下 Maven 配置安装它。
存储库
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://releases.aspose.com/java/repo/</url>
</repository>
依赖
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-pdf</artifactId>
<version>22.9</version>
</dependency>
在 Java 中将图像转换为 PDF
在本节中,我们将了解如何在 Java 中将图像转换为 PDF 文件。当您需要将每个图像转换为单独的 PDF 文件时,这会很有用。以下是执行此操作的步骤。
- 创建 Document 类的实例。
- 使用 Document.getPages().add() 方法将新的 Page 添加到 PDF 文档并设置页面的边距。
- 将图像文件加载到 FileInputStream 对象中。
- 使用 Page.getParagraphs().add(Image) 方法向页面添加新的 Image。
- 使用 Image.setImageStream() 方法设置图像的流。
- 最后,使用 Document.save(String) 方法保存 PDF 文档。
以下代码示例展示了如何在 Java 中将 PNG 图像转换为 PDF。
// 创建一个新文档
Document doc = new Document();
// 图片文件的路径
String imageFile = "aspose.png";
// 将页面添加到文档的页面集合
Page page = doc.getPages().add();
// 将图像加载到流中
java.io.FileInputStream imageStream = new java.io.FileInputStream(new java.io.File("1.jpeg"));
// 设置边距,以便图像适合等。
page.getPageInfo().getMargin().setBottom(0);
page.getPageInfo().getMargin().setTop(0);
page.getPageInfo().getMargin().setLeft(0);
page.getPageInfo().getMargin().setRight(0);
page.setCropBox(new com.aspose.pdf.Rectangle(0, 0, 400, 400));
// 创建图像对象
Image image1 = new Image();
// 将图像添加到该部分的段落集合中
page.getParagraphs().add(image1);
// 设置图片文件流
image1.setImageStream(imageStream);
// 保存生成的 PDF 文件
doc.save("image-to-pdf.pdf");
在 Java 中将多个图像转换为 PDF
以下是在 Java 中将多个图像转换为单个 PDF 文件的步骤。
- 创建 Document 类的实例。
- 从文件夹中获取图像文件的列表,并为每个图像执行以下操作:
- 使用 Document.getPages().add() 方法将新的 Page 添加到 PDF 文档并设置页面的边距。
- 将图像文件加载到 FileInputStream 对象中。
- 使用 Page.getParagraphs().add(Image) 方法向页面添加新的 Image。
- 使用 Image.setImageStream() 方法设置图像的流。
- 最后,使用 Document.save(String) 方法保存 PDF 文档。
以下代码示例显示了在 Java 中将多个图像转换为单个 PDF。
// 创建一个新文档
Document doc = new Document();
// 图像目录
File imageDir = new File("D:\\images\\");
for(File image: imageDir.listFiles()) {
// 将页面添加到文档的页面集合
Page page = doc.getPages().add();
// 将图像加载到流中
java.io.FileInputStream imageStream = new java.io.FileInputStream(new java.io.File(image.getPath()));
// 设置边距,以便图像适合等。
page.getPageInfo().getMargin().setBottom(0);
page.getPageInfo().getMargin().setTop(0);
page.getPageInfo().getMargin().setLeft(0);
page.getPageInfo().getMargin().setRight(0);
page.setCropBox(new com.aspose.pdf.Rectangle(0, 0, 400, 400));
// 创建图像对象
Image image1 = new Image();
// 将图像添加到该部分的段落集合中
page.getParagraphs().add(image1);
// 设置图片文件流
image1.setImageStream(imageStream);
}
// 保存生成的 PDF 文件
doc.save("images-to-pdf.pdf");
图像到 PDF Java 转换器 - 获得免费许可证
您可以通过 获得免费的临时许可证 将图像转换为 PDF,而不受评估限制。
Java PDF API - 阅读更多
您可以使用 documentation 探索更多关于 Aspose.PDF for Java 的信息。如果您有任何疑问,请随时通过我们的 论坛 告诉我们。
结论
在本文中,您学习了如何在 Java 中将图像转换为 PDF 格式。此外,您还了解了如何以编程方式将多个图像转换为单个 PDF。因此,您可以在应用程序中轻松执行任何类型的图像到 PDF 的转换。