配置参考
本页列出编辑器所有可用的配置选项。设置方式和使用指导请参阅配置。
在较小的屏幕上,请水平滚动表格以查看所有列。键盘用户可以让表格区域获得焦点,然后使用方向键。
| 名称 | 默认值 | 说明 |
|---|---|---|
| skin | default | 编辑器外框的外观。该值会成为容器上的一个类名(rte-skin-<value>),因此主题提供了 dark、gray、blue 和 rounded-corner,您自己编写样式的任何名称也都可以使用。不设置时使用默认的浅色外框。请参阅 skin。 |
| toolbar | default | default、basic 或 full。在桌面端自动为工具栏配置一组按钮。 |
| toolbarMobile | mobile | 移动设备上使用的工具栏。 |
| maxWidthForMobile | 992 | 当屏幕(浏览器窗口)小于 992 时,编辑器应使用移动端工具栏。 |
| timeoutAddToUndo | 900 | 用户快速输入时,等待 900ms 再添加撤销条目。 |
| enableDragDrop | true | 启用或禁用编辑器的拖放支持。 |
| enableObjectResizing | true | 指定是否允许用户在 RichTextEditor 中调整对象的大小。 |
| readOnly | false | 获取或设置一个值,指示 RichTextEditor 是作为可编辑的 HTML 编辑器,还是作为只读的文档查看器。 |
| focusOnLoad | false | 指定页面加载时编辑器是否获得焦点。设置为 true 时编辑器会获得焦点,设置为 false 时则不会。 |
| allowScriptCode | false | 指定是否从 HTML 中去除所有 script 元素及其内容,以防止 JavaScript 注入。当此属性设置为 false(默认值)时,Rich Text Editor 会从 HTML 中去除所有 script 元素及其内容。 |
| tagWhiteList | [] | 白名单,包含可以在编辑器中使用的标签列表。 |
| tagBlackList | [] | 黑名单,包含不能在编辑器中使用的标签列表。 |
| maxHTMLLength | 0 | 获取或设置 RichTextEditor 中允许的最大字符数(包含 HTML 标签)。默认值 0 表示不限制。超出限制时,编辑器会恢复到上一个有效状态,并触发 reachmaxlength customdialog 钩子。 |
| maxTextLength | 0 | 获取或设置 RichTextEditor 中允许的最大字符数(不包含 HTML 标签)。默认值 0 表示不限制。超出限制时,编辑器会恢复到上一个有效状态,并触发 reachmaxlength customdialog 钩子。 |
| styleWithCSS | false | 粗体、斜体和下划线的保存方式。默认写入标签——<b>、<i>、<u>——boldTag 和 italicTag 可以重命名这些标签,屏幕阅读器会把它们读作强调。设置为 true 则改为保存内联样式(<span style="font-weight: bold">)。Core 2.6.8 及更高版本;在此之前,结果取决于插件包是否先加载完成,因此同样的内容可能以任一种方式保存。 |
| pasteStripThemeStyles | true | 粘贴时,去除那些只是重复编辑器自身主题的内联样式。浏览器会把计算样式写到复制的 HTML 上,因此以前在编辑器内部复制的文本,到达时会带着主题的外边距、字号和颜色,并随内容一起保存。作者设置的、与主题不同的样式会保留。设置为 false 可保留所有粘贴的样式。Core 2.6.8 及更高版本。 |
| smartTypography | true | 把作者输入的内容替换为印刷字符:直引号变成弯引号,两个连字符变成长破折号,三个句点变成省略号,(c)、(r) 和 (tm) 变成 ©、® 和 ™。在 code、pre 或 kbd 中不做任何更改。这属于编辑器核心,与自动更正插件相互独立,因此 autocorrectEnabled: false 不会关闭它。设置为 false 可完全保留输入的内容;下面四个选项分别单独控制每一种替换。 |
| smartTypographyQuotes | true | 直双引号和直单引号变成弯引号(“ ” ‘ ’),单词内部的撇号变成 ’(don’t)。 |
| smartTypographyDashes | true | 两个连字符变成长破折号(—)。单个连字符保持不变。 |
| smartTypographyEllipsis | true | 三个句点变成一个省略号字符(…)。 |
| smartTypographyTrademarks | true | (c)、(r) 和 (tm) 变成 ©、® 和 ™。 |
| sanitizerAllowIframes | true | 在内容中保留 <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"]。这是更强的控制方式:只要您知道会有哪些嵌入内容,就应该设置它。 |
| maxUploadFileSize | 0 | 编辑器会插入或上传的最大文件字节数。默认值 0 表示不限制。适用于图片和文档对话框、粘贴以及拖放:超出限制的文件会在读取之前被拒绝,因此不会有任何内容嵌入文档,也不会有任何内容发送给上传处理程序。提示消息来自 text_uploadtoobig;处理 uploadtoobig customdialog 钩子可显示您自己的对话框。 |
| allowBase64Images | true | 没有上传处理程序或 file_upload_url 时,插入的图片会以 base64 data: URL 的形式嵌入 HTML。设置为 false 则从不嵌入:图片会以 text_base64disabled 消息被拒绝(customdialog 钩子 base64disabled),此时必须提供上传处理程序。Core 2.6.5 及更高版本。 |
| base64ImageMaxSize | 204800 | 缩小之后 base64 图片的最大字节数(200 KB)。更大的图片会以 text_base64toobig 消息被拒绝(customdialog 钩子 base64toobig)。0 表示不设上限,即 core 2.6.5 之前的行为。 |
| base64ImageShrink | true | 在以 base64 嵌入之前,在浏览器中缩放并重新编码 JPEG、PNG、WebP 和 BMP 图片。GIF 和 SVG 永远不会被重新编码。设置为 false 时,如果原始字节不超过 base64ImageMaxSize,则嵌入原始字节。Core 2.6.5 及更高版本。 |
| base64ImageMaxDimension | 1600 | 为 base64 嵌入而缩小的图片,其最长边的像素数。Core 2.6.5 及更高版本。 |
| file_upload_url | null | 编辑器以 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_field | file | 发送文件时使用的表单字段名。CKEditor 风格的端点期望使用 upload。 |
| file_upload_base_path | null | 加在端点返回的相对 URL 前面,用于从 CDN 提供上传的文件。 |
| file_upload_credentials | false | 上传时发送 Cookie 和 HTTP 身份验证信息,用于其他源上的端点。 |
| file_upload_reuse_filename | false | 以原始文件名发送文件。默认会生成一个唯一的名称,这样两个用户上传 image.png 时不会互相覆盖。 |
| file_upload_headers | null | 上传请求的额外标头,例如 CSRF 令牌。 |
| automaticUploads | false | 为 true 时,编辑器会主动上传内容中以 base64 data: URL 形式嵌入的图片:在 setHTMLCode 之后,以及插入或粘贴 HTML 之后。它会替您运行 uploadEmbeddedImages(),并按 automaticUploadsDelay(300 ms)进行防抖;没有配置 file_upload_handler 时什么也不做。 |
| automaticUploadsDelay | 300 | 自动扫描运行之前等待的毫秒数,这样一次粘贴多张图片时只会上传一次。 |
| uploadRetryCount | 0 | 上传失败后、错误到达处理程序的回调和用户之前的额外尝试次数。每次尝试都会触发一个 uploadretry 事件。被取消的上传或其图片已被删除的上传永远不会重试。 |
| uploadRetryDelay | 1000 | 第一次重试之前的毫秒数。之后每次尝试的等待时间都会加倍。 |
| autoSave | null | 在用户输入时把内容保存到您自己的服务器:{ onSave: function (html) { return promise; }, interval: 2000, indicator: true, retryCount: 3, retryDelay: 5000 }。onSave 是必需的;返回一个 Promise 可以让编辑器显示保存是否成功。失败的保存会以加倍的延迟重试,并在浏览器恢复联网时立即再次重试。手动控制请参阅 editor.autoSave 方法。 |
| editorResizeMode | both | both、height 或 none。获取或设置调整大小的模式。 |
| toggleBorder | true | 指定 ToggleBorder 状态。ToggleBorder 是一个方便的功能,无需在代码中设置 border = 1 之类的属性,就能看到边框。 |
| showSelectedBlock | true | 指定是否在 RichTextEditor 中显示选中的块。 |
| showFloatTextToolBar | false | 指定是否显示由 config.controltoolbar_TEXT 定义的 FloatTextToolBar。 |
| showFloatLinkToolBar | false | 指定是否显示由 config.controltoolbar_A 定义的 FloatLinkToolBar。 |
| showFloatImageToolBbar | false | 指定是否显示由 config.controltoolbar_IMG 定义的 FloatImageToolBbar。 |
| showFloatTableToolBar | false | 指定是否显示由 config.controltoolbar_TD 定义的 FloatTableToolBar。 |
| showFloatParagraph | true | 指定是否在左侧显示 FloatParagraph。 |
| floatParagraphPos | left | left 或 right。获取或设置 FloatParagraph 的位置。 |
| floatParagraphPosX | 0 | 一个数字,表示 FloatParagraph 的水平坐标,以像素为单位。 |
| floatParagraphPosY | 0 | 一个数字,表示 FloatParagraph 的垂直坐标,以像素为单位。 |
| showPlusButton | true | 指定是否显示编辑器的加号按钮。 |
| showTagList | true | 指定是否在编辑器底栏中显示标签选择器。 |
| showStatistics | true | 指定是否在编辑器底栏中显示内容统计信息。 |
| tabSpaces | 4 | 获取或设置用户按下 "tab" 键时插入的空格数。 |
| enterKeyTag | p | 决定在编辑器中按下 "enter" 键时会发生什么。div、p 或 br。 |
| htmlcode_forcehexformat | false | 在保存的 HTML 中,把颜色写成 #993300 而不是 rgb(153, 51, 0)。编辑器会原样传递所选的颜色;是浏览器在读回样式时把它规范化为 rgb(),因此这个选项会在输出时进行转换。它既适用于用户应用的颜色,也适用于加载或粘贴的内容中已有的颜色,并且同时覆盖文字颜色和背景色。rgba() 保持不变,因为 6 位十六进制无法携带其 alpha 通道。 |
| paragraphClass | paragraph | 创建新段落时,会自动为段落添加指定的类名。 |
| 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 都会粘贴纯文本。 |
| smartLinkPaste | true | 在选中文本时粘贴 URL,会把选中的文本变成链接,而不是替换它。 |
| autoLinkPaste | true | 从 core 2.6.10 起提供:粘贴的纯文本中的网址(https://… 或 www.…)会变成链接;末尾的标点保留在链接之外。使用 Ctrl+Shift+V 时或在链接、代码内部时不会应用。设置为 false 可把网址作为纯文本粘贴。 |
| linkDefaultProtocol | "http://" | 从 core 2.6.10 起提供:为没有协议的地址添加的协议前缀,例如在链接对话框中输入的 example.com,或粘贴的 www. 地址。设置为 "https://" 可默认使用安全链接。 |
| pasteMarkdown | false | 从 core 2.6.10 起提供:为 true 时,以纯文本形式粘贴的 Markdown(README、聊天内容、AI 回答)会被转换为带格式的内容:标题、粗体、斜体、链接、列表、引用和代码块。看起来不像 Markdown 的文本、使用 Ctrl+Shift+V 的粘贴以及在代码内部的粘贴,都保留为纯文本。结果会像任何粘贴一样经过净化。 |
| markdownShortcutsEnabled | true | 在空段落开头输入的 Markdown 块级快捷方式:# 到 ###### 为标题,- / * 为项目符号,1. / 1) 为编号列表(1 以外的数字会设置起始编号),> 为引用,[ ] 为待办事项(需要待办插件),``` 为代码块,--- 加 Enter 为分隔线。按一次 Ctrl+Z 即可恢复输入的字符。 |
| markdownInlineEnabled | true | 输入结束定界符时自动应用内联 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 文本。 |
| editablePaddingTop | 2 | 设置可编辑区域的上内边距(间距)。 |
| editablePaddingBottom | 2 | 设置可编辑区域的下内边距(间距)。 |
| editablePaddingLeft | 2 | 设置可编辑区域的左内边距(间距)。 |
| editablePaddingRight | 2 | 设置可编辑区域的右内边距(间距)。 |
| zIndexFullPage | 9999 | 设置编辑器以全屏模式打开时的 z-index。 |
| zIndexFloat | 99999 | 设置编辑器浮动工具栏的 z-index。 |
| zIndexDialog | 999999 | 设置编辑器对话框的 z-index。 |
| zIndexDropDown | 9999999 | 设置编辑器下拉菜单的 z-index。 |
| fontNameDropDownMinWidth | 90px | 设置字体名称下拉菜单的最小宽度。 |
| fontNameDropDownMaxWidth | 110px | 设置字体名称下拉菜单的最大宽度。 |
| tooltipAttribute | rte-tooltip | 设置编辑器工具提示所使用的属性。 |
| showKeyboardShortcutsInTooltips | true | 在每个工具栏按钮的工具提示中显示其键盘快捷键("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 的翻译列表中显示语言名称,并书写日期标签。未加载语言包时使用英语。 |
| controlSelectionClass | rte-control-selected | 设置编辑器控件选区的类名。 |
| controlSelectionMargin | 7 | 设置编辑器控件选区的外边距。 |
| altTextHint | true | 没有替代文本或替代文本为空的图片,会在编辑区域中显示琥珀色虚线轮廓,让作者看到哪些图片还需要描述。只在编辑器中显示;不会向保存的 HTML 添加任何内容。设置为 false 可隐藏轮廓。 |
| autoHeadingAnchors | true | 每次更改后稍等片刻,为每个标题生成一个由其文本构成的 id("Hello World" 会变成 hello-world),以便链接和目录指向它;重复的 id 会加上 -2、-3。设置为 false 可阻止核心分配 id。加载了插件包时,文档大纲插件会自行保证标题 id 的唯一性。 |
| autoLinkOnType | true | 在文本中输入的 URL 或电子邮件地址,会在输入其后的空格时变成链接。设置为 false 可让输入的地址保持为纯文本。 |
| backspaceOutdent | true | 在列表项的最开头按 Backspace,会把该项移出列表变成段落,而不是与上一项合并。设置为 false 则改为合并。 |
| blockDragHandles | true | 把鼠标悬停在块(段落、标题、列表、表格……)上时,旁边会显示一个拖动手柄;拖动手柄即可移动该块。设置为 false 可隐藏手柄。 |
| collabEnabled | true | 允许协作插件(yjscollab)设置 editor.collab。设置为 false 时插件不做任何事:不会有 editor.collab。只有调用 editor.collab.attach(...) 时才会开始协作;仅凭这个默认值不会建立任何连接。请参阅协作。 |
| collabShowPresence | true | 附加了协作会话时,显示列出文档中其他人员的面板。设置为 false 可隐藏它。 |
| collabShowRemoteCursors | true | 附加了协作会话时,在文本上显示其他人的光标和选区。设置为 false 可隐藏它们。 |
| collabTextSync | false | 协作会话除在线状态和审阅台账之外还同步什么(yjscollab 插件):false——不同步文档文本;true——在共享的 Yjs 文本中同步整个文档的快照;"crdt"——通过 CRDT 引擎(crdt-engine.min.js)进行字符级合并,未加载引擎时退回到快照方式。 |
| collabRequireCrdt | false | 在 collabTextSync: "crdt" 下,如果缺少 CRDT 引擎,则关闭文本同步,而不是退回到快照方式(在线状态和审阅台账保持开启);控制台会说明原因。 |
| collabTextName | richtextbox.body | 快照同步所使用的共享 Yjs 文本的名称。同一个 Yjs 文档中的每个编辑器都要使用各自的名称。 |
| aiToolkitEnabled | true | AI Toolkit 插件。设置为 false 可将其关闭:没有 AI 按钮、菜单或对话框。请参阅 AI Toolkit。 |
| aiToolkitResolver | null | AI Toolkit 调用以访问您的 AI 服务的函数(自带密钥或端点);editor.aiToolkit.setResolver(fn) 可在运行时设置它。没有它时,工具包以演示模式运行。AI Toolkit 页面介绍了请求和回复的格式。 |
| aiToolkitAgent | null | editor.aiToolkit.runAgent(prompt) 用于规划和应用多步编辑的函数;setAgent(fn) 可在运行时设置它。没有它时,runAgent 会以一条说明原因的消息拒绝。 |
| aiToolkitAutoToolbarButtons | true | 自动把 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 } 数组。 |
| aiToolkitOperationHandlers | AI 回复中可能包含的操作类型的处理程序,按类型组织:{ 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。为空时不发送任何内容。 |
| aiToolkitReviewSyncInterval | 15000 | 与服务器同步审阅状态的频率,以毫秒为单位(至少 5000)。 |
| collabLedgerMapName | reviewLedger | 在对等端之间传递批注、建议和 AI 审阅决定的共享 Yjs 映射的名称。 |
| onCollabStatus | null | 会话开始时以 { attached, textSyncMode, requestedTextSync, fallbackReason, yjsBridge, peerCount } 调用,以便您显示当前生效的模式(例如从 CRDT 退回到快照)。editor.collab.getStatus() 返回的也是同一个对象。 |
| imageHoverQuickBar | true | 把鼠标悬停在编辑器中的图片上时,会在图片上方显示一个小的图片操作栏。设置为 false 可隐藏它。 |
| imageLazyLoad | true | 编辑器插入的图片(来自 URL、上传或拖放)会带上 loading="lazy" 和 decoding="async",这样长文档不会一次性加载所有图片。设置为 false 则插入不带这些属性的图片。 |
| indentUseMargin | true | 对段落或标题执行增加缩进和减少缩进时,像 Word 一样改变其外边距(对于从左到右的文本为 margin-left)。设置为 false 则改为改变其内边距。步长为 indentation。 |
| inlineMath | true | 允许 editor.applyMathMarkup() 把 $...$ 片段包装在 <span class="rte-math-inline" data-tex="..."> 中,供 KaTeX 或 MathJax 之类的数学渲染器绘制。在您调用它之前不会发生任何事。设置为 false 时,调用不会改变任何内容。 |
| placeholderShowOnlyWhenEditable | true | 当编辑器为只读(readOnly 或 setReadOnly(true))或处于仅批注模式时隐藏 placeholder,允许编辑时再显示它。设置为 false 则在只读编辑器中也显示它。(在 2.6.11 及更早版本中,只读编辑器仍会显示它。) |
| showFloatLinkUrlPreview | true | 当光标位于链接中时,浮动链接工具栏会首先显示链接的地址,点击后在新标签页中打开。设置为 false 则只显示工具栏按钮。 |
| smartPasteToast | true | 清理完从 Word 或 Google Docs 粘贴的内容之后,会显示一条简短的提示。设置为 false 则静默清理。 |
| tableColumnResize | true | 指向两个表格列之间的边框时会显示调整大小的提示;拖动它即可改变列宽。设置为 false 可关闭拖动调整列宽。 |
| tableRowResize | true | 指向表格行的底边时会显示调整大小的提示;拖动它即可改变行高。设置为 false 可关闭拖动调整行高。 |
| aiContextMenu | true | 加载了 AI Toolkit 时,右键单击选中的文本(三个字符或更多)会打开针对该文本的 AI 操作菜单。设置为 false 则保留浏览器自己的菜单。 |
| wordExportFileName | (无) | 未传入名称时,editor.exportToWord()(与 Word 兼容的 .doc)使用的基本文件名。未设置时,使用第一个 h1-h3 标题的文本,或者 "document"。 |
| wordExportFontFamily | Calibri, 'Segoe UI', Arial, sans-serif | .doc 导出的正文字体。传给 exportToWord() 的选项优先。 |
| wordExportFontSize | 11pt | .doc 导出的正文字号。 |
| wordExportPageSize | 8.5in 11in | .doc 导出的页面大小,以 CSS @page 尺寸表示(默认为 US Letter;A4 为 "21cm 29.7cm")。文档自身已有的页面设置(页面视图)优先。 |
| wordExportMargin | 1in | .doc 导出的页边距,以 CSS 长度或简写表示。文档自身的页面设置优先。 |
| wordExportLandscape | false | .doc 导出使用横向页面。文档自身的页面设置优先。 |
| docxExportFileName | (无) | 未传入名称时 .docx 导出使用的基本文件名。未设置时为 Export- 加上日期和时间(YYMMDD-HHMMSS,例如 Export-261026-153045.docx)。 |
| docxExportTitle | (无) | 保存在 .docx 文件属性中的标题。未设置时,使用页面的 document.title,或者 "Document"。 |
| docxExportAuthor | RichTextEditor | 保存在 .docx 文件属性中的作者。 |
| pdfExportFileName | (无) | 未传入名称时 PDF 导出使用的基本文件名。未设置时为 Export- 加上日期和时间(YYMMDD-HHMMSS)。 |
| pdfExportTitle | (无) | 保存在 PDF 元数据中的标题。未设置时,使用页面的 document.title,或者 "Document"。 |
| pdfExportAuthor | (空) | 保存在 PDF 元数据中的作者。 |
| pdfExportFont | helvetica | 矢量 PDF 导出(pdfexport 插件)使用的字体:"helvetica"、"times" 或 "courier",即无需嵌入的标准 PDF 字体。它们只覆盖西欧拉丁字母;请参阅 pdfExportRasterFallback。 |
| pdfExportBaseFontSize | 11 | 矢量 PDF 的正文字号,以磅为单位;标题按它缩放。 |
| pdfExportHeader | (无) | 在矢量 PDF 每一页顶部居中显示的纯文本;{page} 和 {total} 会变成页码和总页数。未设置时,使用文档页眉(页面视图)的文本(如果有)。 |
| pdfExportFooter | (无) | 在每一页底部居中显示的纯文本,同样支持 {page} 和 {total}。 |
| pdfExportRasterFallback | true | 当文档中有矢量 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 之后,列表才会起作用。 |
| mentionStaticList | null | 默认触发字符使用的固定人员列表:一个 { id, label (or name), subtitle (or email) } 数组。在触发字符之后输入的内容会按 label、subtitle 和 id 过滤列表(不区分大小写);什么都没输入时显示前 50 项。 |
| mentionSource | null | 为默认触发字符提供列表的函数:(query, { trigger }) => 返回一个条目数组,或者一个解析为数组的 Promise。优先于 mentionStaticList。如需更多触发字符,请使用 mentionTriggers 或 editor.mentions.register()。 |
| mentionTriggers | null | 额外的触发字符,每个都是 { trigger, source (or search), insertClass, label, renderItem, renderInsert },例如用于标签的 #。接受 search(query, done) 回调和异步函数。既没有 source 也没有 search 的触发字符会被跳过,并在控制台中给出警告。 |
| mentionMaxItems | 8 | 列表最多显示的结果数。 |
| mentionDebounceMs | 150 | 输入需要停顿多久才会再次向数据源请求,以毫秒为单位。紧接在触发字符之后(还没有输入任何内容)时会立即请求。 |
| mentionInsertClass | rte-mention | 插入的提及元素上的类名。每个触发字符都可以设置自己的 insertClass。 |
| slashCommandTrigger | / | 打开斜杠命令菜单的按键(斜杠命令插件),在行首或空格之后输入时生效,在代码或 pre 内部永远不会生效。 |
| slashCommandMaxItems | 40 | 斜杠菜单一次最多列出的命令数。 |
| documentOutlineEnabled | true | 文档大纲面板(documentoutline 插件):一个列出文档标题、可在其间跳转的列表。设置为 false 则没有 Outline 工具栏按钮,也没有面板。 |
| documentOutlineAutoOpen | false | 编辑器启动时打开大纲面板。 |
| documentOutlineMinLevel | 1 | 大纲列出的最高标题级别(1 到 6)。 |
| documentOutlineMaxLevel | 6 | 大纲列出的最低标题级别(1 到 6,不能高于 documentOutlineMinLevel)。 |
| documentOutlineTitle | "Outline"(已翻译) | 面板的标题和可访问名称。未设置时,使用语言包中的文本。 |
| documentOutlineHint | (已翻译的文本) | 面板标题下方的那一行文字。 |
| documentOutlineEmptyText | (已翻译的文本) | 文档没有标题时面板显示的内容。 |
| contentMinimapEnabled | true | 缩略图面板(contentminimap 插件):整个文档的小型预览,点击即可跳转。设置为 false 则没有 Minimap 工具栏按钮,也没有面板。 |
| contentMinimapAutoOpen | false | 编辑器启动时打开缩略图面板。 |
| contentMinimapWidth | 168 | 面板的宽度,以像素为单位(至少 148)。 |
| contentMinimapScale | 0.14 | 预览中文档的缩小比例(0.14 = 原尺寸的 14%)。 |
| contentMinimapTitle | "Minimap"(已翻译) | 面板的标题和可访问名称。 |
| contentMinimapHint | (已翻译的文本) | 面板标题下方的那一行文字。 |
| contentMinimapEmptyText | (已翻译的文本) | 文档为空时面板显示的内容。 |
| accessibilityCheckerEnabled | true | 无障碍检查器面板(accessibilitychecker 插件),它会列出跳过的标题级别、没有替代文本的图片、没有表头的表格等问题,并提供修复。设置为 false 则没有工具栏按钮,也没有面板。 |
| accessibilityCheckerAutoOpen | false | 编辑器启动时打开无障碍检查器面板。 |
| 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." | 编辑器退出只读时告知屏幕阅读器的内容。 |
| a11yRovingToolbar | true | 工具栏只占一个 Tab 停留点,用方向键在按钮之间移动(ARIA 工具栏模式)。设置为 false 则每个按钮都是单独的 Tab 停留点。 |
| commentHighlightBg | #fff9c4 | 添加了批注的文本的背景色(批注插件)。 |
| commentHighlightBorder | #f9a825 | 添加了批注的文本下方线条的颜色。 |
| trackChangesInsertClass | rte-tc rte-tc-insert | 包裹建议插入内容的元素的类名(建议模式)。修改它即可用您自己的方式为建议设置样式。 |
| trackChangesDeleteClass | rte-tc rte-tc-delete | 包裹建议删除内容的元素的类名。 |
| onReviewDecisionDenied | null | 当 reviewCanDecide 拒绝某人的接受或拒绝操作时,以 { entry, action, user } 调用,以便您告诉对方原因。 |
| reviewCanDecide | null | 一个 (entry, action, user, editor) 函数,决定该用户是否可以接受或拒绝某条建议;返回 false 表示拒绝。如果它抛出异常,该决定会被拒绝。 |
| restrictedEditingMode | false | 锁定文档,只有标记为 data-rte-editable="true" 的区域除外(受限编辑插件),就像带有可填写字段的 Word 表单。editor.restrictedEditing 用于标记区域、开启和关闭锁定,以及在区域之间移动。 |
| pageHeaderHtml | (空) | 在页面视图中每一页顶部重复显示的 HTML(分页插件);{page} 和 {total} 会变成页码和总页数。文档页面设置中的页眉优先。 |
| pageFooterHtml | (空) | 在页面视图中每一页底部重复显示的 HTML,同样支持 {page} 和 {total}。 |
| readabilityWordsPerMinute | 200 | 估算阅读时长所使用的阅读速度(可读性统计插件)。 |
| maxLength | 0 | 文档最多可以包含的字符数(字符数限制插件);0 表示不限制。 |
| maxWords | 0 | 文档最多可以包含的字数;0 表示不限制。 |
| charLimitEnforce | true | 超过 maxLength / maxWords 时阻止继续输入和粘贴。设置为 false 则只计数和报告(editor.isOverLimit()、charlimit 事件)。 |
| charLimitShowCounter | true | 设置了限制时显示浮动计数器。 |
| sanitizerAllowTags | [] | 内容净化程序额外保留的元素名称(净化插件):可以是精确名称、"x-*" 通配符或正则表达式,例如 ["custom-el", "x-*", /^ui-/]。script 和其他可执行元素永远不会被保留。 |
| sanitizerAllowAttributes | [] | 净化程序额外保留的属性名称,形式相同,例如 ["data-cms-*"]。事件处理属性(on*)永远不会被保留。 |
| sanitizerAllowStyleTags | false | 在内容中保留 <style> 块。默认关闭:文档中的 style 块会改变显示它的页面的样式。 |
| sanitizerGuardLiveDom | true | 同时监视编辑区域本身,当可执行内容——脚本、on* 属性、javascript: URL——通过任何途径出现时再次清理,而不仅仅是通过粘贴和 setHTMLCode():例如通过协作同步、页面上的其他脚本或浏览器扩展进入的内容。设置为 false 则只清理经过编辑器自身途径的内容。净化程序在浏览器中运行;请同样在服务器上检查内容。 |
| documentImportMode | replace | 导入文件时的行为(文档导入插件):"replace" 替换文档,或 "insert" 在光标处插入。替换算作一个撤销步骤。 |
| documentImportAccept | .md,.markdown,.html,.htm,.txt,.doc,.docx | 导入对话框提供的文件类型。 |
| documentImportImages | true | 以 data URI 的形式导入 .docx 中的图片。对于图片很多的文件,可设置为 false 跳过图片。 |
| documentImportResolver | (无) | 一个 (file) => 函数,返回 HTML(或解析为 HTML 的 Promise),用于自行转换文件,例如在您的服务器上转换。返回字符串即可接管转换;返回其他任何值或被拒绝的 Promise,都会退回到内置的读取程序。 |
| dictationEnabled | false | 开启语音听写(语音听写插件):通过浏览器的语音识别(Web Speech API)把语音输入文档。默认关闭。在某些浏览器(例如 Chrome)中,识别在浏览器厂商的服务器上进行,因此音频会离开用户的设备;启用之前,请确认这一点是可以接受的。 |
| dictationLang | (浏览器的语言) | 要识别的语言,以 BCP-47 标记表示,例如 en-US。未设置时为 navigator.language。 |
| dictationContinuous | true | 在停顿之间保持监听。设置为 false 则识别一句话后即停止。 |
| dictationInterimResults | true | 在用户仍在说话时显示部分转写结果。 |
| dictationAutoPunctuation | true | 把每个听写短语的首字母大写,并在其本身没有标点时以句号结尾。 |
| commentsEnabled | true | 批注插件(内联批注、回复、解决)。设置为 false 可将其关闭。 |
| trackChangesEnabled | true | 修订跟踪插件(建议模式、接受和拒绝)。设置为 false 可将其关闭。 |
| currentUser | null | { id, name, color }——当前编辑者。批注、建议、修订历史和协作会把此人记录为作者;只要知道用户是谁,就应设置它。 |
| mentionEnabled | true | 提及插件。设置为 false 可将其关闭。只有设置了数据源(mentionStaticList、mentionSource 或 mentionTriggers)之后,才会出现提及。 |
| slashCommandEnabled | true | 斜杠命令菜单(斜杠命令插件)。设置为 false 可将其关闭。 |
| slashCommandIncludeAi | true | 加载了 AI Toolkit 时,在斜杠菜单中列出 AI Toolkit 的操作。设置为 false 可不列出它们。 |
| slashCommands | null | 启动时为斜杠菜单注册的额外命令:一个 { 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,并且不发出任何请求。 |
| nodeTypesEnabled | true | 自定义节点类型注册表(nodetypes 插件)。设置为 false 可将其关闭。 |
| nodeTypes | (无) | 启动时注册的节点类型,格式与 editor.nodeTypes.register() 接受的相同:{ name, match, inline, atomic, toJSON, fromJSON, toMarkdown }。已注册的元素在经过净化程序时会保留其标记,并获得由您选择的 Markdown 形式,而不会退回为其文本。 |
| rubyAnnotationEnabled | true | Ruby 注音(rubyannotation 插件):标注在东亚文字上方的读音,写作带有 <rt> 的 <ruby>。设置为 false 可将其关闭。 |
| rubyAnnotationParentheses | true | 在每个读音两侧写入 <rp> 括号,这样不支持 ruby 的阅读器会显示 "base(reading)",而不是把两者连在一起。 |
| stateInspectorEnabled | true | 状态检查器(stateinspector 插件):一个开发者面板,显示文档的结构、结构性问题,以及一份可复制、用于问题报告的快照。设置为 false 可将其关闭。 |
| stateInspectorToolbarButton | false | 添加一个打开状态检查器的工具栏按钮。默认关闭;可以用 editor.stateInspector.open() 打开它。 |
| stateInspectorAutoOpen | false | 编辑器启动时打开状态检查器。 |
| stateInspectorLogLimit | 60 | 检查器保留的最近编辑器事件数量(10 到 500)。 |
| stateInspectorMaxDepth | 24 | 检查器遍历文档树的深度(至少 2)。 |
| stateInspectorTitle | State inspector | 面板的标题。 |
| stateInspectorHint | (文本) | 面板标题下方的那一行文字。 |
| stateInspectorEmptyText | No content to inspect yet. | 文档为空时面板显示的内容。 |
下拉菜单自定义
| 名称 | 默认值 | 说明 |
|---|---|---|
| paragraphItems | Normal,H1,H2,H3,H4,H5,H6 | 预定义的一组格式块。 |
| fontSizeItems | 8,9,10,11,12,13,14,16, 18,24,36,48,60,72,96 | 预定义的一组字号。 |
| fontNameItems | Arial,Arial Black,Comic Sans MS, Courier New,Tahoma,Georgia,Helvetica, Segoe UI,Sans-Serif,Impact, Times New Roman,Verdana | 预定义的一组字体名称。 |
| lineHeightItems | 100%,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 上。
源码构建预览:较新的插件选项
这些选项存在于当前的源码插件中,但并未包含在每个已发布的打包版本或本站当前的演示资源中。请使用与之匹配、经过测试的插件构建;设置一个选项并不能为较旧的运行时增加缺失的功能。
| 选项 | 默认值 | 说明 |
|---|---|---|
aiToolkitImageResolver | null | 图片生成构建:(prompt: string) => Promise<string>。您的解析器返回一个 HTTPS 图片 URL,或者一个 PNG/JPEG/WebP/GIF 图片 data URL,最多 6,000,000 个字符。插件本身不会调用任何服务商。请把服务商凭据保存在您的服务器上;保存生成的图片之前,请应用您的上传/存储策略。 |
galleryAcceptedExtensions | null | 图片库构建:一个数组,例如 [".jpg", ".png"],用于替换 Insert Gallery 对话框所声明和允许的格式。请把它设置为您的上传端点所接受的格式。 |
commentMentions | [] | 批注提及构建:[{ id, name }] 提供在批注编辑框中输入 @ 后建议的人员。被选中人员的 id/name 会与批注一起保存。这只是一个建议列表,而不是授权或通知/电子邮件服务;这些需要由您的应用另行提供。 |
tableRowDrag | true | 行拖动构建:在创建编辑器之前设置为 false,可隐藏行拖动手柄。表头行保持固定。合并/不规则的表格、只读/仅批注内容以及建议模式会拒绝不受支持的移动;行移动不会被记录为建议。按 Escape 可取消拖动。 |
tableColumnDrag | true | 列拖动构建:在创建编辑器之前设置为 false,可隐藏列拖动手柄。移动时会把所有行中的单元格连同列宽一起移动;行号列始终保持在第一列。合并/不规则的表格以及只读/仅批注或建议模式会拒绝不受支持的移动。按 Escape 可取消拖动。 |
AI
每个 AI 界面都采用自带密钥的方式:编辑器调用您提供的函数,自己从不与服务商通信。
| 选项 | 默认值 | 说明 |
|---|---|---|
ghostText | false | 启用内联灰色文本补全。按 Tab 接受,按 Esc 取消。 |
ghostTextResolver | null | async ({ before }) => string。ghostText 要起作用,必须设置此项。 |
aiToolkitReviewLegacyLayout | true | 使用旧版的 AI Review 抽屉布局。 |
aitoolkit_skip_auto_css | true | 当您提供自己的样式表时,跳过自动注入 AI Toolkit 样式表。 |
输入与写作辅助
在作者输入时触发的行为。每一项都可以单独关闭。
| 选项 | 默认值 | 说明 |
|---|---|---|
autocorrectEnabled | true | 自动更正插件的总开关。它不会关闭编辑器核心的智能排版——请参阅 smartTypography。 |
autocorrectCapitalize | true | 把句子的首字母大写。 |
autocorrectSpelling | true | 应用内置的常见拼写错误列表。 |
autocorrectTypography | true | 由自动更正插件生成的智能引号、破折号和省略号。编辑器核心自己也会做同样的替换;要停止这些替换,请把 smartTypography 设置为 false。 |
autocorrectReplacements | null | 您自己的 { from: to } 替换映射,与内置映射合并。 |
emojiAutocompleteEnabled | true | 输入 :shortcode: 插入表情。 |
emojiShortcodes | { … } | 覆盖或扩展短代码到表情的映射。 |
foldHeadingsEnabled | true | 编辑区域中可折叠的标题。 |
typewriterModeEnabled | false | 输入时让光标所在行在垂直方向上保持固定。 |
typewriterAnchor | 0.5 | 光标所在行的位置,从 0(顶部)到 1(底部)。 |
focusModeEnabled | false | 让光标所在块以外的所有块变暗。 |
dragHandleEnabled | true | 在页边显示块拖动手柄。 |
dragHandleKeyboard | true | 允许用键盘重新排序块(Alt+Up / Alt+Down)。 |
formattingMarkPilcrow | true | 开启格式标记时显示段落标记。 |
formattingMarkBlocks | true | 开启格式标记时显示块边界轮廓。 |
formattingMarkInvisibles | true | 显示空格、制表符和不换行空格。 |
permanentPenClass | "rte-pen" | 应用于固定画笔文本的类名。 |
permanentPenStyle | { … } | 固定画笔文本的内联样式对象。 |
titleCaseSmallWords | "a an and as at …" | Change Case → Title Case 时保持小写的单词。 |
formatPainterProperties | [ … ] | 格式刷复制哪些 CSS 属性。 |
readabilityStats | true | 在状态栏中显示阅读难易度统计。 |
localDraft | false | 保留一份本地草稿,使内容在意外重新加载后仍然保留。 |
块、结构与引用
结构性内容:提示框、分栏、编号列表、脚注、交叉引用和目录。
| 选项 | 默认值 | 说明 |
|---|---|---|
text_inlinecode | "Inline code" | 内联代码按钮的工具栏标签和工具提示(命令 "inlinecode",生成一个不带属性的 <code> 元素)。 |
calloutTypes | [ … ] | 可用的提示框种类(info、warning……)。 |
calloutDefaultType | "info" | 未选择种类时插入的提示框种类。 |
columnsDefaultCount | 2 | 分栏块创建的栏数。 |
legalListClass | "rte-legal-list" | 应用于多级法律文书列表的类名。 |
legalListSeparator | "." | 各级编号之间的分隔符(1.1.1)。 |
legalListSuffix | "." | 最后一级之后的结尾字符。 |
lineNumberStart | 1 | 第一个行号。 |
lineNumberInterval | 1 | 每隔 N 行显示一个行号。 |
lineNumberRestart | "continuous" | "continuous"(连续)或每页重新开始。 |
lineNumberGutter | 38 | 页边宽度,以像素为单位。 |
footnotesTitle | "Footnotes" | 显示在脚注列表上方的标题。 |
footnotesNumbering | "decimal" | 脚注编号的标记样式。 |
footnotesMarkerPrefix | "" | 每个脚注标记之前的文本。 |
footnotesMarkerSuffix | "" | 每个脚注标记之后的文本。 |
crossRefFigureLabel | "Figure" | 引用图时使用的标签。 |
crossRefTableLabel | "Table" | 引用表格时使用的标签。 |
crossRefMissingText | "[reference not found]" | 交叉引用的目标不存在时显示的文本。 |
tocTitle | "Contents" | 生成的目录的标题。 |
tocMinLevel | 1 | 包含的最高标题级别。 |
tocMaxLevel | 3 | 包含的最低标题级别。 |
tocPageNumbers | "auto" | 在目录中显示页码。 |
mathDialogSamples | [ … ] | 公式对话框中提供的入门公式。 |
tableNumberSeries | "numeric" | 表格行号的编号序列。 |
tableNumberHeader | "#" | 行号列的表头文字。 |
页面布局、导出与导入
所有把文档变成文件或打印页面的功能。导出在浏览器中运行;不会上传任何内容。
| 选项 | 默认值 | 说明 |
|---|---|---|
paginationEnabled | false | 以分开的页面显示文档。 |
pageFormat | "A4" | 分页和导出使用的页面大小。 |
pageOrientation | "portrait" | "portrait"(纵向)或 "landscape"(横向)。 |
pageMargins | { top: 1, right: 1, bottom: 1, left: 1 } | 页边距,以英寸为单位。 |
paginationShowPageNumbers | true | 在页面视图中显示页码。 |
paginationShowPageCount | true | 在页码旁边显示 "of N"。 |
docxExport | true | 启用 .docx 导出(在浏览器中生成,无需服务器)。 |
wordExport | true | 启用与 Word 兼容的 HTML 导出。 |
documentImport | true | 启用 .docx 导入。 |
pdfExport | true | 启用带标签的矢量 PDF 导出。 |
html2pdfScriptUrl | null | 栅格 PDF 方式所用 html2pdf 的路径;省略则只保留矢量方式。 |
markdownExportEnabled | true | 启用以 Markdown 形式复制/下载。 |
emailWrapWidth | 640 | 电子邮件 HTML 导出使用的表格宽度。 |
emailInlineProperties | [ … ] | 为适配电子邮件客户端而内联到元素上的 CSS 属性。 |
watermarkText | "DRAFT" | 水印文字。 |
watermarkImage | null | 图片水印;会覆盖文字水印。 |
watermarkMode | "tile" | "tile"(平铺)或单个居中的水印。 |
watermarkOpacity | 0.18 | 水印的不透明度,从 0 到 1。 |
watermarkAngle | -30 | 旋转角度。 |
watermarkColor | "#94a3b8" | 水印颜色。 |
watermarkFontSize | 48 | 水印字号,以像素为单位。 |
watermarkPrint | false | 打印时包含水印。 |
媒体、链接与数据
解析器让您提供自己的数据源。每个解析器都是一个普通函数,因此端点和凭据始终由您掌控。
| 选项 | 默认值 | 说明 |
|---|---|---|
autoEmbedEnabled | true | 把粘贴的 YouTube 或 Vimeo URL 变成响应式嵌入内容。 |
autoEmbedResolver | null | (url) => 返回 https 嵌入 URL,或者返回 null 表示不处理。可添加您自己的服务商。 |
bookmarkResolver | null | (url) => 返回用于链接预览卡片的元数据。 |
bookmarkFaviconService | "/favicon-proxy?domain=" | 书签卡片使用的网站图标端点。请把它指向您自己的代理。 |
diagramResolver | null | 提供一个 Mermaid 渲染器;软件包中没有附带。 |
diagramSamples | [ … ] | 插入对话框中提供的入门图示。 |
drawingWidth | 640 | 绘图插件(drawing.js,下一版本):画布宽度,以 CSS 像素为单位。 |
drawingHeight | 360 | 绘图插件(下一版本):画布高度,以 CSS 像素为单位。 |
drawingColors | [6 colours] | 绘图插件(下一版本):为画笔和记号笔提供的颜色色板。 |
text_insertdrawing | "Drawing" | 绘图插件(下一版本):insertdrawing 按钮的工具栏标签。 |
chipResolver | null | (query) => 返回智能标签条目。 |
chipDateFormat | null | 日期标签的格式字符串。 |
mergeFields | [ … ] | 可用的合并字段。 |
mergeFieldPrefix | "{{" | 开始定界符。 |
mergeFieldSuffix | "}}" | 结束定界符。 |
mergeFieldMissing | "placeholder" | 字段没有值时渲染的内容。 |
语言、方向与无障碍
编辑器提供 67 种语言。方向和无障碍行为可以在此基础上进一步配置。
| 选项 | 默认值 | 说明 |
|---|---|---|
defaultTextDirection | null | "ltr"、"rtl",或者 null 表示继承。 |
textDirectionAutoDetect | false | 根据输入的文本检测方向。 |
textDirectionSwapAlign | true | 方向翻转时镜像对齐方式。 |
rtlUserInterface | "auto" | 为 RTL 区域设置镜像工具栏和对话框。 |
a11yEnhance | true | 为编辑器界面提供可访问名称和角色。 |
dialogA11y | true | 在对话框内捕获焦点并添加标签。 |
keyboardA11y | true | 在工具栏上使用游走式 tabindex,让 Tab 可以离开编辑器。 |
readAloudRate | 1.0 | 朗读的语速。 |
readAloudHighlight | true | 朗读时高亮显示正在读的文本。 |
textPartLanguages | 24 languages | Language 下拉菜单提供的语言:[{ code, label, dir }]。WCAG 3.1.2。 |
textPartLanguageHighlight | true | 编辑时在已标记的短语下显示点状下划线。仅在编辑器中显示;永远不会被序列化。 |
编辑区域与多区域
到达那些没有节点可以容纳光标的位置,以及用一个工具栏控制多个可编辑区域。
| 选项 | 默认值 | 说明 |
|---|---|---|
gapCursorKeys | true | 在文档边缘,用方向键/Home/End 跳出表格或其他会困住光标的块。 |
gapCursorClick | true | 点击内容周围的空白处,在那里插入一个段落。 |
gapCursorHint | true | 在两个块之间高度为零的边界处显示插入提示。 |
multiRootGroup | null | 共享同一组名的多个实例会作为一个编辑器工作,只显示一个工具栏。 |
multiRootName | container id | 该区域在组 API(getHTML、focusRoot……)中的名称。 |
multiRootToolbarHost | null | 把当前活动的工具栏移入的元素(或其 id)。为 null 时工具栏保持原位。 |
layoutTableOutline | true | 编辑时在布局表格周围显示虚线轮廓。标记为 role="presentation" 的表格在设计上是不可见的;这是看清您正在编辑什么的唯一方式。仅在编辑器中显示。 |
shadowStyleAdoption | true | 把编辑器的样式表复制到包含它的 shadow root 中。没有这一项,编辑器虽然能正确编辑,但在那里会完全没有样式,因为文档样式表不会跨越 shadow 边界。在 shadow root 之外没有任何开销。 |
shadowStyleSources | null | 同样要复制到 shadow 边界内的额外样式表 URL——例如您自己的皮肤覆盖样式。字符串或数组。 |
来自您自己 CSS 的样式
用页面样式表中已有的类填充 Quick Styles 下拉菜单,而不必把它们重新输入到配置中。
| 选项 | 默认值 | 说明 |
|---|---|---|
importStyles | false | 总开关。需要手动开启,因为在使用工具类 CSS 的页面上,类列表会非常庞大。 |
importStylesSheets | null | 要读取哪些样式表:与 href 匹配的字符串或 RegExp,或者一个函数。null = 所有可读取的样式表。 |
importStylesExclude | /^(rte|ck|mce|…)/ | 类名阻止列表,在自动排除编辑器 CSS 的基础上应用。 |
importStylesFilter | null | (className, selector, bucket) => 返回 false 表示跳过,或返回一个字符串用于重新命名。 |
importStylesReplace | false | 替换已配置的样式,而不是追加到其后。 |
importStylesLimit | 100 | 每个下拉菜单的上限。被舍弃的内容会被报告出来,绝不会悄悄截断。 |
内容安全与检查
过滤与验证。安全审查会问到的就是这些选项。
| 选项 | 默认值 | 说明 |
|---|---|---|
contentSanitizer | true | 对输入、输出和实时 DOM 应用允许列表过滤。请保持开启。 |
spellCheckEnabled | true | 为可编辑区域设置 spellcheck="true",供浏览器的拼写检查器使用。 |
spellCheckResolver | null | (text) => 返回 [{ word, offset, length, suggestions }],可来自您获得授权的任何服务。 |
linkCheckResolver | null | (urls) => 返回供链接检查器使用的可达性结果。 |
linkCheckMixedContent | true | 标记 https:// 页面上的 http:// 链接。 |
linkCheckUnsafeSchemes | ["javascript:", "data:", …] | 被报告为不安全的协议。 |
修订历史
文档的命名版本,保存在浏览器中,并可选择发送到您的服务器。
| 选项 | 默认值 | 说明 |
|---|---|---|
revisionHistoryEnabled | true | 设置为 false 可关闭修订历史插件。 |
revisionHistoryKey | (page path + query) | 从 core 2.6.10 起提供:保存本文档各版本所用的键。在 CMS 中请把它设置为记录 id,尤其是当 URL 无法标识文档时。早期构建在整个站点中共用一个列表。 |
revisionHistoryMaxEntries | 50 | 保留的版本数;最旧的版本最先被删除。 |
revisionHistoryAutoSnapshotMs | 0 | 内容有变化时每隔 N 毫秒自动保存一个版本;0 = 只在请求时保存。 |
revisionHistorySnapshotBeforeRestore | true | 从 core 2.6.10 起提供:恢复之前,先把当前内容保存为一个 "Before restoring …" 版本,这样误操作的恢复也可以撤销。false = 旧的行为,会丢弃未保存的工作。 |
revisionHistoryUrl | "" | 以 JSON 形式把每个版本 POST 到这个 URL。 |
revisionHistoryRequestHeaders | null | 该 POST 请求的标头,可以是一个对象,也可以是返回对象的函数(例如身份验证令牌)。 |
onRevisionHistorySyncError | null | (detail) => POST 失败时调用;该版本仍会保存在本地。 |