在PDF文檔中,圖片的坐標信息能夠幫助我們更好地對圖片進行操作。本文就將介紹如何通過Java代碼來獲取PDF文檔中已有圖片的坐標信息。
此次代碼演示用到的工具仍舊是一款名為Free Spire.PDF for Java的免費控制項。在運行代碼前,我們需要將控制項里的相關Jar包導入IDEA中。導入方式有兩種:
1、手動導入。在E-iceblue中文官網上下載產品安裝包,解壓後找到lib文件夾下的Spire.Pdf.jar,然後進行手動導入;
2、Maven倉庫導入。在IDEA中創建Maven倉庫,然後在pom.xml中引用以下代碼,最後點擊「Import Changes」即可。
<repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url>http://repo.e-iceblue.com/nexus/content/groups/public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.pdf.free</artifactId>
<version>3.9.0</version>
</dependency>
</dependencies>
代碼示例
我將用一個PDF文檔作為示例,該文檔的第一頁有兩張圖片(如下圖所示)。

在導入Jar包後,我們就可以在IDEA中創建一個Java class類,然後鍵入以下代碼來獲取示例文檔中的圖片的坐標信息。
import com.spire.pdf.PdfDocument;
import com.spire.pdf.PdfPageBase;
import com.spire.pdf.exporting.PdfImageInfo;
import java.awt.geom.Rectangle2D;
public class GetCoordinateOfImages {
public static void main(String[] args) {
//創建PdfDocument對象
PdfDocument doc = new PdfDocument();
//載入一個PDF文檔
doc.loadFromFile("C:\Users\Test1\Desktop\Sample.pdf");
//獲取第一頁
PdfPageBase page = doc.getPages().get(0);
//獲取第一頁上的圖片信息
PdfImageInfo[] imageInfo = page.getImagesInfo();
//遍歷圖片信息
for (int i = 0; i < imageInfo.length; i++) {
//獲取指定圖片的邊界屬性
Rectangle2D rect = imageInfo[i].getBounds();
//獲取左上角坐標
System.out.println(String.format("第%d張圖片的左上角坐標為:(%f, %f)", i+1, rect.getX(), rect.getY()));
}
}
}
獲取結果如下:

原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/209210.html