核心内容摘要
那些不期而遇的心动,是男生“偷走”的温柔
军工级富文本内容迁移解决方案技术评估日志2023年X月X日 于长沙研发中心
需求拆解与技术调研
1 核心需求矩阵需求类型技术指标信创要求Word粘贴保留形状/表格/公式等复杂样式图片自动转存OSS支持银河麒麟V10飞腾FT-2000环境文档导入支持Office/PDF格式解析保持原始排版通过龙芯LoongArch架构验证公众号抓取自动下载远程图片并替换为OSS地址在奇安信浏览器v
0龙芯3A5000平台测试通过
2 市场方案对比竞品分析表供应商产品名称信创适配性买断报价致命缺陷某某互联WebOffice SDK仅x86架构62万无国产CPU二进制包某某软件DocHub缺少龙芯MIPS支持78万图片强制BASE64编码自研方案CKEditor魔改套件全栈国产化适配
万需投入2名高级Java工程师泽优软件WordPaster全栈国产化适配
万需投入1名前端工程师
技术实现路径
1 系统架构设计调用POST前端Vue2组件CKEditor插件JSP服务端阿里云OSSMySQL信创环境验证集群
2
关键技术选型文档解析引擎Apache POI
2 PDFBox
0需针对龙芯重编译公式转换MathJax
2 自研OMML2LaTeX转换器跨浏览器方案ES5语法降级 IE8专用polyfill
核心代码实现
1 前端插件注册Vue2环境// wordPastePlugin.jsCKEDITOR.plugins.add(wordpaste,{init:function(editor){editor.addCommand(importWord,{exec:function(){constfileInputdocument.createElement(input);fileInput.typefile;fileInput.accept.doc,.docx,.pdf;fileInput.onchange(e)this._handleFile(e.target.files[0]);fileInput.click();}});editor.ui.addButton(WordPaste,{label:导入文档,command:importWord,icon:this.pathicons/word.png});editor.on(paste,this._handlePasteEvent);},_handleFile:function(file){constformDatanewFormData();formData.append(file,file);axios.post(/jsp/upload.jsp,formData,{headers:{Content-Type:multipart/form-data}}).then(response{this.insertHtml(response.data.html);});}});
2 服务端文档解析JSP示例% page importorg.apache.poi.xwpf.usermodel.* % % page importcom.aliyun.oss.* % % // 国密SM3文件校验 String fileHash SM3Util.hash(request.getPart(file).getInputStream()); // 多格式分流处理 String ext FilenameUtils.getExtension(filename); switch(ext) { case docx: XWPFDocument doc new XWPFDocument( request.getPart(file).getInputStream() ); // 表格转换逻辑... break; case pdf: PDDocument pdf PDDocument.load( request.getPart(file).getInputStream() ); // PDFBox解析处理... %
3 龙芯平台编译
注意事项# 龙芯MIPS64架构编译命令./configure --hostmips64el-loongson-linux\--with-java-home/opt/loongson/jdk8\CFLAGS-marchloongson3a# 生成WPS文档解析的so库gcc -shared -fPIC wps_parser.c -o libwpsparser.so\-I/opt/loongnix/office/include
信创环境验证报告
1 兼容性测试数据测试环境Word样式保留率公式转换成功率100页PPT耗时银河麒麟V10鲲鹏
9
7%
9
2%
3s统信UOS飞腾FT-2000/
6
1%
9
8%
1sIE8 on Windows XP
8
5%
8
4%
7s
2 典型问题解决方案龙芯WPS字体缺失预装党政机关GB18030字体包IE8内存泄漏采用分片加载定时GC策略奇安信浏览器CSS兼容!important强制样式覆盖
商务实施关键点源代码交付标准包含ARM/MIPS架构的Makefile提供国密算法SM4/SM3的实现类附CNAS认证的代码审计报告合同特殊条款第七条 知识产权条款 - 乙方需转让全部技术专利含PCT国际专利 - 甲方有权对代码进行军品级安全改造 - 禁止乙方在5年内向同类军工单位提供相似技术交付里程碑第15日完成在湖南省政务云平台的部署验证第30日通过军委装备发展部信息安全检测第45日获得麒麟软件NeoCertify认证
后续优化方向二进制差异存储研发基于rsync的文档增量更新算法涉密内容检测集成中科院的敏感信息识别引擎多级缓存策略针对党政机关大文件加载优化备注今日与集团CIO汇报后决定采用85万买断分3期支付的合作模式。
突然意识到需要立即启动保密室建设——毕竟这些代码将来可能要运行在南海岛礁的哨所电脑里。
明天的党组会上得重点讨论如何通过等保
0三级认证的实施方案了。
复制插件说明此教程以CKEditor
x为例使用其他编辑器的查看对应教程。
将下列文件夹复制到项目中/WordPaster/ckeditor/plugins/imagepaster/ckeditor/plugins/netpaster/ckeditor/plugins/pptpaster/ckeditor/plugins/pdfimport上传插件上传插件文件夹将imagepaster,netpaster文件夹上传到现有项目ckeditor/plugins目录中在工具栏中增加插件按钮CKEDITOR.config.extraPluginszycapture,imagepaster,importwordtoimg,netpaster,wordimport,excelimport,pptimport,pdfimport,importword,exportword,importpdf;引用js初始化控件WordPaster.getInstance({//上传接口http://www.ncmem.com/doc/view.aspx?idd88b60a2b0204af1ba62fa66288203edPostUrl:api,//为图片地址增加域名http://www.ncmem.com/doc/view.aspx?id704cd302ebd346b486adf39cf4553936ImageUrl:,//设置文件字段名称http://www.ncmem.com/doc/view.aspx?idc3ad06c2ae31454cb418ceb2b8da7c45FileFieldName:file,//提取图片地址http://www.ncmem.com/doc/view.aspx?id07e3f323d22d4571ad213441ab8530d1ImageMatch:,Cookie:PHPSESSID});//加载控件配置上传接口WordPaster.getInstance({//上传接口http://www.ncmem.com/doc/view.aspx?idd88b60a2b0204af1ba62fa66288203edPostUrl:api,//为图片地址增加域名http://www.ncmem.com/doc/view.aspx?id704cd302ebd346b486adf39cf4553936ImageUrl:,//设置文件字段名称http://www.ncmem.com/doc/view.aspx?idc3ad06c2ae31454cb418ceb2b8da7c45FileFieldName:file,//提取图片地址http://www.ncmem.com/doc/view.aspx?id07e3f323d22d4571ad213441ab8530d1ImageMatch:,Cookie:%clientCookie%,event:{dataReady:function(e){//e.word,//e.imgs:tag1,tag2,tag3console.log(e.imgs)}}});//加载控件注意
如果接口字段名称不是file请配置FileFieldName。
ueditor接口中使用的upfile字段点击查看详细教程配置ImageMatch用于匹配JSON数据点击查看详细教程配置ImageUrl用于为图片增加域名前缀点击查看详细教程配置Session如果接口有权限验证登陆验证SESSION验证请配置COOKIE。
或取消权限验证。
参考点击查看详细教程说明
请先测试您的接口点击查看详细教程功能演示编辑器界面导入Word文档,支持doc,docx导入Excel文档,支持xls,xlsx粘贴Word一键粘贴Word内容自动上传Word中的图片保留文字样式。
Word转图片一键导入Word文件并将Word文件转换成图片上传到服务器中。
导入PDF一键导入PDF文件并将PDF转换成图片上传到服务器中。
导入PPT一键导入PPT文件并将PPT转换成图片上传到服务器中。
上传网络图片一键自动上传网络图片自动下载远程服务器图片自动上传远程服务器图片下载示例点击下载完整示例