最新公告
欢迎您光临零氪源码,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!欢迎加入VIP

帝国CMS7.5 CK编辑器CKEditor4.X——复制Word内容保留原有格式和样式

正文概述 零氪   2020-10-11  

修改测试的ckeditor版本如下图所示MlT零氪源码

MlT零氪源码

MlT零氪源码
配置过滤js文件MlT零氪源码
首先打开  \editor\plugins\pastefromword\filter\default.js  在文件的最后部分又如下代码(修改前的代码),也可以搜索CKEDITOR.cleanWord进行定位。MlT零氪源码
 MlT零氪源码
MlT零氪源码
修改前MlT零氪源码

  1. CKEDITOR.cleanWord = function (a, c) { 
  2.         CKEDITOR.env.gecko && (a = a.replace(/(<\!--\[if[^<]*?\])--\>([\S\s]*?)<\!--(\[endif\]--\>)/gi, "$1$2$3")); CKEDITOR.env.webkit && 
  3.     (a = a.replace(/(class="MsoListParagraph[^>]+><\!--\[if !supportLists\]--\>)([^<]+<span[^<]+<\/span>)(<\!--\[endif\]--\>)/gi, "$1<span>$2</span>$3")); var b = new G, f = b.dataFilter; f.addRules(CKEDITOR.plugins.pastefromword.getRules(c, f)); c.fire("beforeCleanWord", { filter: f }); try { a = b.toHtml(a) } catch (d) { alert(c.lang.pastefromword.error) } a = a.replace(/cke:.*?".*?"/g, ""); a = a.replace(/style=""/g, ""); return a = a.replace(/<span>/g, "") 
  4.     } 
  5. })(); 

MlT零氪源码
修改后MlT零氪源码

  1. CKEDITOR.cleanWord = function (a, c) { 
  2.         return a; CKEDITOR.env.gecko && (a = a.replace(/(<\!--\[if[^<]*?\])--\>([\S\s]*?)<\!--(\[endif\]--\>)/gi, "$1$2$3")); CKEDITOR.env.webkit && 
  3.     (a = a.replace(/(class="MsoListParagraph[^>]+><\!--\[if !supportLists\]--\>)([^<]+<span[^<]+<\/span>)(<\!--\[endif\]--\>)/gi, "$1<span>$2</span>$3"));  
  4. var b = new G, f = b.dataFilter; f.addRules(CKEDITOR.plugins.pastefromword.getRules(c, f)); c.fire("beforeCleanWord", { filter: f });  
  5. try { a = b.toHtml(a) } catch (d) { alert(c.lang.pastefromword.error) }  
  6. a = a.replace(/cke:.*?".*?"/g, ""); a = a.replace(/style=""/g, "");  
  7. a = a.replace(/<span>/g, ""); return a;    } 
  8. })(); 

即在开始加上return a;另网上有讲解3.X版本的word样式保留解答,那个版本的参数是h,所以是return h;(有兴趣的百度吧,很好找)MlT零氪源码

 MlT零氪源码

配置config文件

其次在Config.js(和ckeditor.js在一个文件夹下)中MlT零氪源码
添加代码一:MlT零氪源码

  1. config.allowedContent = true

如果没有配置上面的属性,复制word内容后,格式是保留的,但是样式没有保留,只有加了后才会保留!!!MlT零氪源码

添加代码二:MlT零氪源码

  1. //保证word导入格式 
  2. config.pasteFromWordRemoveFontStyles = false
  3. config.pasteFromWordRemoveStyles = false
  4. //是否强制复制来的内容去除格式 
  5. config.forcePasteAsPlainText =false//不去除 

通过验证,无需明确的设置,保持默认或者不设置即可。MlT零氪源码

 MlT零氪源码

最终效果

Word测试内容MlT零氪源码

MlT零氪源码

最终显示效果MlT零氪源码

MlT零氪源码


内容加载中..
  • 231新增会员(位)
  • 0本年发布(个)
  • 0本月发布(个)
  • 0 今日发布(个)
  • 稳定运行(天)

零氪源码,欢迎你!


零氪源码致力于资源分享!

SVIP会员限时优惠,享受资源免费下载

内容持续更新,永不间断


所有资源均与网上收集整理,仅限交流学习使用

请自觉在下载后24小时内删除

勿用于非法用途,本站不承担任何责任

我知道了

回到顶部