aspose-words中插入附件及遇到的问题

aspose-words版本:21.1

java:1.8

目标:

前端使用tinymce编辑一段内容,后端使用aspose-words将html转为word,并将html中的附件转换为word中的附件。

形如:

实现方案:

使用正则表达式找出需要替换的附件位置,然后再使用aspose-words替换为附件。

关键代码:

java 复制代码
    public void insertOleObjectAsIcon() throws Exception
    {
        Document doc = new Document();
        DocumentBuilder builder = new DocumentBuilder(doc);
		// windows开发环境使用绝对路径,生产环境可以使用文件流进行传输
        builder.insertOleObjectAsIcon("D:/source.docx", "Word.Document.12",false,"D:/word.ico" ,"attachmentFile.docx");
        doc.save("D:/output.docx");
    }

遇到的问题:

  1. 使用insertOleObject方法会导致只显示图片icon,不显示文件名称。prepsentation参数不能为null,会报空指针.
  2. java.io.EOFException : End of file reached,源码被加扰,无法明确具体原因,替换为ico后缀的图片文件后,错误消失。
  3. java.lang.UnsupportedOperationException : Not implemented format is met. 源码被加扰,无法明确具体原因,猜测文件过大(6K)。具体阈值未知。
  4. java.lang.ArrayIndexOutBoundsException: 456 文件过小(1K)。具体阈值未知。

使用2.3K大小的ico,操作成功并正常显示。

参考:

相关推荐
lang201509285 分钟前
Spring MVC文件上传:commons-fileupload解析全流程
java·spring·mvc
benpaodeDD5 分钟前
黑马SpringBoot3整合springMVC,mybatis
java·spring boot
极客Kimi8 分钟前
从Java架构到AI架构:机器学习、深度学习与LLM的技术融合之路
java·人工智能·架构
梁萌10 分钟前
Java中正则表达式提取PDF内容
java·pdfbox·pdf解析·内容提取·正则解析
战族狼魂10 分钟前
Python 完整实现 BCrypt GUI 工具
java·前端·python
Overt0p12 分钟前
抽奖系统(7)
java·开发语言·spring boot·redis·tomcat·rabbitmq
Dylan的码园15 分钟前
深入浅出Java排序:从基础算法到实战优化(上)
java·数据结构·算法
J_liaty16 分钟前
前后端跨域处理全指南:Java后端+Vue前端完整解决方案
java·前端·vue.js·spring boot·后端
颜淡慕潇17 分钟前
深度解读 Spring Boot 3.5.9— 工程视角的稳健演进与价值释放
java·spring boot·后端·spring
夜郎king18 分钟前
一文掌握:Java项目目录结构文档自动化生成
java·自动化·java原生目录生成