这些是 Tiny Cloud 和 TinyMCE Enterprise 的发行说明。若要了解 TinyMCE 最新社区版本的信息,请参阅 TinyMCE Changelog(更新日志)。
概述
TinyMCE 8.3.0 于 2025 年 12 月 10 日(星期三)面向 TinyMCE Enterprise 和 Tiny Cloud 发布。本发行说明概述了 TinyMCE 8.3.0 的变更内容,包括:
高级插件现已支持通过 NPM 获取
配套的高级插件变更
改进
新增功能
错误修复
高级插件现已支持通过 NPM 获取
TinyMCE 8.3.0 引入了 tinymce-premium NPM 包,使商业用户可直接从 NPM 注册中心便捷获取所有高级插件、皮肤、图标及语言包。该包的下载地址为 https://www.npmjs.com/package/tinymce-premium。
tinymce-premium 包简化了高级插件的安装与集成流程。若需了解如何在 TinyMCE 中使用高级插件,请参阅:快速入门:通过 NPM 或 Yarn 使用 TinyMCE。
配套的高级插件变更
以下高级插件更新随 TinyMCE 8.3.0 一同发布。
PowerPaste
TinyMCE 8.3.0 版本包含配套发布的 PowerPaste 高级插件。
PowerPaste 包含以下新增功能。
powerpaste_emf_processor 函数,该函数接收一个 emf blob 并返回 png blob 的 promise 对象。
2025 年 10 月之前,若从 Microsoft Word 复制并粘贴包含 emf 图像的内容,这些图像将无法粘贴且会显示错误信息。2025 年 10 月之后,此行为发生变化:图像开始在编辑器中显示,但仅以低分辨率显示,且在 Chrome 和 Firefox 中会伴随错误信息。Safari 则仅显示低分辨率图像且不显示错误信息。
此变更对用户体验产生了负面影响。2025 年 10 月之后,用户会看到低质量图像并伴随 Some images failed to import(部分图像导入失败)的错误信息,这会引发混淆,因为图像实际上在编辑器中可见——尽管质量有所下降。
TinyMCE 8.3.0 引入了一个新选项 powerpaste_emf_processor 以解决此问题。该选项可接收一个函数,该函数接收一个 emf blob 并返回一个解析为 png blob 的 promise(即 (blob: Blob) ⇒ Promise<Blob>)。
若提供此选项,编辑器将调用所提供的函数,将
emf图像 blob 转换为png图像 blob 后再插入编辑器。若未提供此选项,编辑器将移除低质量图像并显示错误信息,恢复 2025 年 10 月之前的行为。
若仅选中图像,粘贴会成功且图像将正确插入。但若图像与其他类型的内容(如文本)一同选中,则图像将无法粘贴且会显示错误信息。
有关 PowerPaste 插件的信息,请参阅:PowerPaste。
Media Optimizer
TinyMCE 8.3.0 版本包含配套发布的 Media Optimizer 高级插件。
Media Optimizer 包含以下改进与修复。
支持上传更多文件类型
Media Optimizer 插件现在支持通过链接对话框上传许多其他文件类型,包括文档(PDF、Word、Excel、PowerPoint、RTF、纯文本)、iWork 文件(Keynote、Pages、Numbers)、音频文件(WAV、MP3、OGG)及归档文件(ZIP、GZIP、TAR、7Z、RAR)。支持的完整文件类型列表可在文档中查阅。
支持的文件类型默认列表可通过 documents_file_types 选项进行自定义。
有关 Media Optimizer 插件的信息,请参阅:Media Optimizer:文件与文档。
新上传的视频现在具有响应式特性
新上传的视频现在默认具有响应式特性。视频会在较小屏幕上自动缩小,同时保持其最大尺寸。有关详细信息,请参阅:uploadcare_video_properties 配置选项。
有关 Media Optimizer 插件的信息,请参阅:Media Optimizer:视频。
CSS 资源文件未正确加载。
此前,Media Optimizer 的 CSS 资源文件未正确加载。这主要在尝试打包此插件时引发问题。在 TinyMCE 8.3.0 中,通过确保 Media Optimizer 的 CSS 资源文件正确加载,此问题已得到解决。
有关 Media Optimizer 插件的信息,请参阅:Media Optimizer。
高级插件现包含 ESM 模块支持
TinyMCE 8.3.0 中的高级插件现在除了支持 CommonJS (require) 外,还可以作为原生 ES 模块 (import) 使用。这一增强使高级插件与核心插件中已有的 ESM 功能保持一致,并适用于所有分发的制品,包括 NPM 包和 ZIP 捆绑包。该更新使现代打包工具能够自动解析最佳模块格式,提高了与专注于 ESM 的工具链的兼容性,并消除了集成过程中使用 CommonJS 垫片的需求。
改进
TinyMCE 8.3.0 还包括以下改进:
当许可证密钥不允许使用高级插件时显示编辑器通知。
以前,当许可证密钥不允许使用某个高级插件时,该插件将被禁用,但不会有任何相应的编辑器消息。从 8.3.0 版本开始,这一行为得到了改进:当插件因许可证限制而被禁用时,编辑器现在会显示通知,减少了歧义。
有关许可证密钥的更多信息,请参阅:License Key。
现在,当编辑器设置为只读时,手风琴可以打开和关闭。
在 TinyMCE 的早期版本中,只读模式下的手风琴行为依赖于浏览器的默认处理,这仍然可能修改 DOM 并导致编辑器状态发生不可取的、不受控制的变化。这意味着即使编辑器配置为只读,展开或折叠手风琴部分也可能以不一致的方式改变底层内容结构。
在 TinyMCE 8.3.0 中,Accordion 插件现在明确管理只读模式下的打开和关闭交互,确保切换面板所需的任何 DOM 更新都以受控的、最小侵入性的方式执行。这一改进提供了更可预测的行为,更好地控制了 DOM 的操作方式,并在只读编辑器中与手风琴交互时提供了一致的用户体验。
新增功能
TinyMCE 8.3.0 还包括以下新增功能:
新增选项 files_upload_handler、documents_file_types 和 link_uploadtab
为 Link 插件添加了新的配置选项,以支持通过链接对话框进行文件上传:
files_upload_handler- 指定处理链接对话框上传标签页中文件上传的函数documents_file_types- 指定支持上传的文件类型(MIME 类型和扩展名)link_uploadtab- 控制链接对话框中是否显示“上传”标签页
有关更多信息,请参阅 files_upload_handler、documents_file_types 和 link_uploadtab。
dropzone 对话框组件的新选项
为 dropzone 对话框组件添加了新的配置选项,以自定义拖放区 UI 和文件类型限制:
dropAreaLabel- 指定可以拖放文件的区域的文本标签(默认:'Drop an image here')buttonLabel- 指定浏览按钮的文本标签(默认:'Browse for an image')allowedFileTypes- 指定允许的文件类型的 MIME 类型模式(默认:'image/*',例如'image/*'、'application/pdf')allowedFileExtensions- 指定允许的文件扩展名数组(默认:images_file_types,例如['.jpg', '.png', '.pdf'])
有关更多信息,请参阅 dropzone 组件。
错误修复
TinyMCE 8.3.0 还包括以下错误修复:
编辑器禁用时手风琴仍然可以切换。
TinyMCE 的早期版本允许手风琴在编辑器被禁用时仍然可以展开,这导致了不一致和意外的行为,特别是当与 Autoresize 插件一起使用时。
这可能导致在不希望更改内容时发生内容更改,并导致交互模式在预期的自定义行为和浏览器的默认处理之间发生转变。在 8.3.0 版本中,通过确保编辑器禁用时手风琴完全不可交互来解决了这个问题,防止了意外的状态更改并保持了编辑器行为的一致性。
当列表项的内容是单个块元素时,行内格式未应用于列表项的标记。
以前,在将行内格式应用于完全或部分选定的列表(该列表包含包裹在单个块元素内的内容)时,格式不会应用于选择开始的列表项。这会导致列表装饰器与其内容之间的样式不一致。
此问题现已在 8.3.0 中解决。逻辑已更新,以确保行内格式正确应用于选择开始的列表项。
现在,项目符号列表和编号列表工具栏按钮的下拉箭头提示信息已能正确翻译。
以前,项目符号列表和编号列表工具栏按钮的下拉箭头提示信息无法正确翻译。此问题已在 8.3.0 中解决。现在,这些拆分按钮的下拉箭头在悬停时会显示正确翻译的提示信息。
有时删除行高时无法从所有选定行中删除。
已发现一个问题:当多个元素的 lineheight 属性值不同时,删除或修改这些属性会导致更新不一致。在这些情况下,只有第一行的 lineheight 被更改或删除,后续行未更新。
TinyMCE 8.3.0 通过改进宽松 lineheight 选项的切换行为解决了此问题,确保所有行都能按预期正确更新或删除。
列表项上的 font-size 样式未复制到新的列表项。
以前,在创建新的编号或项目符号列表项时,应用于列表项的 font-size 样式未被保留。因此,按 Enter 键添加的列表项无法从前一项继承正确的字体大小。
TinyMCE 8.3.0 通过更改行为解决了此问题,现在 font-size 样式能一致地传递给新建列表项。这确保了所有新列表项都具有正确的字体大小。