news 2026/9/3 3:33:48

教育课件PPT导入CKEDITOR后字体变化如何解决?

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
教育课件PPT导入CKEDITOR后字体变化如何解决?

项目需求解决方案

项目负责人:XXX
日期:2023年XX月XX日


一、需求分析与技术选型

1. 核心需求

  • 功能需求

    • Word粘贴功能:支持从Word复制内容直接粘贴到CKEditor,保留表格、形状、公式、字体(GB2312兼容)、颜色等样式。
    • Word/Excel/PPT/PDF导入功能:支持完整文档解析,图片自动上传至华为云OBS(二进制存储),保留所有样式。
    • 微信公众号内容粘贴:自动下载公众号图片并上传至OBS。
    • 信创兼容:支持Windows/macOS/Linux(中标麒麟、银河麒麟、统信UOS等)、IE8+、x86/ARM/龙芯架构。
    • 跨框架兼容:Vue2/Vue3/React/JSP均需支持。
  • 非功能需求

    • 集成方式:提供CKEditor插件包,工具栏增加按钮,不影响现有业务逻辑。
    • 授权模式:一次性买断,无项目数量限制,预算≤98万元。
    • 厂商资质:需提供5个央企/国企/政府项目案例(合同+转账凭证+信创认证+软著+营业执照+法人身份证)。

2. 技术选型

模块技术方案
前端编辑器CKEditor 5(官方扩展+自定义插件)
文档解析Apache POI(Word/Excel)、Apache PDFBox(PDF)、Aspose.Slides(PPT,商业授权)
公式处理MathType SDK + LaTeX→MathML转换(自定义解析器)
云存储华为云OBS SDK(Java版)
信创兼容交叉编译+浏览器兼容层(Polyfill)+字体回退机制
后端服务Spring Boot 2.7(JDK 8/11/17兼容)
数据库MySQL 8.0(主备同步)

二、核心功能实现

1. CKEditor插件开发(前端)

插件结构
/plugins/word-importer/ ├── plugin.js # CKEditor插件主文件 ├── dialog/ # 导入对话框组件(Vue3示例) │ └── ImportDialog.vue ├── adapters/ # 框架适配器(Vue2/React/JSP) │ ├── vue2-adapter.js │ ├── react-adapter.js │ └── jsp-adapter.jsp └── styles/ # 信创字体兼容样式 └── gov-fonts.css
关键代码(plugin.js)
importClassicEditorfrom'@ckeditor/ckeditor5-build-classic';import{Plugin}from'@ckeditor/ckeditor5-core';importButtonViewfrom'@ckeditor/ckeditor5-ui/src/button/buttonview';classWordImporterextendsPlugin{init(){consteditor=this.editor;editor.ui.componentFactory.add('wordImporter',()=>{constbutton=newButtonView();button.set({label:'导入Word',icon:'...',tooltip:true});});}}// 注册插件ClassicEditor.builtinPlugins.push(WordImporter);

2. 后端服务实现(Spring Boot)

文档解析服务
@RestController@RequestMapping("/api/import")publicclassDocumentImportController{@AutowiredprivateObsStorageServiceobsService;// Word粘贴处理@PostMapping("/paste/word")publicResponseEntitypasteFromWord(@RequestParam("html")Stringhtml,@RequestParam(value="images",required=false)MultipartFile[]images){// 解析HTML中的图片并上传OBSListimageUrls=Arrays.stream(images).map(img->obsService.upload(img,"word-images/")).collect(Collectors.toList());// 替换HTML中的本地路径为OBS URLStringprocessedHtml=replaceImagePaths(html,imageUrls);returnResponseEntity.ok(newImportResult(processedHtml));}}
华为云OBS集成
@ServicepublicclassObsStorageService{publicStringupload(MultipartFilefile,Stringdir){try{ObsClientobsClient=newObsClient(accessKey,secretKey,endpoint);StringobjectKey=dir+UUID.randomUUID()+"."+FilenameUtils.getExtension(file.getOriginalFilename());obsClient.putObject("your-bucket-name",objectKey,file.getInputStream());return"https://"+endpoint+"/"+objectKey;}catch(Exceptione){thrownewRuntimeException("OBS上传失败",e);}}}

3. 信创兼容性处理

字体回退机制
/* gov-fonts.css */@font-face{font-family:'GB2312';src:local('SimSun'),local('宋体');/* 默认回退到宋体 */unicode-range:U+4E00-U+9FA5;/* 中文字符范围 */}body{font-family:'GB2312','Arial',sans-serif;}
IE8兼容代码

三、厂商资质与交付物

1. 必须提供的材料

  1. 5个政府/央企案例
    • 合同首页+签字页扫描件
    • 银行转账凭证(脱敏)
    • 信创环境兼容认证书(麒麟/统信UOS认证)
  2. 软件著作权证书(原件扫描)
  3. 营业执照+法人身份证(加盖公章)

2. 交付物清单

类型内容
源代码前端插件+后端服务(完整Git仓库)
文档集成指南、API文档、信创兼容性测试报告
授权文件永久授权证书(不限项目数量)
技术支持3年免费维护(7×24小时响应)

四、预算与采购建议

  • 总预算:98万元(含授权+定制开发+信创适配)
  • 分项报价
    • 基础功能开发:60万元
    • 信创兼容性测试:20万元
    • 厂商资质与授权:18万元

建议:优先选择有政府项目经验的厂商(如金山办公、永中软件),确保通过信创认证。


(结尾)
本方案已通过集团技术委员会初审,下一步将启动厂商评估流程。如有疑问,请联系项目组邮箱:project@xian-tech-giant.com。

附件

  1. 《信创环境兼容性测试计划》
  2. 《CKEditor插件集成手册》
  3. 《华为云OBS对接指南》

西安科技小巨人领军企业 项目部
2023年XX月XX日

复制插件

说明:此教程以CKEditor4.x为例,使用其他编辑器的查看对应教程。
将下列文件夹复制到项目中
/WordPaster
/ckeditor/plugins/imagepaster
/ckeditor/plugins/netpaster
/ckeditor/plugins/pptpaster
/ckeditor/plugins/pdfimport

上传插件

上传插件文件夹

将imagepaster,netpaster文件夹上传到现有项目ckeditor/plugins目录中

在工具栏中增加插件按钮

引用js

初始化控件

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:'',Cookie:'PHPSESSID='});//加载控件

配置上传接口

注意

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

点击查看详细教程

配置ImageMatch

用于匹配JSON数据,

点击查看详细教程

配置ImageUrl

用于为图片增加域名前缀

点击查看详细教程

配置Session

如果接口有权限验证(登陆验证,SESSION验证),请配置COOKIE。或取消权限验证。
参考:点击查看详细教程

说明

1.请先测试您的接口:点击查看详细教程

功能演示

编辑器界面

导入Word文档,支持doc,docx

导入Excel文档,支持xls,xlsx

粘贴Word

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

Word转图片

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

导入PDF

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

导入PPT

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

上传网络图片

一键自动上传网络图片,自动下载远程服务器图片,自动上传远程服务器图片

下载示例

点击下载完整示例

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

阿波罗工业四足机器人发布,优必选工业人形机器人规模化落地,dToF传感器量产筹备,Anthropic修订具身智能模型

镜识科技与凯尔达机器人发布阿波罗工业四足机器人,破解量产落地痛点镜识科技与凯尔达机器人在杭州联合举办发布会,正式推出新一代工业级四足具身智能机器人 “阿波罗”,同步签署深度合作协议,构建 “技术研发 - 规模化制造 - 场景…

作者头像 李华
网站建设 2026/9/2 21:53:22

哲学家推测AI几千年内终结人类文明,还给出毁灭概率

超级智能可能在未来几千年内彻底终结人类文明。香港大学、澳大利亚天主教大学等大学的哲学家研究团队的一篇深度研究,通过构建一个严密的分类学框架,将人类在人工智能威胁下的生存路径拆解为四种核心模式,即技术停滞、文化禁令、目标对齐与外…

作者头像 李华
网站建设 2026/9/2 9:42:53

TCP三次握手与四次挥手:两个“社恐”程序的破冰与告别仪式

在网络世界里,TCP协议绝对是“严谨派”代表——不像UDP那样“发完就跑”,TCP要让两个设备传数据,非得先走一套“确认三连”的破冰流程;而聊完收场时,也得按规矩来一套“告别四步走”,绝不敷衍离场。这两套流…

作者头像 李华
网站建设 2026/9/2 17:51:28

视程空间2026全新发布SDVoE AI 系列运算平台

视程空间宣布将于 2026年2月3–6日正式推出全新SDVoE AI平台系列。 此创新平台集成 NVIDIA Jetson Orin NX AI 运算 与 Semtech SDVoE 技术,为智能化医疗等级 10GbE 影音网络提供即时边缘智能运算能力。让 SDVoE 从传输迈向智能化SDVoE 为全球领先的 零延迟、无压缩…

作者头像 李华
网站建设 2026/9/2 21:51:34

导师推荐2026 TOP10 AI论文网站:专科生毕业论文必备测评

导师推荐2026 TOP10 AI论文网站:专科生毕业论文必备测评 2026年AI论文写作工具测评:为专科生量身打造的高效助手 随着人工智能技术在学术领域的广泛应用,越来越多的专科生开始借助AI工具提升论文写作效率。然而,面对市场上五花八门…

作者头像 李华