问题描述
我通过以下链接集成了最新版本的CKEditor 4 Standard Version(在撰写本文时为v4.15):
https://cdn.jsdelivr.net/npm/ckeditor4/ckeditor.js
根据定义,CKEditor 4标准版不包括“ Justify”插件,该插件负责根据预设对文本(左,右,居中,对齐)进行对齐(至少据我了解):
https://ckeditor.com/cke4/builder
确实,如果我使用对齐规则配置设置,则CKEditor将无法识别它们:
CKEDITOR.toolbar = [
[ 'Undo','Redo' ],[ 'Link','Unlink','Anchor' ],[ 'JustifyLeft','JustifyCenter','JustifyRight' ],// <= not recognised
[ 'Bold','Italic','Underline','Strike' ],[ 'NumberedList','BulletedList','-','Outdent','Indent','Blockquote' ],'/',[ 'SpecialChar' ],[ 'Source','RemoveFormat' ],[ 'About' ]
]
但是,一旦我在“ extraPlugins”配置选项中启用了“ justify”:
CKEDITOR.extraPlugins = "divarea,justify"
上面提到的align选项可以识别并且可以很好地工作(尽管,正如已经提到的,CKEDITOR 4 Standard Version Preset并没有实现该插件)。
我知道有一个“ stylecombo”插件,但默认情况下已激活该插件,似乎无法单独识别对齐功能。
我认为,“ justify”插件不起作用,引发错误并忽略任何对齐配置。但是事实并非如此……
另一方面,当我尝试包含“上标”和“下标”
[ 'Bold','Strike','Superscript','Subscript' ],
应该由“ basicstyles”插件支持,但无法识别。在这里,我假设这些按钮将显示在编辑器中。
请问有人可以帮助我找出我的误解吗? 谢谢!
解决方法
JSDeliver直接提供NPM软件包,因此在这种情况下,您基本上得到了NPM ckeditor4
package。在这里,您几乎可以使用standard
预设,但是对于NPM ckeditor4
软件包,它提供了standard-all
预设。区别在于README describes:
CKEditor 4 npm软件包包含所有标准配置,因此它包括所有官方CKEditor插件,默认情况下standard package中的插件处于活动状态。
因此,这意味着Justify
插件已包含在软件包中,但默认情况下不处于活动状态。要激活它,您只需要使用您提到的extraPlugins
配置选项即可。
主要是为了方便起见,因此激活更多插件就像更改编辑器配置一样简单,而无需添加其他软件包。