aspose Word for java 插入图片,操作图片相关问题
我使用的方式是,替换标签
- 插入图片必须的东西
- 具体操作
循环Word的文本找标签,然后替换成图片
text: Word中的标签文本
key: 标签,与text文本对应
value: key 的值(绝对路径) 没有路径程序去哪找图片呢?
解读builder.insertImage()方法的参数
/**
* fileName:绝对路径
* horzPos:相对水平位置,属性根据需要可选
* left:和上面相对水平位置一起使用,给具体数值
* vertPos:相对垂直位置,属性根据需要可选
* top:和上面相对垂直位置一起使用,给具体数值
* width:图片宽度
* height:图片高度
* wrapType:图片的布局,可选具体布局(环绕、在文字下、在文字上什么的)
*/
public Shape insertImage(String fileName, int horzPos, double left, int vertPos, double top, double width, double height, int wrapType)
附代码
Document doc = new Document(Paths.WORDTEMPLATEPATH + "xxxx.docx");
DocumentBuilder builder = new DocumentBuilder(doc);
//插入图片的方法
NodeCollection runs = doc.getChildNodes(NodeType.PARAGRAPH, true);
for (int i = 0; i < runs.getCount(); i++) {
Node r = runs.get(i);
String text = r.getText();
//获取键
for (String key : maps.keySet()) {
//如果包含键
if (text.contains(key) && maps.get(key).contains("F:")) {
// 锁定到当前段落即实现页面变换
builder.moveTo(r);
// insertImage中参数含义自行查询
builder.insertImage(maps.get(key), RelativeHorizontalPosition.PAGE, 0,
RelativeVerticalPosition.PAGE, 0, 500, 280, WrapType.INLINE);
}
}
}
path = Paths.WORDPATH + df.format(new Date()) + ".docx";
doc.save(path);
来自java小白,杜绝不去使用直接抄袭发布乱七八糟的东西,亲测可用,有问题留言