Java 获取Word中指定图片的坐标位置

Posted E-iceblue

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 获取Word中指定图片的坐标位置相关的知识,希望对你有一定的参考价值。

本文介绍通过Java程序获取Word文档中指定图片的坐标位置。

程序运行环境:

  • Word测试文档:.docx 2013
  • Free Spire.doc.jar 3.9.0
  • IntelliJ IDEA
  • JDK 1.8.0

方法步骤:

1. 指定文件路径,本次测试代码路径为项目文件夹路径。即在IDEA项目文件下存入用于测试的Word文档,如:C:\\Users\\Administrator\\IdeaProjects\\Picture_Doc\\input.docx。文件路径也可自定义为其他路径。

2. 在程序中引入jar文件,如下图:

 

3.Java程序代码

import com.spire.doc.*;
import com.spire.doc.documents.DocumentObjectType;
import com.spire.doc.documents.Paragraph;
import com.spire.doc.fields.DocPicture;

public class GetCoordinatesOfPicture {
    public static void main(String[] args) {
        //加载Word测试文档
        Document doc = new Document();
        doc.loadFromFile("input.docx");

        //遍历section
        for (int a = 0; a<doc.getSections().getCount();a++)
        {
            Section section = doc.getSections().get(a);

            //遍历paragraph段落
            for (int b =0 ;b<section.getParagraphs().getCount();b++)
            {
                Paragraph paragraph = section.getParagraphs().get(b);

                //遍历段落中的对象
                for (int i = 0; i < paragraph.getChildObjects().getCount(); i++)
                {
                    DocumentObject docobj = paragraph.getChildObjects().get(i);

                    //判断对象是否为图片
                    if (docobj.getDocumentObjectType()== DocumentObjectType.Picture)
                    {
                        DocPicture picture = (DocPicture) docobj ;

                        if (picture.getTitle().equals("图片4"))//定位标题为“图片4”的图片
                        {
                            //获取图片坐标位置
                            float x = picture.getHorizontalPosition();
                            float y = picture.getVerticalPosition();
                            System.out.println("坐标位置为:\\n X=" + x + " Y=" + y);
                        }
                    }
                }
            }
        }

    }
}

坐标获取结果:

 

原创文章,如需转载请务必注明出处!

 

以上是关于Java 获取Word中指定图片的坐标位置的主要内容,如果未能解决你的问题,请参考以下文章

如何在word中指定范围,在指定位置自动生成目录?

如何在面板控件中指定图片框的位置而不是使用foreach?

java怎么读取文档中指定内容

通过windows画图软件(工具)确定图像中指定区域的坐标范围知道坐标范围就可以批量对图像进行裁剪(crop)操作

js怎么获取表格中指定行某一列的值

js获取一个字符串中指定字符串第n次出现的位置