← 全部文档

配置参考

本页列出编辑器所有可用的配置选项。设置方式和使用指导请参阅配置。

在较小的屏幕上,请水平滚动表格以查看所有列。键盘用户可以让表格区域获得焦点,然后使用方向键。

名称默认值说明
skindefault编辑器外框的外观。该值会成为容器上的一个类名(rte-skin-<value>),因此主题提供了 dark、gray、blue 和 rounded-corner,您自己编写样式的任何名称也都可以使用。不设置时使用默认的浅色外框。请参阅 skin。
toolbardefaultdefault、basic 或 full。在桌面端自动为工具栏配置一组按钮。
toolbarMobilemobile移动设备上使用的工具栏。
maxWidthForMobile992当屏幕(浏览器窗口)小于 992 时,编辑器应使用移动端工具栏。
timeoutAddToUndo900用户快速输入时,等待 900ms 再添加撤销条目。
enableDragDroptrue启用或禁用编辑器的拖放支持。
enableObjectResizingtrue指定是否允许用户在 RichTextEditor 中调整对象的大小。
readOnlyfalse获取或设置一个值,指示 RichTextEditor 是作为可编辑的 HTML 编辑器,还是作为只读的文档查看器。
focusOnLoadfalse指定页面加载时编辑器是否获得焦点。设置为 true 时编辑器会获得焦点,设置为 false 时则不会。
allowScriptCodefalse指定是否从 HTML 中去除所有 script 元素及其内容,以防止 JavaScript 注入。当此属性设置为 false(默认值)时,Rich Text Editor 会从 HTML 中去除所有 script 元素及其内容。
tagWhiteList[]白名单,包含可以在编辑器中使用的标签列表。
tagBlackList[]黑名单,包含不能在编辑器中使用的标签列表。
maxHTMLLength0获取或设置 RichTextEditor 中允许的最大字符数(包含 HTML 标签)。默认值 0 表示不限制。超出限制时,编辑器会恢复到上一个有效状态,并触发 reachmaxlength customdialog 钩子。
maxTextLength0获取或设置 RichTextEditor 中允许的最大字符数(不包含 HTML 标签)。默认值 0 表示不限制。超出限制时,编辑器会恢复到上一个有效状态,并触发 reachmaxlength customdialog 钩子。
styleWithCSSfalse粗体、斜体和下划线的保存方式。默认写入标签——<b>、<i>、<u>——boldTag 和 italicTag 可以重命名这些标签,屏幕阅读器会把它们读作强调。设置为 true 则改为保存内联样式(<span style="font-weight: bold">)。Core 2.6.8 及更高版本;在此之前,结果取决于插件包是否先加载完成,因此同样的内容可能以任一种方式保存。
pasteStripThemeStylestrue粘贴时,去除那些只是重复编辑器自身主题的内联样式。浏览器会把计算样式写到复制的 HTML 上,因此以前在编辑器内部复制的文本,到达时会带着主题的外边距、字号和颜色,并随内容一起保存。作者设置的、与主题不同的样式会保留。设置为 false 可保留所有粘贴的样式。Core 2.6.8 及更高版本。
smartTypographytrue把作者输入的内容替换为印刷字符:直引号变成弯引号,两个连字符变成长破折号,三个句点变成省略号,(c)、(r) 和 (tm) 变成 ©、® 和 ™。在 code、pre 或 kbd 中不做任何更改。这属于编辑器核心,与自动更正插件相互独立,因此 autocorrectEnabled: false 不会关闭它。设置为 false 可完全保留输入的内容;下面四个选项分别单独控制每一种替换。
smartTypographyQuotestrue直双引号和直单引号变成弯引号(“ ” ‘ ’),单词内部的撇号变成 ’(don’t)。
smartTypographyDashestrue两个连字符变成长破折号(—)。单个连字符保持不变。
smartTypographyEllipsistrue三个句点变成一个省略号字符(…)。
smartTypographyTrademarkstrue(c)、(r) 和 (tm) 变成 ©、® 和 ™。
sanitizerAllowIframestrue在内容中保留 <iframe> 元素。在内容净化程序开启时生效(contentSanitizer,属于插件包的一部分)。只有 src 为 http 或 https 的框架会被保留;srcdoc、事件处理程序和 javascript: URL 永远不会保留。没有 sanitizerAllowedIframeHosts 列表时,每个被保留的框架都会被沙盒化为 allow-scripts allow-same-origin allow-presentation:禁止顶层导航、弹出窗口、模态对话框和表单,来自页面自身源的框架还会失去 allow-same-origin。设置为 false 会丢弃所有 iframe。
sanitizerAllowedIframeHosts[]只保留来自这些主机及其子域名的框架,例如 ["www.youtube.com", "player.vimeo.com"]。这是更强的控制方式:只要您知道会有哪些嵌入内容,就应该设置它。
maxUploadFileSize0编辑器会插入或上传的最大文件字节数。默认值 0 表示不限制。适用于图片和文档对话框、粘贴以及拖放:超出限制的文件会在读取之前被拒绝,因此不会有任何内容嵌入文档,也不会有任何内容发送给上传处理程序。提示消息来自 text_uploadtoobig;处理 uploadtoobig customdialog 钩子可显示您自己的对话框。
allowBase64Imagestrue没有上传处理程序或 file_upload_url 时,插入的图片会以 base64 data: URL 的形式嵌入 HTML。设置为 false 则从不嵌入:图片会以 text_base64disabled 消息被拒绝(customdialog 钩子 base64disabled),此时必须提供上传处理程序。Core 2.6.5 及更高版本。
base64ImageMaxSize204800缩小之后 base64 图片的最大字节数(200 KB)。更大的图片会以 text_base64toobig 消息被拒绝(customdialog 钩子 base64toobig)。0 表示不设上限,即 core 2.6.5 之前的行为。
base64ImageShrinktrue在以 base64 嵌入之前,在浏览器中缩放并重新编码 JPEG、PNG、WebP 和 BMP 图片。GIF 和 SVG 永远不会被重新编码。设置为 false 时,如果原始字节不超过 base64ImageMaxSize,则嵌入原始字节。Core 2.6.5 及更高版本。
base64ImageMaxDimension1600为 base64 嵌入而缩小的图片,其最长边的像素数。Core 2.6.5 及更高版本。
file_upload_urlnull编辑器以 multipart/form-data 格式 POST 插入、粘贴和拖放文件的目标 URL。设置它即可,无需编写 file_upload_handler。响应可以是 TinyMCE 的 {"location": "..."}、CKEditor 的 {"url": "..."} 或 {"urls": {"default": "..."}},或者 READY:<url>;{"error": {"message": "..."}} 和 ERROR:<message> 表示失败,其他任何响应体也都视为失败。两者都设置时,file_upload_handler 优先。
file_upload_fieldfile发送文件时使用的表单字段名。CKEditor 风格的端点期望使用 upload。
file_upload_base_pathnull加在端点返回的相对 URL 前面,用于从 CDN 提供上传的文件。
file_upload_credentialsfalse上传时发送 Cookie 和 HTTP 身份验证信息,用于其他源上的端点。
file_upload_reuse_filenamefalse以原始文件名发送文件。默认会生成一个唯一的名称,这样两个用户上传 image.png 时不会互相覆盖。
file_upload_headersnull上传请求的额外标头,例如 CSRF 令牌。
automaticUploadsfalse为 true 时,编辑器会主动上传内容中以 base64 data: URL 形式嵌入的图片:在 setHTMLCode 之后,以及插入或粘贴 HTML 之后。它会替您运行 uploadEmbeddedImages(),并按 automaticUploadsDelay(300 ms)进行防抖;没有配置 file_upload_handler 时什么也不做。
automaticUploadsDelay300自动扫描运行之前等待的毫秒数,这样一次粘贴多张图片时只会上传一次。
uploadRetryCount0上传失败后、错误到达处理程序的回调和用户之前的额外尝试次数。每次尝试都会触发一个 uploadretry 事件。被取消的上传或其图片已被删除的上传永远不会重试。
uploadRetryDelay1000第一次重试之前的毫秒数。之后每次尝试的等待时间都会加倍。
autoSavenull在用户输入时把内容保存到您自己的服务器:{ onSave: function (html) { return promise; }, interval: 2000, indicator: true, retryCount: 3, retryDelay: 5000 }。onSave 是必需的;返回一个 Promise 可以让编辑器显示保存是否成功。失败的保存会以加倍的延迟重试,并在浏览器恢复联网时立即再次重试。手动控制请参阅 editor.autoSave 方法。
editorResizeModebothboth、height 或 none。获取或设置调整大小的模式。
toggleBordertrue指定 ToggleBorder 状态。ToggleBorder 是一个方便的功能,无需在代码中设置 border = 1 之类的属性,就能看到边框。
showSelectedBlocktrue指定是否在 RichTextEditor 中显示选中的块。
showFloatTextToolBarfalse指定是否显示由 config.controltoolbar_TEXT 定义的 FloatTextToolBar。
showFloatLinkToolBarfalse指定是否显示由 config.controltoolbar_A 定义的 FloatLinkToolBar。
showFloatImageToolBbarfalse指定是否显示由 config.controltoolbar_IMG 定义的 FloatImageToolBbar。
showFloatTableToolBarfalse指定是否显示由 config.controltoolbar_TD 定义的 FloatTableToolBar。
showFloatParagraphtrue指定是否在左侧显示 FloatParagraph。
floatParagraphPosleftleft 或 right。获取或设置 FloatParagraph 的位置。
floatParagraphPosX0一个数字,表示 FloatParagraph 的水平坐标,以像素为单位。
floatParagraphPosY0一个数字,表示 FloatParagraph 的垂直坐标,以像素为单位。
showPlusButtontrue指定是否显示编辑器的加号按钮。
showTagListtrue指定是否在编辑器底栏中显示标签选择器。
showStatisticstrue指定是否在编辑器底栏中显示内容统计信息。
tabSpaces4获取或设置用户按下 "tab" 键时插入的空格数。
enterKeyTagp决定在编辑器中按下 "enter" 键时会发生什么。div、p 或 br。
htmlcode_forcehexformatfalse在保存的 HTML 中,把颜色写成 #993300 而不是 rgb(153, 51, 0)。编辑器会原样传递所选的颜色;是浏览器在读回样式时把它规范化为 rgb(),因此这个选项会在输出时进行转换。它既适用于用户应用的颜色,也适用于加载或粘贴的内容中已有的颜色,并且同时覆盖文字颜色和背景色。rgba() 保持不变,因为 6 位十六进制无法携带其 alpha 通道。
paragraphClassparagraph创建新段落时,会自动为段落添加指定的类名。
insertTableTag<table></table>插入表格时的默认表格属性。
insertRowTag<tr></tr>创建表格行时的默认行属性。
insertCellTag<td><br/></td>插入单元格时的默认单元格属性。
url_base/richtexteditor编辑器加载自身文件的文件夹:内容和预览样式表、预览脚本、帮助页面以及颜色选择器的 More 页面。从 core 2.6.10 起,不设置时它会跟随加载 rte.js 的文件夹,因此通过 CDN 或子文件夹安装时无需设置;在此之前它始终是 /richtexteditor。如需从其他位置提供这些文件,请设置它。
onready(无)从 core 2.6.10 起提供:在编辑器构建完成并加载了初始内容时调用一次的函数(ready 事件)。等同于 editor.attachEvent("ready", fn)。
pasteMode"Auto"粘贴内容的处理方式:"Auto" 保留格式并进行清理,"PasteText" 始终粘贴纯文本,"PasteWord" 始终应用 Word 清理,"Disabled" 拒绝粘贴。除 Disabled 之外,在所有模式下 Ctrl+Shift+V 都会粘贴纯文本。
smartLinkPastetrue在选中文本时粘贴 URL,会把选中的文本变成链接,而不是替换它。
autoLinkPastetrue从 core 2.6.10 起提供:粘贴的纯文本中的网址(https://… 或 www.…)会变成链接;末尾的标点保留在链接之外。使用 Ctrl+Shift+V 时或在链接、代码内部时不会应用。设置为 false 可把网址作为纯文本粘贴。
linkDefaultProtocol"http://"从 core 2.6.10 起提供:为没有协议的地址添加的协议前缀,例如在链接对话框中输入的 example.com,或粘贴的 www. 地址。设置为 "https://" 可默认使用安全链接。
pasteMarkdownfalse从 core 2.6.10 起提供:为 true 时,以纯文本形式粘贴的 Markdown(README、聊天内容、AI 回答)会被转换为带格式的内容:标题、粗体、斜体、链接、列表、引用和代码块。看起来不像 Markdown 的文本、使用 Ctrl+Shift+V 的粘贴以及在代码内部的粘贴,都保留为纯文本。结果会像任何粘贴一样经过净化。
markdownShortcutsEnabledtrue在空段落开头输入的 Markdown 块级快捷方式:# 到 ###### 为标题,- / * 为项目符号,1. / 1) 为编号列表(1 以外的数字会设置起始编号),> 为引用,[ ] 为待办事项(需要待办插件),``` 为代码块,--- 加 Enter 为分隔线。按一次 Ctrl+Z 即可恢复输入的字符。
markdownInlineEnabledtrue输入结束定界符时自动应用内联 Markdown 格式:**bold**、*italic*、`code`、~~strike~~。之后输入的文本不带格式。
contentCssUrl%url_base%/runtime/
richtexteditor_content.css
指定可编辑区域所使用的样式表的位置。
previewCssUrl%url_base%/runtime/
richtexteditor_preview.css
指定预览窗口所使用的样式表的位置。
previewScriptUrl%url_base%/runtime/
richtexteditor_preview.js
指定预览窗口所使用的 JavaScript 文件的位置。
contentCssText""获取或设置可编辑区域所使用的内联 CSS 文本。例如 "body{background-color:#eee}"。
previewCssText""获取或设置预览窗口所使用的内联 CSS 文本。例如 "body{background-color:#eee}"。
editorBodyCssClass""获取或设置编辑区域的类名,用于切换样式。
editorBodyCssText""获取或设置可编辑 body 所使用的内联 CSS 文本。
editablePaddingTop2设置可编辑区域的上内边距(间距)。
editablePaddingBottom2设置可编辑区域的下内边距(间距)。
editablePaddingLeft2设置可编辑区域的左内边距(间距)。
editablePaddingRight2设置可编辑区域的右内边距(间距)。
zIndexFullPage9999设置编辑器以全屏模式打开时的 z-index。
zIndexFloat99999设置编辑器浮动工具栏的 z-index。
zIndexDialog999999设置编辑器对话框的 z-index。
zIndexDropDown9999999设置编辑器下拉菜单的 z-index。
fontNameDropDownMinWidth90px设置字体名称下拉菜单的最小宽度。
fontNameDropDownMaxWidth110px设置字体名称下拉菜单的最大宽度。
tooltipAttributerte-tooltip设置编辑器工具提示所使用的属性。
showKeyboardShortcutsInTooltipstrue在每个工具栏按钮的工具提示中显示其键盘快捷键("Bold (Ctrl+B)",在 Mac 上显示 ⌘)。快捷键只显示在工具提示中:对话框标题和按钮的可访问名称仍然是普通的标签,按钮上带有 aria-keyshortcuts。
keyboardShortcutHints{ bold: "Ctrl+B", italic: "Ctrl+I", ... }为每个命令显示的快捷键,以命令名称为键。添加或替换条目,使其与您自己绑定的快捷键一致。不要把快捷键写进 text_* 标签:标签同时也是对话框标题和可访问名称,并且会被语言包替换。
commentMentions[]批注中可以提及的人员,为一个 { id, name } 数组。在批注编辑框中输入 @ 会列出他们;选择其中一人会插入 "@Name",并在批注上记录这次提及。为空表示没有提及列表(批注插件)。
text_uilocale由各语言包设置已加载语言包的区域设置(例如 zh-Hans、de)。编辑器通过浏览器的 Intl API 使用它,在文本片段语言菜单和 Ask AI 的翻译列表中显示语言名称,并书写日期标签。未加载语言包时使用英语。
controlSelectionClassrte-control-selected设置编辑器控件选区的类名。
controlSelectionMargin7设置编辑器控件选区的外边距。
altTextHinttrue没有替代文本或替代文本为空的图片,会在编辑区域中显示琥珀色虚线轮廓,让作者看到哪些图片还需要描述。只在编辑器中显示;不会向保存的 HTML 添加任何内容。设置为 false 可隐藏轮廓。
autoHeadingAnchorstrue每次更改后稍等片刻,为每个标题生成一个由其文本构成的 id("Hello World" 会变成 hello-world),以便链接和目录指向它;重复的 id 会加上 -2、-3。设置为 false 可阻止核心分配 id。加载了插件包时,文档大纲插件会自行保证标题 id 的唯一性。
autoLinkOnTypetrue在文本中输入的 URL 或电子邮件地址,会在输入其后的空格时变成链接。设置为 false 可让输入的地址保持为纯文本。
backspaceOutdenttrue在列表项的最开头按 Backspace,会把该项移出列表变成段落,而不是与上一项合并。设置为 false 则改为合并。
blockDragHandlestrue把鼠标悬停在块(段落、标题、列表、表格……)上时,旁边会显示一个拖动手柄;拖动手柄即可移动该块。设置为 false 可隐藏手柄。
collabEnabledtrue允许协作插件(yjscollab)设置 editor.collab。设置为 false 时插件不做任何事:不会有 editor.collab。只有调用 editor.collab.attach(...) 时才会开始协作;仅凭这个默认值不会建立任何连接。请参阅协作。
collabShowPresencetrue附加了协作会话时,显示列出文档中其他人员的面板。设置为 false 可隐藏它。
collabShowRemoteCursorstrue附加了协作会话时,在文本上显示其他人的光标和选区。设置为 false 可隐藏它们。
collabTextSyncfalse协作会话除在线状态和审阅台账之外还同步什么(yjscollab 插件):false——不同步文档文本;true——在共享的 Yjs 文本中同步整个文档的快照;"crdt"——通过 CRDT 引擎(crdt-engine.min.js)进行字符级合并,未加载引擎时退回到快照方式。
collabRequireCrdtfalse在 collabTextSync: "crdt" 下,如果缺少 CRDT 引擎,则关闭文本同步,而不是退回到快照方式(在线状态和审阅台账保持开启);控制台会说明原因。
collabTextNamerichtextbox.body快照同步所使用的共享 Yjs 文本的名称。同一个 Yjs 文档中的每个编辑器都要使用各自的名称。
aiToolkitEnabledtrueAI Toolkit 插件。设置为 false 可将其关闭:没有 AI 按钮、菜单或对话框。请参阅 AI Toolkit。
aiToolkitResolvernullAI Toolkit 调用以访问您的 AI 服务的函数(自带密钥或端点);editor.aiToolkit.setResolver(fn) 可在运行时设置它。没有它时,工具包以演示模式运行。AI Toolkit 页面介绍了请求和回复的格式。
aiToolkitAgentnulleditor.aiToolkit.runAgent(prompt) 用于规划和应用多步编辑的函数;setAgent(fn) 可在运行时设置它。没有它时,runAgent 会以一条说明原因的消息拒绝。
aiToolkitAutoToolbarButtonstrue自动把 AI 按钮添加到工具栏中。设置为 false 可把 AI 命令放到您自己的工具栏字符串中。
aiToolkitActions(内置列表)AI 菜单中的操作:一个 { id, section, icon, title, description } 数组。替换它即可显示您自己的一组操作。
aiToolkitDialogModes(内置列表)Ask AI 对话框的模式(Proofread、Rewrite、Translate……):一个 { id, title, description } 数组。
aiToolkitChatPrompts(内置列表)AI Chat 提供的起始提示词:一个 { id, label, prompt } 数组。
aiToolkitTranslateLanguages(西班牙语、法语、德语、意大利语……)Translate 提供的语言:一个 { value, label } 数组。
aiToolkitOperationHandlersAI 回复中可能包含的操作类型的处理程序,按类型组织:{ myType: function (operation, context) { ... } };处理程序应用了该操作时返回 true。editor.aiToolkit.registerOperationHandler() 可在运行时添加处理程序。
aiToolkitPersistenceKey(空)本文档的键。设置后,AI 审阅状态(建议和决定)会以 RTE.AIToolkit.<key> 为键保存在浏览器的 localStorage 中,因此重新加载后仍然保留;它还用于向 aiToolkitSuggestionLedgerUrl 标识该文档。为空时不保存任何内容。
aiToolkitReviewLogUrl(空)您服务器上的一个 URL,以 JSON POST 的形式接收每一个 AI 审阅决定,用作审计日志。为空时不发送任何内容。
aiToolkitSuggestionLedgerUrl(空)您服务器上的一个 URL,以 JSON POST 的形式接收文档的 AI 建议及其状态,以便共享或恢复;需要设置 aiToolkitPersistenceKey。为空时不发送任何内容。
aiToolkitReviewSyncInterval15000与服务器同步审阅状态的频率,以毫秒为单位(至少 5000)。
collabLedgerMapNamereviewLedger在对等端之间传递批注、建议和 AI 审阅决定的共享 Yjs 映射的名称。
onCollabStatusnull会话开始时以 { attached, textSyncMode, requestedTextSync, fallbackReason, yjsBridge, peerCount } 调用,以便您显示当前生效的模式(例如从 CRDT 退回到快照)。editor.collab.getStatus() 返回的也是同一个对象。
imageHoverQuickBartrue把鼠标悬停在编辑器中的图片上时,会在图片上方显示一个小的图片操作栏。设置为 false 可隐藏它。
imageLazyLoadtrue编辑器插入的图片(来自 URL、上传或拖放)会带上 loading="lazy" 和 decoding="async",这样长文档不会一次性加载所有图片。设置为 false 则插入不带这些属性的图片。
indentUseMargintrue对段落或标题执行增加缩进和减少缩进时,像 Word 一样改变其外边距(对于从左到右的文本为 margin-left)。设置为 false 则改为改变其内边距。步长为 indentation。
inlineMathtrue允许 editor.applyMathMarkup() 把 $...$ 片段包装在 <span class="rte-math-inline" data-tex="..."> 中,供 KaTeX 或 MathJax 之类的数学渲染器绘制。在您调用它之前不会发生任何事。设置为 false 时,调用不会改变任何内容。
placeholderShowOnlyWhenEditabletrue当编辑器为只读(readOnly 或 setReadOnly(true))或处于仅批注模式时隐藏 placeholder,允许编辑时再显示它。设置为 false 则在只读编辑器中也显示它。(在 2.6.11 及更早版本中,只读编辑器仍会显示它。)
showFloatLinkUrlPreviewtrue当光标位于链接中时,浮动链接工具栏会首先显示链接的地址,点击后在新标签页中打开。设置为 false 则只显示工具栏按钮。
smartPasteToasttrue清理完从 Word 或 Google Docs 粘贴的内容之后,会显示一条简短的提示。设置为 false 则静默清理。
tableColumnResizetrue指向两个表格列之间的边框时会显示调整大小的提示;拖动它即可改变列宽。设置为 false 可关闭拖动调整列宽。
tableRowResizetrue指向表格行的底边时会显示调整大小的提示;拖动它即可改变行高。设置为 false 可关闭拖动调整行高。
aiContextMenutrue加载了 AI Toolkit 时,右键单击选中的文本(三个字符或更多)会打开针对该文本的 AI 操作菜单。设置为 false 则保留浏览器自己的菜单。
wordExportFileName(无)未传入名称时,editor.exportToWord()(与 Word 兼容的 .doc)使用的基本文件名。未设置时,使用第一个 h1-h3 标题的文本,或者 "document"。
wordExportFontFamilyCalibri, 'Segoe UI', Arial, sans-serif.doc 导出的正文字体。传给 exportToWord() 的选项优先。
wordExportFontSize11pt.doc 导出的正文字号。
wordExportPageSize8.5in 11in.doc 导出的页面大小,以 CSS @page 尺寸表示(默认为 US Letter;A4 为 "21cm 29.7cm")。文档自身已有的页面设置(页面视图)优先。
wordExportMargin1in.doc 导出的页边距,以 CSS 长度或简写表示。文档自身的页面设置优先。
wordExportLandscapefalse.doc 导出使用横向页面。文档自身的页面设置优先。
docxExportFileName(无)未传入名称时 .docx 导出使用的基本文件名。未设置时为 Export- 加上日期和时间(YYMMDD-HHMMSS,例如 Export-261026-153045.docx)。
docxExportTitle(无)保存在 .docx 文件属性中的标题。未设置时,使用页面的 document.title,或者 "Document"。
docxExportAuthorRichTextEditor保存在 .docx 文件属性中的作者。
pdfExportFileName(无)未传入名称时 PDF 导出使用的基本文件名。未设置时为 Export- 加上日期和时间(YYMMDD-HHMMSS)。
pdfExportTitle(无)保存在 PDF 元数据中的标题。未设置时,使用页面的 document.title,或者 "Document"。
pdfExportAuthor(空)保存在 PDF 元数据中的作者。
pdfExportFonthelvetica矢量 PDF 导出(pdfexport 插件)使用的字体:"helvetica"、"times" 或 "courier",即无需嵌入的标准 PDF 字体。它们只覆盖西欧拉丁字母;请参阅 pdfExportRasterFallback。
pdfExportBaseFontSize11矢量 PDF 的正文字号,以磅为单位;标题按它缩放。
pdfExportHeader(无)在矢量 PDF 每一页顶部居中显示的纯文本;{page} 和 {total} 会变成页码和总页数。未设置时,使用文档页眉(页面视图)的文本(如果有)。
pdfExportFooter(无)在每一页底部居中显示的纯文本,同样支持 {page} 和 {total}。
pdfExportRasterFallbacktrue当文档中有矢量 PDF 无法编码的字符时(西欧拉丁字母以外的任何字符:中文、日文、韩文、西里尔字母、希腊字母、阿拉伯字母……),exportToPdf() 和工具栏的 Export PDF 会改用 html2pdf 栅格导出,它可以绘制所有文字,并会在控制台中说明这一点。editor.getPdfUnsupportedText() 会列出这些字符。设置为 false 则始终写入矢量 PDF;此时这些字符会打印为 "?"。在 2.6.11 及更早版本中,它们总是打印为 "?"。
pdfExportUnicodeFont(无)一个 TrueType 字体的字节数据(.ttf,以 ArrayBuffer 或 Uint8Array 形式提供),用于绘制标准字体无法绘制的文本:中文、日文、韩文、西里尔字母、希腊字母……有了它,矢量 PDF 会嵌入文档所用到的字形(即使来自大型 CJK 字体,也只有几百 KB),并且这些文本仍然可以选中和搜索;没有它时,请参阅 pdfExportRasterFallback。editor.loadPdfFont(url) 会获取您提供的字体并设置此项;除非您调用它,否则不会获取任何内容。CFF(.otf)和字体集合(.ttc)文件会被拒绝,并在控制台中给出提示。
mentionTrigger@打开提及列表的字符(提及插件)。只有设置了 mentionStaticList 或 mentionSource 之后,列表才会起作用。
mentionStaticListnull默认触发字符使用的固定人员列表:一个 { id, label (or name), subtitle (or email) } 数组。在触发字符之后输入的内容会按 label、subtitle 和 id 过滤列表(不区分大小写);什么都没输入时显示前 50 项。
mentionSourcenull为默认触发字符提供列表的函数:(query, { trigger }) => 返回一个条目数组,或者一个解析为数组的 Promise。优先于 mentionStaticList。如需更多触发字符,请使用 mentionTriggers 或 editor.mentions.register()。
mentionTriggersnull额外的触发字符,每个都是 { trigger, source (or search), insertClass, label, renderItem, renderInsert },例如用于标签的 #。接受 search(query, done) 回调和异步函数。既没有 source 也没有 search 的触发字符会被跳过,并在控制台中给出警告。
mentionMaxItems8列表最多显示的结果数。
mentionDebounceMs150输入需要停顿多久才会再次向数据源请求,以毫秒为单位。紧接在触发字符之后(还没有输入任何内容)时会立即请求。
mentionInsertClassrte-mention插入的提及元素上的类名。每个触发字符都可以设置自己的 insertClass。
slashCommandTrigger/打开斜杠命令菜单的按键(斜杠命令插件),在行首或空格之后输入时生效,在代码或 pre 内部永远不会生效。
slashCommandMaxItems40斜杠菜单一次最多列出的命令数。
documentOutlineEnabledtrue文档大纲面板(documentoutline 插件):一个列出文档标题、可在其间跳转的列表。设置为 false 则没有 Outline 工具栏按钮,也没有面板。
documentOutlineAutoOpenfalse编辑器启动时打开大纲面板。
documentOutlineMinLevel1大纲列出的最高标题级别(1 到 6)。
documentOutlineMaxLevel6大纲列出的最低标题级别(1 到 6,不能高于 documentOutlineMinLevel)。
documentOutlineTitle"Outline"(已翻译)面板的标题和可访问名称。未设置时,使用语言包中的文本。
documentOutlineHint(已翻译的文本)面板标题下方的那一行文字。
documentOutlineEmptyText(已翻译的文本)文档没有标题时面板显示的内容。
contentMinimapEnabledtrue缩略图面板(contentminimap 插件):整个文档的小型预览,点击即可跳转。设置为 false 则没有 Minimap 工具栏按钮,也没有面板。
contentMinimapAutoOpenfalse编辑器启动时打开缩略图面板。
contentMinimapWidth168面板的宽度,以像素为单位(至少 148)。
contentMinimapScale0.14预览中文档的缩小比例(0.14 = 原尺寸的 14%)。
contentMinimapTitle"Minimap"(已翻译)面板的标题和可访问名称。
contentMinimapHint(已翻译的文本)面板标题下方的那一行文字。
contentMinimapEmptyText(已翻译的文本)文档为空时面板显示的内容。
accessibilityCheckerEnabledtrue无障碍检查器面板(accessibilitychecker 插件),它会列出跳过的标题级别、没有替代文本的图片、没有表头的表格等问题,并提供修复。设置为 false 则没有工具栏按钮,也没有面板。
accessibilityCheckerAutoOpenfalse编辑器启动时打开无障碍检查器面板。
accessibilityCheckerTitle"Accessibility"(已翻译)面板的标题和可访问名称。
accessibilityCheckerHint(已翻译的文本)面板标题下方的那一行文字。
accessibilityCheckerEmptyText(已翻译的文本)没有发现问题时面板显示的内容。
contentAriaLabel(无)编辑区域的可访问名称以及编辑器框架的标题(a11yenhance 插件),其后接着 Escape 提示,例如 "Article body Press Escape to leave the editing area."。未设置时,使用语言包中的 "Rich text editor. Editing area."。请为页面上的每个编辑器分别命名。
contentLabel(无)未设置 contentAriaLabel 时,用作其值。
a11yEditorLabel(无)当 contentAriaLabel 和 contentLabel 都未设置时,用作编辑区域的名称(keyboarda11y 插件)。在 2.6.11 及更早版本中,加载了插件包时它不起作用。
a11yEscapeHint"Press Escape to leave the editing area."(已翻译)添加在编辑区域名称之后的文字,告诉键盘用户如何离开编辑器。
contentLang(页面的 lang)编辑文档的 lang,用于拼写检查和屏幕阅读器发音。未设置时,跟随宿主页面的 <html lang>,或者为 en。
a11yReadOnlySuffix"Read only."编辑器变为只读时告知屏幕阅读器的内容。
a11yEditableAgain"Editing enabled."编辑器退出只读时告知屏幕阅读器的内容。
a11yRovingToolbartrue工具栏只占一个 Tab 停留点,用方向键在按钮之间移动(ARIA 工具栏模式)。设置为 false 则每个按钮都是单独的 Tab 停留点。
commentHighlightBg#fff9c4添加了批注的文本的背景色(批注插件)。
commentHighlightBorder#f9a825添加了批注的文本下方线条的颜色。
trackChangesInsertClassrte-tc rte-tc-insert包裹建议插入内容的元素的类名(建议模式)。修改它即可用您自己的方式为建议设置样式。
trackChangesDeleteClassrte-tc rte-tc-delete包裹建议删除内容的元素的类名。
onReviewDecisionDeniednull当 reviewCanDecide 拒绝某人的接受或拒绝操作时,以 { entry, action, user } 调用,以便您告诉对方原因。
reviewCanDecidenull一个 (entry, action, user, editor) 函数,决定该用户是否可以接受或拒绝某条建议;返回 false 表示拒绝。如果它抛出异常,该决定会被拒绝。
restrictedEditingModefalse锁定文档,只有标记为 data-rte-editable="true" 的区域除外(受限编辑插件),就像带有可填写字段的 Word 表单。editor.restrictedEditing 用于标记区域、开启和关闭锁定,以及在区域之间移动。
pageHeaderHtml(空)在页面视图中每一页顶部重复显示的 HTML(分页插件);{page} 和 {total} 会变成页码和总页数。文档页面设置中的页眉优先。
pageFooterHtml(空)在页面视图中每一页底部重复显示的 HTML,同样支持 {page} 和 {total}。
readabilityWordsPerMinute200估算阅读时长所使用的阅读速度(可读性统计插件)。
maxLength0文档最多可以包含的字符数(字符数限制插件);0 表示不限制。
maxWords0文档最多可以包含的字数;0 表示不限制。
charLimitEnforcetrue超过 maxLength / maxWords 时阻止继续输入和粘贴。设置为 false 则只计数和报告(editor.isOverLimit()、charlimit 事件)。
charLimitShowCountertrue设置了限制时显示浮动计数器。
sanitizerAllowTags[]内容净化程序额外保留的元素名称(净化插件):可以是精确名称、"x-*" 通配符或正则表达式,例如 ["custom-el", "x-*", /^ui-/]。script 和其他可执行元素永远不会被保留。
sanitizerAllowAttributes[]净化程序额外保留的属性名称,形式相同,例如 ["data-cms-*"]。事件处理属性(on*)永远不会被保留。
sanitizerAllowStyleTagsfalse在内容中保留 <style> 块。默认关闭:文档中的 style 块会改变显示它的页面的样式。
sanitizerGuardLiveDomtrue同时监视编辑区域本身,当可执行内容——脚本、on* 属性、javascript: URL——通过任何途径出现时再次清理,而不仅仅是通过粘贴和 setHTMLCode():例如通过协作同步、页面上的其他脚本或浏览器扩展进入的内容。设置为 false 则只清理经过编辑器自身途径的内容。净化程序在浏览器中运行;请同样在服务器上检查内容。
documentImportModereplace导入文件时的行为(文档导入插件):"replace" 替换文档,或 "insert" 在光标处插入。替换算作一个撤销步骤。
documentImportAccept.md,.markdown,.html,.htm,.txt,.doc,.docx导入对话框提供的文件类型。
documentImportImagestrue以 data URI 的形式导入 .docx 中的图片。对于图片很多的文件,可设置为 false 跳过图片。
documentImportResolver(无)一个 (file) => 函数,返回 HTML(或解析为 HTML 的 Promise),用于自行转换文件,例如在您的服务器上转换。返回字符串即可接管转换;返回其他任何值或被拒绝的 Promise,都会退回到内置的读取程序。
dictationEnabledfalse开启语音听写(语音听写插件):通过浏览器的语音识别(Web Speech API)把语音输入文档。默认关闭。在某些浏览器(例如 Chrome)中,识别在浏览器厂商的服务器上进行,因此音频会离开用户的设备;启用之前,请确认这一点是可以接受的。
dictationLang(浏览器的语言)要识别的语言,以 BCP-47 标记表示,例如 en-US。未设置时为 navigator.language。
dictationContinuoustrue在停顿之间保持监听。设置为 false 则识别一句话后即停止。
dictationInterimResultstrue在用户仍在说话时显示部分转写结果。
dictationAutoPunctuationtrue把每个听写短语的首字母大写,并在其本身没有标点时以句号结尾。
commentsEnabledtrue批注插件(内联批注、回复、解决)。设置为 false 可将其关闭。
trackChangesEnabledtrue修订跟踪插件(建议模式、接受和拒绝)。设置为 false 可将其关闭。
currentUsernull{ id, name, color }——当前编辑者。批注、建议、修订历史和协作会把此人记录为作者;只要知道用户是谁,就应设置它。
mentionEnabledtrue提及插件。设置为 false 可将其关闭。只有设置了数据源(mentionStaticList、mentionSource 或 mentionTriggers)之后,才会出现提及。
slashCommandEnabledtrue斜杠命令菜单(斜杠命令插件)。设置为 false 可将其关闭。
slashCommandIncludeAitrue加载了 AI Toolkit 时,在斜杠菜单中列出 AI Toolkit 的操作。设置为 false 可不列出它们。
slashCommandsnull启动时为斜杠菜单注册的额外命令:一个 { id, section, title, description, keywords, iconSvg, run } 数组,格式与 editor.slashCommands.register() 接受的相同。
galleryEndpoint(无)图片库对话框请求文件夹和图片的 URL(insertgallery 插件)。它返回 { currentFolder, currentFolderDisplay, parentFolder, folders: [{ folder, name }], images: [{ url, name, folder, size, source, alt }] }。未设置时,图片库只显示 galleryImages,并且不发出任何请求。
nodeTypesEnabledtrue自定义节点类型注册表(nodetypes 插件)。设置为 false 可将其关闭。
nodeTypes(无)启动时注册的节点类型,格式与 editor.nodeTypes.register() 接受的相同:{ name, match, inline, atomic, toJSON, fromJSON, toMarkdown }。已注册的元素在经过净化程序时会保留其标记,并获得由您选择的 Markdown 形式,而不会退回为其文本。
rubyAnnotationEnabledtrueRuby 注音(rubyannotation 插件):标注在东亚文字上方的读音,写作带有 <rt> 的 <ruby>。设置为 false 可将其关闭。
rubyAnnotationParenthesestrue在每个读音两侧写入 <rp> 括号,这样不支持 ruby 的阅读器会显示 "base(reading)",而不是把两者连在一起。
stateInspectorEnabledtrue状态检查器(stateinspector 插件):一个开发者面板,显示文档的结构、结构性问题,以及一份可复制、用于问题报告的快照。设置为 false 可将其关闭。
stateInspectorToolbarButtonfalse添加一个打开状态检查器的工具栏按钮。默认关闭;可以用 editor.stateInspector.open() 打开它。
stateInspectorAutoOpenfalse编辑器启动时打开状态检查器。
stateInspectorLogLimit60检查器保留的最近编辑器事件数量(10 到 500)。
stateInspectorMaxDepth24检查器遍历文档树的深度(至少 2)。
stateInspectorTitleState inspector面板的标题。
stateInspectorHint(文本)面板标题下方的那一行文字。
stateInspectorEmptyTextNo content to inspect yet.文档为空时面板显示的内容。
名称默认值说明
paragraphItemsNormal,H1,H2,H3,H4,H5,H6预定义的一组格式块。
fontSizeItems8,9,10,11,12,13,14,16,
18,24,36,48,60,72,96
预定义的一组字号。
fontNameItemsArial,Arial Black,Comic Sans MS,
Courier New,Tahoma,Georgia,Helvetica,
Segoe UI,Sans-Serif,Impact,
Times New Roman,Verdana
预定义的一组字体名称。
lineHeightItems100%,150%,200%,250%,300%,
350%,400%,450%,500%,600%
预定义的一组行高选项。
inlineStyles[["Red", "color:red", "color:red"],
["Bold", "font-weight:bold", "font-weight:bold"],
["Mark", "my-cls-mark"],
["Warning", "my-cls-warning"]]
内联样式下拉菜单的默认 CSS 样式。
[文本, CSS 样式, 显示样式]
paragraphStyles[["Red", "color:red"],
["Bold", "font-weight:bold"],
["Quote", "my-cls-quote"],
["Large Center", "my-cls-largecenter"]]
段落样式下拉菜单的默认 CSS 样式。
[文本, CSS 样式, 显示样式]
imageStyles[["Border", "border:solid 1px gray"],
["Shadow", "box-shadow:0 0 8px gray"],
["Margin10", "margin:10px"],
["Padding:10", "padding:10px"]]
图片样式下拉菜单的默认 CSS 样式。
[文本, CSS 样式]
linkStyles[["Margin10", "margin:10px"],
["Padding:10", "padding:10px"],
["BigText", "font-size:36px"]]
链接样式下拉菜单的默认 CSS 样式。
[文本, CSS 样式]
galleryImages[]图片库对话框的预设图片:一个 URL、[url, text] 或 { url, name, alt }。默认为空(在 2.6.11 之前,它列出了 richtexteditor.com 上的六张示例图片,每次打开图片库时都会从我们的服务器获取)。请参阅图片库。
htmlTemplates[]Insert Template 对话框提供的模板:[title, html] 或 { title, html, description }。默认为空(在 2.6.11 之前,它附带了两个都名为 "My Doc 1" 的演示模板);没有模板时,对话框会给出提示。
characterItems预定义的一组字符。
foreColorItems预定义的一组前景色。
backColorItems预定义的一组背景色。
linkItems[]Insert Link 对话框建议的地址,例如 ["/about", "/contact"]。默认为空(在 2.6.11 之前,它会建议五个大公司的网站);没有条目时,建议箭头会隐藏。
imageItems[]Insert Image(通过 URL)对话框建议的地址。默认为空;没有条目时,箭头会隐藏。

插件选项

上面的选项用于配置核心编辑器。下面的所有选项都由 richtexteditor/plugins/ 中附带的插件提供。设置方式相同——写在构造函数的选项对象中,或者在创建编辑器之前全局设置在 RTE_DefaultConfig 上。

源码构建预览:较新的插件选项

这些选项存在于当前的源码插件中,但并未包含在每个已发布的打包版本或本站当前的演示资源中。请使用与之匹配、经过测试的插件构建;设置一个选项并不能为较旧的运行时增加缺失的功能。

选项默认值说明
aiToolkitImageResolvernull图片生成构建:(prompt: string) => Promise<string>。您的解析器返回一个 HTTPS 图片 URL,或者一个 PNG/JPEG/WebP/GIF 图片 data URL,最多 6,000,000 个字符。插件本身不会调用任何服务商。请把服务商凭据保存在您的服务器上;保存生成的图片之前,请应用您的上传/存储策略。
galleryAcceptedExtensionsnull图片库构建:一个数组,例如 [".jpg", ".png"],用于替换 Insert Gallery 对话框所声明和允许的格式。请把它设置为您的上传端点所接受的格式。
commentMentions[]批注提及构建:[{ id, name }] 提供在批注编辑框中输入 @ 后建议的人员。被选中人员的 id/name 会与批注一起保存。这只是一个建议列表,而不是授权或通知/电子邮件服务;这些需要由您的应用另行提供。
tableRowDragtrue行拖动构建:在创建编辑器之前设置为 false,可隐藏行拖动手柄。表头行保持固定。合并/不规则的表格、只读/仅批注内容以及建议模式会拒绝不受支持的移动;行移动不会被记录为建议。按 Escape 可取消拖动。
tableColumnDragtrue列拖动构建:在创建编辑器之前设置为 false,可隐藏列拖动手柄。移动时会把所有行中的单元格连同列宽一起移动;行号列始终保持在第一列。合并/不规则的表格以及只读/仅批注或建议模式会拒绝不受支持的移动。按 Escape 可取消拖动。

AI

每个 AI 界面都采用自带密钥的方式:编辑器调用您提供的函数,自己从不与服务商通信。

选项默认值说明
ghostTextfalse启用内联灰色文本补全。按 Tab 接受,按 Esc 取消。
ghostTextResolvernullasync ({ before }) => string。ghostText 要起作用,必须设置此项。
aiToolkitReviewLegacyLayouttrue使用旧版的 AI Review 抽屉布局。
aitoolkit_skip_auto_csstrue当您提供自己的样式表时,跳过自动注入 AI Toolkit 样式表。

输入与写作辅助

在作者输入时触发的行为。每一项都可以单独关闭。

选项默认值说明
autocorrectEnabledtrue自动更正插件的总开关。它不会关闭编辑器核心的智能排版——请参阅 smartTypography。
autocorrectCapitalizetrue把句子的首字母大写。
autocorrectSpellingtrue应用内置的常见拼写错误列表。
autocorrectTypographytrue由自动更正插件生成的智能引号、破折号和省略号。编辑器核心自己也会做同样的替换;要停止这些替换,请把 smartTypography 设置为 false。
autocorrectReplacementsnull您自己的 { from: to } 替换映射,与内置映射合并。
emojiAutocompleteEnabledtrue输入 :shortcode: 插入表情。
emojiShortcodes{ … }覆盖或扩展短代码到表情的映射。
foldHeadingsEnabledtrue编辑区域中可折叠的标题。
typewriterModeEnabledfalse输入时让光标所在行在垂直方向上保持固定。
typewriterAnchor0.5光标所在行的位置,从 0(顶部)到 1(底部)。
focusModeEnabledfalse让光标所在块以外的所有块变暗。
dragHandleEnabledtrue在页边显示块拖动手柄。
dragHandleKeyboardtrue允许用键盘重新排序块(Alt+Up / Alt+Down)。
formattingMarkPilcrowtrue开启格式标记时显示段落标记。
formattingMarkBlockstrue开启格式标记时显示块边界轮廓。
formattingMarkInvisiblestrue显示空格、制表符和不换行空格。
permanentPenClass"rte-pen"应用于固定画笔文本的类名。
permanentPenStyle{ … }固定画笔文本的内联样式对象。
titleCaseSmallWords"a an and as at …"Change Case → Title Case 时保持小写的单词。
formatPainterProperties[ … ]格式刷复制哪些 CSS 属性。
readabilityStatstrue在状态栏中显示阅读难易度统计。
localDraftfalse保留一份本地草稿,使内容在意外重新加载后仍然保留。

块、结构与引用

结构性内容:提示框、分栏、编号列表、脚注、交叉引用和目录。

选项默认值说明
text_inlinecode"Inline code"内联代码按钮的工具栏标签和工具提示(命令 "inlinecode",生成一个不带属性的 <code> 元素)。
calloutTypes[ … ]可用的提示框种类(info、warning……)。
calloutDefaultType"info"未选择种类时插入的提示框种类。
columnsDefaultCount2分栏块创建的栏数。
legalListClass"rte-legal-list"应用于多级法律文书列表的类名。
legalListSeparator"."各级编号之间的分隔符(1.1.1)。
legalListSuffix"."最后一级之后的结尾字符。
lineNumberStart1第一个行号。
lineNumberInterval1每隔 N 行显示一个行号。
lineNumberRestart"continuous""continuous"(连续)或每页重新开始。
lineNumberGutter38页边宽度,以像素为单位。
footnotesTitle"Footnotes"显示在脚注列表上方的标题。
footnotesNumbering"decimal"脚注编号的标记样式。
footnotesMarkerPrefix""每个脚注标记之前的文本。
footnotesMarkerSuffix""每个脚注标记之后的文本。
crossRefFigureLabel"Figure"引用图时使用的标签。
crossRefTableLabel"Table"引用表格时使用的标签。
crossRefMissingText"[reference not found]"交叉引用的目标不存在时显示的文本。
tocTitle"Contents"生成的目录的标题。
tocMinLevel1包含的最高标题级别。
tocMaxLevel3包含的最低标题级别。
tocPageNumbers"auto"在目录中显示页码。
mathDialogSamples[ … ]公式对话框中提供的入门公式。
tableNumberSeries"numeric"表格行号的编号序列。
tableNumberHeader"#"行号列的表头文字。

页面布局、导出与导入

所有把文档变成文件或打印页面的功能。导出在浏览器中运行;不会上传任何内容。

选项默认值说明
paginationEnabledfalse以分开的页面显示文档。
pageFormat"A4"分页和导出使用的页面大小。
pageOrientation"portrait""portrait"(纵向)或 "landscape"(横向)。
pageMargins{ top: 1, right: 1, bottom: 1, left: 1 }页边距,以英寸为单位。
paginationShowPageNumberstrue在页面视图中显示页码。
paginationShowPageCounttrue在页码旁边显示 "of N"。
docxExporttrue启用 .docx 导出(在浏览器中生成,无需服务器)。
wordExporttrue启用与 Word 兼容的 HTML 导出。
documentImporttrue启用 .docx 导入。
pdfExporttrue启用带标签的矢量 PDF 导出。
html2pdfScriptUrlnull栅格 PDF 方式所用 html2pdf 的路径;省略则只保留矢量方式。
markdownExportEnabledtrue启用以 Markdown 形式复制/下载。
emailWrapWidth640电子邮件 HTML 导出使用的表格宽度。
emailInlineProperties[ … ]为适配电子邮件客户端而内联到元素上的 CSS 属性。
watermarkText"DRAFT"水印文字。
watermarkImagenull图片水印;会覆盖文字水印。
watermarkMode"tile""tile"(平铺)或单个居中的水印。
watermarkOpacity0.18水印的不透明度,从 0 到 1。
watermarkAngle-30旋转角度。
watermarkColor"#94a3b8"水印颜色。
watermarkFontSize48水印字号,以像素为单位。
watermarkPrintfalse打印时包含水印。

解析器让您提供自己的数据源。每个解析器都是一个普通函数,因此端点和凭据始终由您掌控。

选项默认值说明
autoEmbedEnabledtrue把粘贴的 YouTube 或 Vimeo URL 变成响应式嵌入内容。
autoEmbedResolvernull(url) => 返回 https 嵌入 URL,或者返回 null 表示不处理。可添加您自己的服务商。
bookmarkResolvernull(url) => 返回用于链接预览卡片的元数据。
bookmarkFaviconService"/favicon-proxy?domain="书签卡片使用的网站图标端点。请把它指向您自己的代理。
diagramResolvernull提供一个 Mermaid 渲染器;软件包中没有附带。
diagramSamples[ … ]插入对话框中提供的入门图示。
drawingWidth640绘图插件(drawing.js,下一版本):画布宽度,以 CSS 像素为单位。
drawingHeight360绘图插件(下一版本):画布高度,以 CSS 像素为单位。
drawingColors[6 colours]绘图插件(下一版本):为画笔和记号笔提供的颜色色板。
text_insertdrawing"Drawing"绘图插件(下一版本):insertdrawing 按钮的工具栏标签。
chipResolvernull(query) => 返回智能标签条目。
chipDateFormatnull日期标签的格式字符串。
mergeFields[ … ]可用的合并字段。
mergeFieldPrefix"{{"开始定界符。
mergeFieldSuffix"}}"结束定界符。
mergeFieldMissing"placeholder"字段没有值时渲染的内容。

语言、方向与无障碍

编辑器提供 67 种语言。方向和无障碍行为可以在此基础上进一步配置。

选项默认值说明
defaultTextDirectionnull"ltr"、"rtl",或者 null 表示继承。
textDirectionAutoDetectfalse根据输入的文本检测方向。
textDirectionSwapAligntrue方向翻转时镜像对齐方式。
rtlUserInterface"auto"为 RTL 区域设置镜像工具栏和对话框。
a11yEnhancetrue为编辑器界面提供可访问名称和角色。
dialogA11ytrue在对话框内捕获焦点并添加标签。
keyboardA11ytrue在工具栏上使用游走式 tabindex,让 Tab 可以离开编辑器。
readAloudRate1.0朗读的语速。
readAloudHighlighttrue朗读时高亮显示正在读的文本。
textPartLanguages24 languagesLanguage 下拉菜单提供的语言:[{ code, label, dir }]。WCAG 3.1.2。
textPartLanguageHighlighttrue编辑时在已标记的短语下显示点状下划线。仅在编辑器中显示;永远不会被序列化。

编辑区域与多区域

到达那些没有节点可以容纳光标的位置,以及用一个工具栏控制多个可编辑区域。

选项默认值说明
gapCursorKeystrue在文档边缘,用方向键/Home/End 跳出表格或其他会困住光标的块。
gapCursorClicktrue点击内容周围的空白处,在那里插入一个段落。
gapCursorHinttrue在两个块之间高度为零的边界处显示插入提示。
multiRootGroupnull共享同一组名的多个实例会作为一个编辑器工作,只显示一个工具栏。
multiRootNamecontainer id该区域在组 API(getHTML、focusRoot……)中的名称。
multiRootToolbarHostnull把当前活动的工具栏移入的元素(或其 id)。为 null 时工具栏保持原位。
layoutTableOutlinetrue编辑时在布局表格周围显示虚线轮廓。标记为 role="presentation" 的表格在设计上是不可见的;这是看清您正在编辑什么的唯一方式。仅在编辑器中显示。
shadowStyleAdoptiontrue把编辑器的样式表复制到包含它的 shadow root 中。没有这一项,编辑器虽然能正确编辑,但在那里会完全没有样式,因为文档样式表不会跨越 shadow 边界。在 shadow root 之外没有任何开销。
shadowStyleSourcesnull同样要复制到 shadow 边界内的额外样式表 URL——例如您自己的皮肤覆盖样式。字符串或数组。

来自您自己 CSS 的样式

用页面样式表中已有的类填充 Quick Styles 下拉菜单,而不必把它们重新输入到配置中。

选项默认值说明
importStylesfalse总开关。需要手动开启,因为在使用工具类 CSS 的页面上,类列表会非常庞大。
importStylesSheetsnull要读取哪些样式表:与 href 匹配的字符串或 RegExp,或者一个函数。null = 所有可读取的样式表。
importStylesExclude/^(rte|ck|mce|…)/类名阻止列表,在自动排除编辑器 CSS 的基础上应用。
importStylesFilternull(className, selector, bucket) => 返回 false 表示跳过,或返回一个字符串用于重新命名。
importStylesReplacefalse替换已配置的样式,而不是追加到其后。
importStylesLimit100每个下拉菜单的上限。被舍弃的内容会被报告出来,绝不会悄悄截断。

内容安全与检查

过滤与验证。安全审查会问到的就是这些选项。

选项默认值说明
contentSanitizertrue对输入、输出和实时 DOM 应用允许列表过滤。请保持开启。
spellCheckEnabledtrue为可编辑区域设置 spellcheck="true",供浏览器的拼写检查器使用。
spellCheckResolvernull(text) => 返回 [{ word, offset, length, suggestions }],可来自您获得授权的任何服务。
linkCheckResolvernull(urls) => 返回供链接检查器使用的可达性结果。
linkCheckMixedContenttrue标记 https:// 页面上的 http:// 链接。
linkCheckUnsafeSchemes["javascript:", "data:", …]被报告为不安全的协议。

修订历史

文档的命名版本,保存在浏览器中,并可选择发送到您的服务器。

选项默认值说明
revisionHistoryEnabledtrue设置为 false 可关闭修订历史插件。
revisionHistoryKey(page path + query)从 core 2.6.10 起提供:保存本文档各版本所用的键。在 CMS 中请把它设置为记录 id,尤其是当 URL 无法标识文档时。早期构建在整个站点中共用一个列表。
revisionHistoryMaxEntries50保留的版本数;最旧的版本最先被删除。
revisionHistoryAutoSnapshotMs0内容有变化时每隔 N 毫秒自动保存一个版本;0 = 只在请求时保存。
revisionHistorySnapshotBeforeRestoretrue从 core 2.6.10 起提供:恢复之前,先把当前内容保存为一个 "Before restoring …" 版本,这样误操作的恢复也可以撤销。false = 旧的行为,会丢弃未保存的工作。
revisionHistoryUrl""以 JSON 形式把每个版本 POST 到这个 URL。
revisionHistoryRequestHeadersnull该 POST 请求的标头,可以是一个对象,也可以是返回对象的函数(例如身份验证令牌)。
onRevisionHistorySyncErrornull(detail) => POST 失败时调用;该版本仍会保存在本地。