aspose Word for java 插入图片,操作图片相关问题

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小白,杜绝不去使用直接抄袭发布乱七八糟的东西,亲测可用,有问题留言

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yizhi-w

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值