富文本编辑器tinymce支持从word复制粘贴保留格式和图片的插件

摘要:
包括复制的桌面图片或屏幕截图vartext=e.originalEvent.clipboardData.getData(“text”);如果(text==“”){variatem=e.originalEvent.clipboardData.items;i<len;i++){varitem=items[i];

图片的复制无非有两种方法,一种是图片直接上传到服务器,另外一种转换成二进制流的base64码
目前限chrome浏览器使用
首先以um-editor的二进制流保存为例:
打开umeditor.js,找到UM.plugins['autoupload'],然后找到autoUploadHandler方法,注释掉其中的代码。
加入下面的代码:

//判断剪贴板的内容是否包含文本

//首先解释一下为什么要判断文本是不是为空

//在ctrl+c word中的文字或者图片之后会返回1种(image/png)或者4种type(text/plain,text/html,text/rtf,image/png)类型的对象

//为了兼容4种格式的情况,做了如下的判断

//如下代码:e.originalEvent.clipboardData.items获得剪贴板的内容

//当粘贴了文本之后text是不为空的,同时也会返回当前文本的图片类型

//如果有文字的话不做任何的处理,如果只粘贴图片的话文本一定是空的,包括复制的桌面图片或者截图的图片

var text = e.originalEvent.clipboardData.getData("text");

if(text == ""){

    var items=e.originalEvent.clipboardData.items;

     for (var i = 0, len = items.length; i < len; i++) {

        var item = items[i];

       if ( item.kind == 'file' && item.type.indexOf('image/') !== -1 ) {

         

              var blob = item.getAsFile();

              getBase64(blob, function( base64 ) {

              //sendAndInsertImage(base64,me); 上传到服务器

               setBase64Image(base64,me);

              });

              //阻止默认事件, 避免重复添加;

              e.originalEvent.preventDefault();

             };

        }

}

两个方法:

//执行插入图片的操作

function setBase64Image(base64,editor){

    editor.execCommand('insertimage', {src: base64,_src: base64});

}

//获得base64

function  getBase64(blob, callback) {

    var a = new FileReader();

    a.onload = function(e) {callback(e.target.result);};

    a.readAsDataURL(blob);

};

效果展示:
富文本编辑器tinymce支持从word复制粘贴保留格式和图片的插件第1张
详细内容可参考这篇文章:http://blog.ncmem.com/wordpress/2019/08/07/ueditor-word%e5%9b%be%e7%89%87%e4%b8%8a%e4%bc%a0/

讨论群:223813913

免责声明:文章转载自《富文本编辑器tinymce支持从word复制粘贴保留格式和图片的插件》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇快速重置vuex数据当在Maven项目的pom文件当中不能下载一些jar包的时候,我们可以实现手动的下载。下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

卷积神经网络-第七讲

在之前的视频学习中,我们使用的模型被称为全连接神经网络。 全连接 NN:每个神经元与前后相邻层的每一个神经元都有连接关系,输入是特征,输出为预测的结果。  参数个数:∑(前层 × 后层 + 后层) 这只是一张28*28的黑白图片,在实际生活中,更多的则是RGB格式的彩色图像,像素点更多,且为红绿蓝三通道信息。 待优化的参数过多,容易导致模型过拟合。为避免...

防盗链原理

昨天去参加一个面试,面试官上来就问“知道防盗链吗?它是怎么实现的?”。当时立刻傻了,防盗链是什么东东? 百度百科对防盗链的定义是 此内容不在自己服务器上,而通过技术手段,绕过别人放广告有利益的最终页,直接在自己的有广告有利益的页面上向最终用户提供此内容。 常常是一些名不见经传的小网站来盗取一些有实力的大网站的地址(比如一些音乐、图片、软件的下载地址)然后放置...

html5对密码加密

今天找了几个关于对html5的密码加密的方法,仅供参考 1、base64加密:在页面中引入base64.js文件,调用方法为: <html> <head> <meta charset="utf-8"> <title>base64加密</title> <script type=...

BUUCTF-数据包中的线索 1

打开题目里面一个pcapng的文件,于是我们拖进wireshark流量分析一波  发现有http的流量,于是我们过滤http  让后追踪http,然后发现base64的编码, 于是我们看到了base64编码    于是我们拿着base64去解密成图片,https://the-x.cn/base64   然后我们将图片下载下来,得到flag...

python面试1

注:本面试题来源于网络,转载请注明来自http://www.cnblogs.com/goodhacker/p/3366618.html。 1. (1)python下多线程的限制以及多进程中传递参数的方式  python多线程有个全局解释器锁(global interpreter lock),这个锁的意思是任一时间只能有一个线程使用解释器,跟单cpu跑多个程...

[SAP ABAP开发技术总结]面向对象OO

由于历史遗留原因,很多项目也还在使用老的ABAP过程化语句进行开发,但新的SAP很多的东西都已经通过类来实现了,比如BAPI(比类还早)、BADI、ALV,还有很多东西都了已经通过类来重写了,所以为了与时俱进,还是使用类吧 2.      面向对象... 27 2.1.           类与接口定义... 27 2.1.1.        compo...