百度Ueditor编辑器 从word中复制内容带多张图片

图片的复制无非有两种方法,一种是图片直接上传到服务器,另外一种转换成二进制流的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);

};

效果展示:


详细内容可参考这篇文章:ueditor word图片上传 – 泽优软件博客

讨论群:223813913

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在JavaWord转换为HTML需要使用Apache POI和JodConverter库。而将HTML导入到UEditor编辑器,需要在前端使用UEditor富文本编辑器,并在后端使用Java Web框架(如Spring MVC)来处理上传文件和保存HTML内容。 以下是一个简单的Java代码示例,演示如何将Word文档转换为HTML,并将HTML保存到服务器上的文件: ```java import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import org.apache.poi.hwpf.HWPFDocument; import org.jodconverter.JodConverter; import org.jodconverter.office.LocalOfficeManager; import org.jodconverter.office.OfficeException; import org.jodconverter.office.OfficeManager; public class WordToHtmlConverter { public static void main(String[] args) { // Start the office manager OfficeManager officeManager = LocalOfficeManager.builder().officeHome("/usr/lib/libreoffice").install().build(); try { officeManager.start(); // Load the Word document HWPFDocument document = new HWPFDocument(new FileInputStream("document.doc")); // Create a temporary file for the HTML output File tempFile = File.createTempFile("document", ".html"); // Convert the document to HTML JodConverter.convert(document).to(tempFile).execute(); // Save the HTML content to a file on the server FileOutputStream fos = new FileOutputStream("output.html"); fos.write(Files.readAllBytes(tempFile.toPath())); fos.close(); // Delete the temporary file tempFile.delete(); } catch (IOException | OfficeException e) { e.printStackTrace(); } finally { // Stop the office manager officeManager.stop(); } } } ``` 在上述代码,我们使用JodConverter将Word文档转换为HTML,并将HTML内容保存到服务器上的文件。然后,我们可以在Java Web应用程序使用Spring MVC等框架来处理上传文件,并将HTML内容保存到数据库。最后,在前端使用UEditor富文本编辑器时,我们可以将HTML内容加载到编辑器,让用户进行编辑和保存。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值