本文介绍如何使用Spire.Doc for Java获取Word文档中指定图片的坐标位置、图片大小以及图片的文字环绕方式等。
import com.spire.doc.*;
import com.spire.doc.documents.DocumentObjectType;
import com.spire.doc.documents.Paragraph;
import com.spire.doc.fields.DocPicture;
public class GetPictureDetails {
public static void main(String[] args) {
//加载Word测试文档
Document doc = new Document();
doc.loadFromFile("测试.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 ;
//获取标题为“图片1”的图片
if (picture.getTitle().equals("图片1"))
{
//获取图片坐标位置
float x = picture.getHorizontalPosition();
float y = picture.getVerticalPosition();
//获取图片宽度、高度
float width = picture.getWidth();
float height = picture.getHeight();
//获取图片文字环绕
String wrappingstyle = picture.getTextWrappingStyle().toString();//图片文字环绕方式
String wrappingtype = picture.getTextWrappingType().toString();//环绕文字类型
System.out.println("坐标位置为: X =" + x + " Y=" + y
+ "\n 图片宽:"+ width + " 图片高:" + height
+ "\n 图片的文字环绕方式:" + wrappingstyle + " 环绕文字类型:" + wrappingtype);
}
}
}
}
}
}
}
获取结果: