TinyMCE 6.1.0移除images_dataimg_filter后,禁用base64转Blob替代方案咨询
TinyMCE 6.1.0+ 禁用Base64图片转Blob的替代方案
在TinyMCE 6.1.0移除images_dataimg_filter后,有两种可靠方法实现禁用Base64图片转Blob的需求:
方法一:自定义images_upload_handler拦截上传逻辑
通过重写上传处理函数,直接返回原始Base64图片内容,跳过转Blob流程。配置示例:
tinymce.init({ // 其他编辑器配置... images_upload_handler: function (blobInfo, success, failure) { // 获取原始Base64格式图片数据 const base64Data = blobInfo.base64(); // 直接返回img标签,不执行Blob上传转换 success(`<img src="${base64Data}" />`); } });
该方法会接管所有图片上传场景(包括粘贴、拖拽的Base64图片),强制编辑器保留原Base64内容。
方法二:通过paste_preprocess事件拦截粘贴操作
如果仅需针对粘贴的Base64图片禁用转Blob,可监听粘贴预处理事件,直接保留原始img标签:
tinymce.init({ // 其他编辑器配置... setup: function (editor) { editor.on('paste_preprocess', function (e) { // 匹配内容中的Base64图片标签 const base64ImgRegex = /<img[^>]+src="data:image\/[^"]+"[^>]*>/g; e.content = e.content.replace(base64ImgRegex, (match) => match); }); } });
此方法仅处理粘贴场景,适合不需要全局禁用上传转Blob,只针对粘贴Base64图片的需求。
内容的提问来源于stack exchange,提问作者Rubber
相关产品推荐
相关产品推荐

