如何理解CKEditor4的"justify"选项?
How to understand CKEditor4's "justify" option?
我通过这个 link:
集成了最新版本的 CKEditor 4 标准版(撰写本文时为 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"
上面提到的对齐选项被识别并且工作得很好(尽管,正如已经提到的,CKEDITOR 4 标准版预设没有实现那个插件)。
我知道有一个“stylecombo”插件,但默认情况下它是激活的,而且似乎无法自行识别对齐功能。
在我看来,“justify”插件不应该工作,抛出错误并忽略任何对齐配置。但事实并非如此...
另一方面,当我尝试包含“上标”和“下标”时
[ 'Bold', 'Italic', 'Underline', 'Strike', 'Superscript', 'Subscript' ],
应该由“basicstyles”插件支持,它们不被识别。这里我假设这些按钮会显示在编辑器中。
谁能帮我找出来,我在这里误解了什么?
谢谢!
JSDeliver 直接提供了npm 包,所以这种情况下基本得到NPM ckeditor4
package. And here, you are almost right on the standard
preset, however in case of NPM ckeditor4
package it provides standard-all
preset. And the difference is as README describes:
The CKEditor 4 npm package comes in the standard-all preset, so it includes all official CKEditor plugins, with those from the standard package active by default.
所以这意味着 Justify
插件包含在包中,但默认情况下未激活。要激活它,您只需要使用您提到的 extraPlugins
配置选项即可。
这样做主要是为了方便,因此激活更多插件就像更改编辑器配置一样简单,无需添加额外的包。
我通过这个 link:
集成了最新版本的 CKEditor 4 标准版(撰写本文时为 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"
上面提到的对齐选项被识别并且工作得很好(尽管,正如已经提到的,CKEDITOR 4 标准版预设没有实现那个插件)。
我知道有一个“stylecombo”插件,但默认情况下它是激活的,而且似乎无法自行识别对齐功能。
在我看来,“justify”插件不应该工作,抛出错误并忽略任何对齐配置。但事实并非如此...
另一方面,当我尝试包含“上标”和“下标”时
[ 'Bold', 'Italic', 'Underline', 'Strike', 'Superscript', 'Subscript' ],
应该由“basicstyles”插件支持,它们不被识别。这里我假设这些按钮会显示在编辑器中。
谁能帮我找出来,我在这里误解了什么? 谢谢!
JSDeliver 直接提供了npm 包,所以这种情况下基本得到NPM ckeditor4
package. And here, you are almost right on the standard
preset, however in case of NPM ckeditor4
package it provides standard-all
preset. And the difference is as README describes:
The CKEditor 4 npm package comes in the standard-all preset, so it includes all official CKEditor plugins, with those from the standard package active by default.
所以这意味着 Justify
插件包含在包中,但默认情况下未激活。要激活它,您只需要使用您提到的 extraPlugins
配置选项即可。
这样做主要是为了方便,因此激活更多插件就像更改编辑器配置一样简单,无需添加额外的包。