KindEditor-支持文字上传的富文本编辑器
?
复制图片的方式不超过两种,一种是直接上传图片到服务器,另一种是转换成二进制流的base64代码。
目前仅限于chrome浏览器。
首先,以um-editor的二进制流保存为例:
打开umeditor.js,找到UM.plugins['autoupload'],然后找到autoUploadHandler方法并注释掉代码。
添加以下代码:
//确定剪贴板是否包含文本。
//首先说明为什么要判断文字是否为空。
//在ctrl c word中的文本或图片后,将返回1(图像/png)或4(文本/普通、文本/html、文本/rtf、图像/png)类型的对象。
//为了与四种格式兼容,做出如下判断。
//下面的代码:e . originalevent . clipboarddata . items获取剪贴板的内容。
//粘贴文本时,文本不为空,同时返回当前文本的图片类型。
//如果有文字,不做任何处理。如果只粘贴图片,文本必须为空,包括复制的桌面图片或截图。
var text=e . originalevent . clipboarddata . getdata(' text ');
if(text==' '){ 0
var items=e . originalevent . clipboard . items;
for (var i=0,len=items.length我透镜;I){ 0
var item=items[I];
if(item . kind==' file ' item . type . indexof(' image/')!==-1 ) {
var blob=item . GetasFile();
getBase64(blob,function(base64)}
//sendandsertimage(base64,me);上传到服务器
setBase64Image(base64,me);
});
//防止重复添加默认事件;
e . originalevent . preventdefault();
};
}
}
两种方法:
//执行插入图片的操作。
函数setBase64Image(base64,编辑器){ 0
editor . exec command(' insert image ',{ src: base64,_ src 3360 base64 });
}
//获取base64
函数getBase64(blob,回调){ 0
var a=new FileReader();
a . onload=function(e){ callback(e . target . result);};
a . readasdataurl(blob);
};
显示效果:
?
详情请参考本文:ueditor word Image上传-泽友软件博客
小组讨论:223813913
?
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/116876.html