java读取pdf文件内容(java获取pdf内容带格式)


在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文档作为示例,该文档的第一页有两张图片(如下图所示)。

Java 获取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()));
        }
    }
}

获取结果如下:

Java 获取PDF文档中的图片的坐标信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发表评论

登录后才能评论