从 PDF 文档中搜索和获取图像
Contents
[
Hide
]
ImagePlacementAbsorber 允许您在 PDF 文档的所有页面中搜索图像。
要在整个文档中搜索图像:
- 调用 Pages 集合的 Accept 方法。Accept 方法接受一个 ImagePlacementAbsorber 对象作为参数。这将返回一个 ImagePlacement 对象的集合。
- 遍历 ImagePlacements 对象并获取其属性(图像、尺寸、分辨率等)。
以下代码片段显示如何在文档中搜索其所有图像。
package com.aspose.pdf.examples;
import java.io.IOException;
import com.aspose.pdf.*;
public class ExampleSearchAndGet {
private static String _dataDir = "/home/admin1/pdf-examples/Samples/";
public static void SearchImages() throws IOException {
// 打开文档
Document doc = new Document(_dataDir + "SearchAndGetImages.pdf");
// 创建 ImagePlacementAbsorber 对象以执行图像位置搜索
ImagePlacementAbsorber abs = new ImagePlacementAbsorber();
// 接受所有页面的吸收器
doc.getPages().accept(abs);
// 遍历所有 ImagePlacements,获取图像和 ImagePlacement 属性
for (ImagePlacement imagePlacement : abs.getImagePlacements()) {
// 使用 ImagePlacement 对象获取图像
// XImage image = imagePlacement.getImage();
// 显示所有位置的图像位置属性
System.out.println("图像宽度:" + imagePlacement.getRectangle().getWidth());
System.out.println("图像高度:" + imagePlacement.getRectangle().getHeight());
System.out.println("图像 LLX:" + imagePlacement.getRectangle().getLLX());
System.out.println("图像 LLY:" + imagePlacement.getRectangle().getLLY());
System.out.println("图像水平分辨率:" + imagePlacement.getResolution().getX());
System.out.println("图像垂直分辨率:" + imagePlacement.getResolution().getY());
}
}
}
要从单个页面获取图像,请使用以下代码:
doc.getPages().get_Item(1).accept(abs)