我们最近将CKeditor升级到4.(这是一个很大的跳跃,我认为是4.3)以及当用户粘贴代码时,编辑器不会自动删除样式,特别是字体和文本颜色。我的配置中有forcePasteAsPlainText : true
,但我可以在文本中可靠地重现粘贴,保留字体颜色(例如红色),就像在电子邮件中一样。我怎么能这样做所以粘贴的所有文本都被剥夺了HTML样式?
答案 0 :(得分:2)
我假设当你使用Word插件粘贴时会发生这种情况,因为根据forcePasteAsPlainText信息:
是否强制所有粘贴操作插入到纯文本中 编辑器,丢失可能的格式信息 源文本。
注意:来自word(对话框)的粘贴不受此配置的影响。
所以,我会使用forcePasteAsPlainText并禁用此插件:
forcePasteAsPlainText : true,
removePlugins: 'pastefromword'
答案 1 :(得分:1)
请检查您使用的CKEditor版本。它可以在ckeditor/CHANGES.md
文件的顶部找到。如果您没有使用最新的4.8.0,请升级。
虽然在早期版本中forcePasteAsPlainText
存在一些问题,但设置和粘贴HTML的选项应该按照最新编辑器4.8.0中的预期过滤它。
如果您还希望清除所有MS Word格式,就像@Wizard写的一样,您可以删除pastefromword
插件。或者,如果您只想删除某些样式,可以使用afterPasteFromWord事件,您可以通过event.data.dataValue
粘贴HTML并按照您喜欢的方式进行更改。