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

news2024/11/14 21:41:22

aspose-words版本:21.1
java:1.8

目标:
前端使用tinymce编辑一段内容,后端使用aspose-words将html转为word,并将html中的附件转换为word中的附件。
形如:
在这里插入图片描述
实现方案:
使用正则表达式找出需要替换的附件位置,然后再使用aspose-words替换为附件。
关键代码:

    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,操作成功并正常显示。

参考:

  • Aspose.Words 实现在word文档中插入附件功能 使用InsertOleObject插入流对象 结果文档始终是一张图片 这个问题怎么解决?
  • 提取文件原生ico图标

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2053508.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

setData的 Qt::CheckStateRole是model中checkbox的状态(选中否)

checkbox的状态 bool MissionModel::setData(const QModelIndex &index, const QVariant &value, int role) { if (role Qt::CheckStateRole && col 3 ) { } }

【嵌入式裸机开发】基于stm32的照相机(OV7670摄像头、STM32、TFTLCD)

基于STM32的照相机 准备工作最终效果一、下位机1、主函数2、OV7670初始化 二、上位机1、控制拍照2、接收图片数据 准备工作 一、硬件及片上资源: 1,串口1(波特率:921600,PA9/PA10通过usb转ttl连接电脑,或者其他方法)上传图片数据至上位机 2,串口2(波特率:115200,PA…

Opencv学习-直方图应用

1. 直方图均衡化 如果一个图像的直方图都集中在一个区域,那么整体图像的对比度比较小,不便于图像中纹理的识别。例如,如果相邻的两个像素灰度值分别是 120 和 121 ,那么仅凭肉眼是无法区别出来的。同时,如果图像中所…

音频提取软件分享:6款好用音频提取工具推荐

在现代数字媒体中,音频提取已经成为一项至关重要的技能。无论你是视频创作者、播客主持人,还是音乐爱好者,从视频、电影或其他多媒体文件中提取音频,都是一项非常有用的操作。 本文将围绕音频提取,介绍这项技术的应用、…

一篇文章带你实现大模型及RAG入门---小白速进

项目概述:随着人工智能技术的飞速发展,大模型(Large Models)和检索增强型生成(Retrieval-Augmented Generation, RAG)已成为自然语言处理(NLP)领域的热点。大模型以其强大的理解和生…

Java二十三种设计模式-责任链模式(17/23)

责任链模式:实现请求处理的灵活流转 引言 在这篇博客中,我们深入探讨了责任链模式的精髓,从其定义和用途到实现方法,再到使用场景、优缺点、与其他模式的比较,以及最佳实践和替代方案,旨在指导开发者如何…

力扣第 411 场周赛题解

3258. 统计满足 K 约束的子字符串数量 I 给你一个 二进制 字符串 s 和一个整数 k。 如果一个 二进制字符串 满足以下任一条件,则认为该字符串满足 k 约束: 字符串中 0 的数量最多为 k。字符串中 1 的数量最多为 k。 返回一个整数,表示 s …

系统编程-进程初步1

5 进程初步 一、认识进程 -- 进程Process是指计算机中已运行的程序,是系统进行资源分配和调度的基本单位,是操作系统结构的基础 -- 程序运行起来就是一个进程 进程存在于运行内存中程序存在于硬盘中 -- windows下查看进程使用任务管理器进行查看 1…

EXCEL——Vlookup17个高级用法

大纲 一、基本语法 1、参数详解 二、入门篇 1、单条件查找 2、屏蔽查找返回的错误值 三、进阶篇 1、反向查找 2、包含查找 3、区间查找 4、含通配符查找 5、多列查找 6、多区域查找 四、高级篇 1、多条件查找 2、合并单元格查找 3、带合并单元格的多条件查找 …

轻松玩转音频剪辑:推荐四大必备工具!

在这个多媒体时代,音频剪辑技能变得至关重要。无论是制作短视频、音频节目,还是音乐创作,一款得心应手的音频剪辑工具都能让你事半功倍。今天,我们将推荐几款热门音频剪辑工具,助你轻松玩转声音世界 福昕音频剪辑 链…

【数学建模】趣味数学模型——等额还款数学模型

问题 在银行贷款中,通常采用等额还款。假定银行贷款的年利率为 p,贷款 k 元,分 m 年采用每月等额还款方式还清。问每月还款多少钱?总共还的钱是多少?每月还款中还本金和利息各是多少元? 如果考虑每月等额…

Webrtc之SDP协议

SDP简介 SDP 最常用于 RTC 实时通话的协商过程,在 WebRTC 中,通信双方在连接阶段使用 SDP 来协商后续传输过程中使用的音视频编解码器(codec)、主机候选地址、网络传输协议等。 在实际的应用过程中,通信双方可以使用 HTTP、WebSocket、Data…

MySQL数据库主从复制

主从复制原理 MySQL的复制类型 基于语句的复制 (默认)基于行的复制混合类型的复制MySQL主从复制的工作过程 主从复制设置 主从复制时基于二进制文件的所以需要打开二进制文件 主数据库 在MySQL配置文件/etc/my.cnf修改或增加 #启用了MySQL的二进制日…

集合及数据结构第三节————包装类和简单认识泛型

系列文章目录 集合及数据结构第三节————包装类和简单认识泛型 包装类和简单认识泛型 基本数据类型和对应的包装类装箱和拆箱泛型泛型类的使用裸类型(Raw Type) (了解)泛型如何编译的泛型的上界泛型方法 文章目录 系列文章目录集合及数据结构第三节…

linux上常见问题

1.普通用户下,不能使用sudo 解决方法 1.切换到root用户下执行该指令是没有问题的 2.更改配置文件sudoers 1.进入root用户下:su - 2.编辑sudoers :visudo 此时就打开了一个文件 3.在该文件找到这么一行内容:root ALL(ALL) ALL 4.在该行的…

CUDA-MODE课程笔记 第8课: CUDA性能检查清单

我的课程笔记,欢迎关注:https://github.com/BBuf/how-to-optim-algorithm-in-cuda/tree/master/cuda-mode CUDA-MODE课程笔记 第8课: CUDA性能检查清单 课程笔记 这节课实际上算是CUDA-MODE 课程笔记 第一课: 如何在 PyTorch 中 profile CUDA kernels 这…

(16)prometheus(普罗米修斯)监控的搭建

prometheus是由go语言编写的,监控服务器是否正常运行的工具,使用experter工具收集数据,传到prometheus服务器。可以结合grafana图形化和pagerduty报警发送有邮件和信息。 实验环境: 关掉防火墙和selinux grafana.example.com 1…

为什么CNAPP将会是网络安全领域的一场革命?

随着越来越多的组织开始业务上云,云原生应用保护变得越来越复杂。众多高度碎片化产品,很难去保护一个广泛的、动态变化的攻击场景。当前想要解决这一难题,有一个很好的思路,就是云原生应用保护平台(CNAPP)。…

第二届机器人与软件工程前沿国际会议在贵阳闭幕

2024年8月13日,第二届机器人与软件工程前沿国际会议(FRSE 2024)在贵阳圆满闭幕。 本次大会由长沙理工大学主办,贵州大学、湖南科技大学、爱迩思出版社(ELSP),ESBK国际学术交流中心、AC学术平台…

Python 办公自动化 处理 Excel 数据 【1】推荐

话说学好办公自动化,走遍天下都不怕!!! 好的,现在开始。 因为是一些办公自动化的应用场景,所以需要电脑支持excel、word和ppt以及python的运行环境。 如果有电脑不支持Excel word ppt的以及python环境下载安装配置可…