我正在尝试为CKEditor创建一个插件,该插件在从Microsoft Word Online粘贴时将保留格式。我创建了这个基本粘贴,以检查Microsoft Word Online如何将数据存储在剪贴板中。
CKEDITOR.plugins.add('superpaste',
{
requires: [],
init: function (editor) {
editor.on('paste', function (evt) {
alert('pasting: ' + evt.data.dataValue);
})
}
}
);
这是我用来测试的文本块。
常规粗体 斜体下划线删除线 上标 substript BoldItalic UnderlineStrikethrough
注意:下划线似乎不适用于stackoverflow。
从几乎任何来源(包括Microsoft Word桌面应用程序)粘贴时,格式都会正确传输到CKEditor中。
从Microsoft Word Online粘贴时,我看不到任何样式。相反,我看到“p”标签的“paraid”和“paraeid”属性。
什么是这些paraid和paraeid?它们是否包含格式数据,还是其他地方?是否有关于如何从Microsoft Word Online复制/粘贴的文档?
感谢。
答案 0 :(得分:1)
CKEditor dev here。
HTML粘贴表单MS Word Online包含内联样式,通常表示为标记(例如style: bold
和<strong>
标记),因此(在Chrome / Safari中)它们会被过滤掉粘贴过滤器。
当然你可以随时禁用此功能,更多信息请点击此处: http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-pasteFilter