图像在各种文档中起着至关重要的作用。它们有助于传达难以以纯文本形式呈现的复杂信息,并使文档更具视觉吸引力。在本文中,我们将重点介绍如何使用 Spire.PDF for Java 通过 Java 应用程序在 PDF 文档中插入、替换或删除图像。
安装 Spire.PDF for Java
首先,您需要在 Java 程序中添加 Spire.Pdf.jar 文件作为依赖项。JAR 文件可以从此链接下载。如果您使用 Maven,则可以将以下代码添加到项目的 pom.xml 文件中,从而在应用程序中导入 JAR 文件。
<repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url>https://repo.e-iceblue.cn/repository/maven-public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.pdf</artifactId>
<version>10.11.2</version>
</dependency>
</dependencies>
将图像插入现有 PDF 文档
以下是将图像插入到现有 PDF 文档中的具体步骤:
- 初始化 PdfDocument 类的实例。
- 使用 PdfDocument.loadFromFile() 方法加载 PDF 文档。
- 使用 PdfDocument.getPages().get() 方法在 PDF 文档中获取所需的页面。
- 使用 PdfImage.fromFile() 方法加载图像。
- 指定页面上图像区域的宽度和高度。
- 指定 X 和 Y 坐标以开始绘制图像。
- 使用 PdfPageBase.getCanvas().drawImage() 方法在页面上绘制图像。
- 使用 PdfDocument.saveToFile() 方法保存结果文档。
- Java
import com.spire.pdf.FileFormat;
import com.spire.pdf.PdfDocument;
import com.spire.pdf.PdfPageBase;
import com.spire.pdf.graphics.*;
public class AddImage {
public static void main(String []args){
//初始化 PdfDocument 类的实例
PdfDocument pdf = new PdfDocument();
pdf.loadFromFile("Java语言1.pdf");
//获取所需的页面
PdfPageBase page = pdf.getPages().get(0);
//加载图像
PdfImage image = PdfImage.fromFile("image1.jpg");
//指定页面上图像区域的宽度和高度
float width = image.getWidth() * 0.70f;
float height = image.getHeight() * 0.60f;
//指定 X 和 Y 坐标以开始绘制图像
float x = 100f;
float y = 130f;
//在页面指定位置上绘制图像
page.getCanvas().drawImage(image, x, y, width, height);
//保存结果文档
pdf.saveToFile("AddImage.pdf", FileFormat.PDF);
}
}
替换 PDF 文档中的图像
以下是替换 PDF 文档图像的具体步骤:
- 初始化 PdfDocument 类的实例。
- 使用 PdfDocument.loadFromFile() 方法加载 PDF 文档。
- 使用 PdfDocument.getPages().get() 方法在 PDF 文档中获取所需的页面。
- 使用 PdfImage.fromFile() 方法加载图像。
- 创建 PdfImageHelper 类。
- 使用 PdfImageHelper.getImagesInfo() 方法获取页面上所有图片集合。
- 使用 PdfImageHelper.replaceImage() 方法替换集合中指定索引的图片。
- 使用 PdfDocument.saveToFile() 方法保存结果文档。
- Java
import com.spire.pdf.FileFormat;
import com.spire.pdf.PdfDocument;
import com.spire.pdf.PdfPageBase;
import com.spire.pdf.graphics.PdfImage;
import com.spire.pdf.utilities.PdfImageHelper;
import com.spire.pdf.utilities.PdfImageInfo;
public class ReplaceImage {
public static void main(String []args){
//初始化 PdfDocument 类的实例
PdfDocument doc = new PdfDocument();
//加载 PDF 文档
doc.loadFromFile("添加图片.pdf");
//获取所需的页面
PdfPageBase page = doc.getPages().get(0);
//加载图像
PdfImage image = PdfImage.fromFile("image2.jpg");
// 获取页面中的图片信息
PdfImageHelper imageHelper = new PdfImageHelper();
PdfImageInfo[] imageInfos = imageHelper.getImagesInfo(page);
// 替换页面中的第一张图片
imageHelper.replaceImage(imageInfos[0], image);
//保存结果文档
doc.saveToFile("替换图片.pdf", FileFormat.PDF);
//释放对象
doc.dispose();
}
}
删除 PDF 文档中的指定图像
以下是从 PDF 文档中删除图像的具体步骤:
- 初始化 PdfDocument 类的实例。
- 使用 PdfDocument.loadFromFile() 方法加载 PDF 文档。
- 使用 PdfDocument.getPages().get() 方法在 PDF 文档中获取所需的页面。
- 创建 PdfImageHelper 类。
- 使用 PdfImageHelper.getImagesInfo() 方法获取页面上所有图片集合。
- 使用 PdfImageHelper.deleteImage() 方法删除页面上的特定图像。
- 使用 PdfDocument.saveToFile() 方法保存结果文档。
- Java
import com.spire.pdf.*;
import com.spire.pdf.utilities.PdfImageHelper;
import com.spire.pdf.utilities.PdfImageInfo;
public class DeleteImage
{
public static void main(String[] args)
{
//初始化 PdfDocument 类的实例
PdfDocument pdf = new PdfDocument();
//加载 PDF 文档
pdf.loadFromFile("添加图片.pdf");
//获取所需的页面
PdfPageBase page = pdf.getPages().get(0);
// 获取PDF页面中的图像信息
PdfImageHelper imageHelper = new PdfImageHelper();
PdfImageInfo[] imageInfos = imageHelper.getImagesInfo(page);
// 删除指定图像
imageHelper.deleteImage(imageInfos[0]);
//保存结果文档
pdf.saveToFile("删除图片.pdf", FileFormat.PDF);
//释放对象
pdf.dispose();
}
}
申请临时 License
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。