news 2026/5/28 0:35:22

医院OA系统集成百度UMEDITOR后,如何高效处理PDF文献中的图片转存?

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
医院OA系统集成百度UMEDITOR后,如何高效处理PDF文献中的图片转存?

2023年XX月XX日 | 企业级编辑器插件选型与开发日志


一、需求背景与市场调研

1.1 核心需求痛点
  • 政务项目特殊性:需100%兼容信创环境(麒麟/UOS+龙芯/鲲鹏)
  • IE8兼容:部分政务系统仍运行在Windows XP+IE8环境
  • 富文本保真:需支持政府公文要求的GB2312字体、MathType公式等复杂样式
  • 安全合规:所有文件需通过国产化加密算法传输(SM4)
1.2 厂商评估结果
厂商信创认证IE8支持买断报价央企案例
Microsoft 365齐全不支持¥398~498/人/年国务院某部委
WPS 365齐全不支持¥199~599/人/年国务院某部委
永中Office齐全不支持¥199~599/人/年国务院某部委
腾讯文档齐全不支持¥200~600/人/年国务院某部委
钉钉文档齐全不支持¥200~600/人/年国务院某部委
飞书齐全不支持¥200~600/人/年国务院某部委
石墨齐全不支持¥200~600/人/年国务院某部委
厂商A齐全支持¥85万国务院某部委
厂商B缺龙芯不支持¥45万某省政务云
厂商C齐全支持¥58万3家副省级政府

决策:选择厂商C,满足预算与技术红线,附赠源代码托管服务。


二、技术实施方案

2.1 架构设计

HTTP

SM4加密

JDBC

UEditor插件

SpringBoot代理层

华为云OBS

MySQL集群

信创存储服务器

2.2 关键代码实现

前端插件核心逻辑(Vue2适配版)

// ueditor-word-plugin.jsUE.registerUI('wordpaste',function(editor){// 创建按钮varbtn=newUE.UI.Button({name:'wordpaste',title:'公文粘贴',onclick:function(){// 监听粘贴事件editor.addListener('paste',function(type,clipboardData){if(clipboardData.files.length>0){// 调用华为云OBS上传接口uploadToHuaweiOBS(clipboardData.files[0]).then(url=>{editor.execCommand('insertHtml',``);});}});}});returnbtn;});// 信创环境检测functioncheckOS(){constua=navigator.userAgent;if(ua.indexOf('Kylin')!==-1)return'kylin';if(ua.indexOf('Loongson')!==-1)return'loongarch';}

后端文件处理(SpringBoot + 华为云OBS SDK)

@RestController@RequestMapping("/api/upload")publicclassGovFileController{@PostMapping("/word")publicResponseEntityhandleWordUpload(@RequestParam("file")MultipartFilefile,@RequestHeader("X-SM4-Key")Stringsm4Key){// 国密算法解密SM4Utilsm4=newSM4Util(sm4Key);byte[]decrypted=sm4.decrypt(file.getBytes());// 存储到华为云OBSObsClientobs=newObsClient("AK","SK","https://obs.cn-east-3.myhuaweicloud.com");StringobjectKey="gov/"+UUID.randomUUID()+".docx";obs.putObject("bucket-name",objectKey,newByteArrayInputStream(decrypted));returnResponseEntity.ok(Map.of("url","https://obs.example.com/"+objectKey,"signature",SM3Util.hash(file.getOriginalFilename())));}}

三、信创适配专项

3.1 国产化测试矩阵
环境测试结果
银河麒麟v10 + 龙芯公式渲染异常
统信UOS + 飞腾字体缺失
IE8 + Windows XP插件加载超时

解决方案

  1. 针对龙芯环境增加WASM版公式渲染器
  2. 预装GB2312字体包到系统镜像
  3. IE8采用ActiveX降级方案

四、商务与交付

4.1 合同关键条款
  • 授权模式:¥88万买断(含源代码及五年维护)
  • 罚则:若信创适配不达标,赔付合同金额200%
  • 交付物
    • 通过等保2.0三级测评报告
    • 中央政府采购网入围证书
    • 国资委某局项目验收单
4.2 实施里程碑
  • 第1周:完成UEditor插件内核开发
  • 第3周:通过鲲鹏920兼容性认证
  • 第6周:在XX省政务云完成部署

五、风险预警

  1. 龙芯性能瓶颈:实测在LoongArch架构下,100页Word解析耗时较x86长3倍
  2. 字体版权风险:需单独采购方正GB2312字体商业授权
  3. IE8内存泄漏:需每30分钟强制刷新编辑器实例

应对措施:建立专项技术保障基金(预算¥15万)。

(注:以上代码需配合厂商提供的SDK使用,敏感信息已脱敏处理)

复制插件目录

引入插件文件

UEditor 1.4.3.3示例

注意:不要重复引入jquery,如果您的项目已经引入了jq,则不用再引入jq-1.4

在工具栏中增加插件按钮

//工具栏上的所有的功能按钮和下拉框,可以在new编辑器的实例时选择自己需要的重新定义toolbars:[["fullscreen","source","|","zycapture","|","wordpaster","importwordtoimg","netpaster","wordimport","excelimport","pptimport","pdfimport","|","importword","exportword","importpdf"]]

初始化控件

varpos=window.location.href.lastIndexOf("/");varapi=[window.location.href.substr(0,pos+1),"asp/upload.asp"].join("");WordPaster.getInstance({//上传接口:http://www.ncmem.com/doc/view.aspx?id=d88b60a2b0204af1ba62fa66288203edPostUrl:api,//为图片地址增加域名:http://www.ncmem.com/doc/view.aspx?id=704cd302ebd346b486adf39cf4553936ImageUrl:"",//设置文件字段名称:http://www.ncmem.com/doc/view.aspx?id=c3ad06c2ae31454cb418ceb2b8da7c45FileFieldName:"file",//提取图片地址:http://www.ncmem.com/doc/view.aspx?id=07e3f323d22d4571ad213441ab8530d1ImageMatch:''});//加载控件

注意

如果接口字段名称不是file,请配置FileFieldName。ueditor接口中使用的upfile字段

点击查看详细教程

配置ImageMatch

匹配图片地址,如果服务器返回的是JSON则需要通过正则匹配

ImageMatch:'',

点击参考链接

配置ImageUrl

为图片地址增加域名,如果服务器返回的图片地址是相对路径,可通过此属性添加自定义域名。

ImageUrl:"",

点击查看详细教程

配置SESSION

如果接口有权限验证(登陆验证,SESSION验证),请配置COOKIE。或取消权限验证。
参考:http://www.ncmem.com/doc/view.aspx?id=8602DDBF62374D189725BF17367125F3

效果

编辑器界面

导入Word文档,支持doc,docx

导入Excel文档,支持xls,xlsx

粘贴Word

一键粘贴Word内容,自动上传Word中的图片,保留文字样式。

Word转图片

一键导入Word文件,并将Word文件转换成图片上传到服务器中。

导入PDF

一键导入PDF文件,并将PDF转换成图片上传到服务器中。

导入PPT

一键导入PPT文件,并将PPT转换成图片上传到服务器中。

上传网络图片

下载示例

点击下载完整示例

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/20 17:31:00

【30天精通汇编】Day 2: CPU架构与寄存器

【30天精通汇编】Day 2: CPU架构与寄存器📅 学习时间:4-5小时 🎯 学习目标:理解CPU工作原理,掌握x86寄存器 💡 难度:★★☆☆☆📝 Day 1 练习题答案 练习1: - 10110(二进…

作者头像 李华
网站建设 2026/5/20 16:48:20

维修SEW变频器MC07A110-503-4-01 08282781

SEW变频器 MC07A110-503-4-01 08282781 详细技术解析与应用指南 1. 产品概述与定位 SEW-EURODRIVE是全球领先的驱动技术供应商,其产品广泛应用于自动化、物料输送、工业生产和各种机械设备中。型号 MC07A110-503-4-01 属于SEW MOVIMOT 系列变频器,这是…

作者头像 李华
网站建设 2026/5/19 14:22:44

SEW变频器MC07A450-503-4-01 08283494

SEW变频器 MC07A450-503-4-01 (序列号 08283494) 详细技术解析与应用指南一、 设备概述与型号解读品牌与系列: SEW-EURODRIVE 是国际知名的驱动技术解决方案供应商。该变频器属于 SEW 的 MOVIMOT 系列,该系列以其紧凑型设计、强大的功能和灵活性著称&…

作者头像 李华
网站建设 2026/5/23 22:12:25

13. 数组

1.数组简介 2.数组的访问与遍历 3.多维数组 4.数组的注意事项1.数组简介 1).数组简介数组是C中一种"存储相同数据类型元素的连续内存集合", 可以把它想象成一排编号的储物柜: 每个储物柜(数组元素)类型相同, 有唯一的编号(下标), 且位置连续a.数组的大小在定义时必须…

作者头像 李华
网站建设 2026/5/20 11:14:46

SCI制图——火山图简介(一)

一、什么是火山图?——转录组与蛋白组数据分析的标配图表SCI领域的论文,尤其是涉及转录组测序或蛋白质组学的研究,您一定见过这样一张图:成千上万个散点分布在一个平面上,它们像喷发的岩浆一样向两侧上方扩散&#xff…

作者头像 李华