news 2026/5/6 17:08:28

xhEditor word粘贴支持批注和修订

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
xhEditor word粘贴支持批注和修订

(推了推黑框眼镜,正色道)作为专注政企数字化解决方案的山西PHP团队,我们为该项目设计了一套高可用性技术方案:

技术架构设计

前端Vue3

xhEditor插件

Word粘贴处理

文档导入处理

图片二进制上传

文档解析服务

阿里云OSS

样式保留引擎

公式转换服务

前端核心代码(Vue3插件)

// src/plugins/xhEditorWord.jsexportdefault{install(app){app.provide('xhEditorWord',{install:(editor)=>{// 添加工具栏按钮editor.addButton('wordpaste',{title:'智能粘贴',icon:'📋',onclick:()=>{navigator.clipboard.read().then(async(data)=>{constblob=awaitdata.items[0].getAsFile();constformData=newFormData();formData.append('content',blob);// 调用PHP接口处理constres=awaitfetch('/api/word-paste',{method:'POST',body:formData});const{html,images}=awaitres.json();editor.insertHTML(html);// 批量上传图片images.forEach(img=>{constimgForm=newFormData();imgForm.append('file',img.blob);fetch('/api/upload',{method:'POST',body:imgForm}).then(r=>r.json()).then(data=>{editor.insertHTML(``);});});});}});// 微信文章粘贴处理editor.on('paste',(e)=>{constclipboard=e.clipboardData;if(clipboard.types.includes('text/html')){consthtml=clipboard.getData('text/html');constparser=newDOMParser();constdoc=parser.parseFromString(html,'text/html');// 提取微信特色图片constimgs=doc.querySelectorAll('img[data-src]');imgs.forEach(img=>{constsrc=img.getAttribute('data-src');fetch(src).then(r=>r.blob()).then(blob=>{constform=newFormData();form.append('file',blob);fetch('/api/upload',{method:'POST',body:form}).then(r=>r.json()).then(data=>{img.setAttribute('src',data.url);});});});editor.insertHTML(doc.body.innerHTML);}});}});}}

后端PHP处理逻辑

getWriter()->getOutput();// 处理公式转换preg_match_all('/{(\\\\[a-z]+)(.*?)}/i',$output,$matches);foreach($matches[0]as$key=>$match){$latex=stripslashes(substr($match,1,-1));$mathml=convertLatexToMathML($latex);$output=str_replace($match,$mathml,$output);}// 提取图片preg_match_all('/src="data:image\/(jpeg|png|gif);base64,(.*?)"/',$output,$imgMatches);$images=[];foreach($imgMatches[2]as$key=>$base64){$blob=base64_decode($base64);$filename=uniqid().'.'.$imgMatches[1][$key];file_put_contents('temp/'.$filename,$blob);$ossUrl=uploadToOSS('temp/'.$filename);$images[]=['original'=>$imgMatches[0][$key],'url'=>$ossUrl];$output=str_replace($imgMatches[0][$key],'src="'.$ossUrl.'"',$output);}echojson_encode(['html'=>$output,'images'=>$images]);functionconvertLatexToMathML($latex){// 调用MathJax服务$ch=curl_init('https://api.mathjax.org/convert');curl_setopt($ch,CURLOPT_POSTFIELDS,json_encode(['latex'=>$latex]));curl_setopt($ch,CURLOPT_HTTPHEADER,['Content-Type: application/json']);curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);$response=curl_exec($ch);curl_close($ch);returnjson_decode($response)->mathml;}functionuploadToOSS($file){// 阿里云OSS SDK集成$ossClient=newOSS\OssClient('key','secret','endpoint');$ossClient->uploadFile('bucket',basename($file),$file);return'https://bucket.oss-cn-hangzhou.aliyuncs.com/'.basename($file);}?>

项目实施要点

  1. 文档解析引擎:采用PhpOffice套件+自定义样式解析器
  2. 公式处理:集成MathJax在线服务(日调用量<10万次免费)
  3. 字体兼容:通过CSS @font-face嵌入GB2312字体文件
  4. 性能优化
    • 异步图片处理队列(Redis+Supervisor)
    • 文档解析缓存(Redis)
    • OSS分片上传(支持大文件)

商业合作模式

  1. 插件授权:基础版999元/年(含技术支持)
  2. 定制开发:2000元/人天(政府项目经验丰富)
  3. 代理分成:推荐客户成交即享20%分成
  4. 联合投标:提供完整的技术方案和演示系统

(推了推眼镜)现加入QQ群223813913,可获取:

  1. 政府项目投标书模板(含等保三级要求)
  2. 公式转换服务白名单配置指南
  3. 政企客户沟通话术手册

(突然压低声音)前100名入群者,赠送价值2999元的《政务系统验收标准手册》,包含300+项检查项清单,助您轻松通过验收!

将插件目录复制到项目中

引入插件文件

定义插件图标

初始化插件

在工具栏中添加插件按钮

效果

编辑器

导入Word文档,支持doc,docx

导入Excel文档,支持xls,xlsx

粘贴Word

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

Word转图片

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

导入PDF

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

导入PPT

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

上传网络图片

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

下载示例

点击下载完整示例

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

量化压缩HunyuanOCR模型:INT8量化后性能损失多少?实测告诉你

量化压缩HunyuanOCR模型&#xff1a;INT8后性能损失多少&#xff1f;实测告诉你 在当前多模态大模型加速落地的背景下&#xff0c;OCR技术正经历一场深刻的架构变革。从过去依赖检测、识别、抽取多个独立模型拼接的“流水线”模式&#xff0c;逐步演进为像腾讯混元团队推出的 H…

作者头像 李华
网站建设 2026/4/28 23:03:34

HunyuanOCR能否保留原文格式?字体、大小、颜色还原程度评估

HunyuanOCR能否保留原文格式&#xff1f;字体、大小、颜色还原程度评估 在数字化转型加速的今天&#xff0c;文档处理早已不再满足于“把图片转成文字”这一基础需求。越来越多的应用场景——比如电子合同归档、教学资料再编辑、出版物扫描重建——都要求OCR系统不仅能识别内容…

作者头像 李华
网站建设 2026/4/29 0:25:25

Ehercat代码解析中文摘录<4>

8. 邮箱 EtherCAT 邮箱&#xff08;MBX&#xff09;用于传输非周期性数据&#xff0c;SSC 支持多种邮箱协议&#xff0c;本章介绍 FoE 和 EoE 的实现与使用。 8.1 FoE&#xff08;EtherCAT 文件传输&#xff09; FoE 用于在主站和从站间传输文件&#xff08;如配置文件、固件…

作者头像 李华
网站建设 2026/4/29 19:50:50

HunyuanOCR支持梵文与巴利文吗?古老宗教语言识别能力调研

HunyuanOCR支持梵文与巴利文吗&#xff1f;古老宗教语言识别能力调研 在文化遗产数字化的浪潮中&#xff0c;越来越多的研究者和机构开始将目光投向那些尘封千年的贝叶经、石刻碑文与手抄佛典。这些文献承载着人类文明的重要记忆&#xff0c;但其文字系统——如梵文&#xff08…

作者头像 李华
网站建设 2026/5/1 7:27:45

HunyuanOCR能否识别表情符号含义?Emoticon语义理解附加层开发

HunyuanOCR能否识别表情符号含义&#xff1f;Emoticon语义理解附加层开发 在社交媒体、即时通讯和用户生成内容&#xff08;UGC&#xff09;泛滥的今天&#xff0c;一段文字是否“带情绪”&#xff0c;往往不取决于字面本身&#xff0c;而在于结尾那个小小的&#x1f60a;或&am…

作者头像 李华