zoukankan      html  css  js  c++  java
  • 富文本编辑器ckeditor支持从word复制粘贴保留格式和图片的插件

    这种方法是servlet,编写好在web.xml里配置servlet-class和servlet-mapping即可使用

    后台(服务端)java服务代码:(上传至ROOT/lqxcPics文件夹下)

    <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><%@

         page contentType="text/html;charset=utf-8"%><%@

         page import = "Xproer.*" %><%@

         page import="org.apache.commons.lang.StringUtils" %><%@

         page import="org.apache.commons.fileupload.*" %><%@

         page import="org.apache.commons.fileupload.disk.*" %><%@

         page import="org.apache.commons.fileupload.servlet.*" %><%

    boolean isMultipart = ServletFileUpload.isMultipartContent(request);

    FileItemFactory factory = new DiskFileItemFactory();  

    ServletFileUpload upload = new ServletFileUpload(factory);

    List files = null;

    try

    {

         files = upload.parseRequest(request);

    }

    catch (FileUploadException e)

    {

        out.println("上传文件异常:"+e.toString());

        return;

    }

    FileItem imgFile = null;

    Iterator fileItr = files.iterator();

    while (fileItr.hasNext())

    {

         imgFile = (FileItem) fileItr.next();

         if(imgFile.isFormField())

         {

             String fn = imgFile.getFieldName();

             String fv = imgFile.getString();

             if(fn.equals("uname")) uname = fv;

             if(fn.equals("upass")) upass = fv;

         }

         else

         {

             break;

         }

    }

    Uploader up = new Uploader(pageContext,request);

    up.SaveFile(imgFile);

    String url = up.GetFilePathRel();

    out.write(url);

    response.setHeader("Content-Length",url.length()+"");

    %>

    配置web.xml

     <?xml version="1.0" encoding="UTF-8"?>

    <web-app version="2.5"

        xmlns="http://java.sun.com/xml/ns/javaee"

        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

        xsi:schemaLocation="http://java.sun.com/xml/ns/javaee

        http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">

      <welcome-file-list>

        <welcome-file>index.jsp</welcome-file>

      </welcome-file-list>

    </web-app>

    前端(页面)测试代码:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

    <html xmlns="http://www.w3.org/1999/xhtml">

    <head>

         <meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>

         <title>WordPaster-jsp-ueditor-1.2.6.0</title>

         <script type="text/javascript" src="ueditor.config.js" charset="utf-8"></script>

         <script type="text/javascript" src="ueditor.all.min.js" charset="utf-8"></script>

         <link type="text/css" rel="Stylesheet" href="WordPaster/css/WordPaster.css"/>

        <link type="text/css" rel="Stylesheet" href="WordPaster/js/skygqbox.css" />

        <script type="text/javascript" src="WordPaster/js/json2.min.js" charset="utf-8"></script>

        <script type="text/javascript" src="WordPaster/js/jquery-1.4.min.js" charset="utf-8"></script>

        <script type="text/javascript" src="WordPaster/js/w.edge.js" charset="utf-8"></script>

        <script type="text/javascript" src="WordPaster/js/w.app.js" charset="utf-8"></script>

        <script type="text/javascript" src="WordPaster/js/w.file.js" charset="utf-8"></script>

        <script type="text/javascript" src="WordPaster/js/skygqbox.js" charset="utf-8"></script>

        <script type="text/javascript" src="WordPaster/js/WordPaster.js" charset="utf-8"></script>

    </head>

    <body>

         <textarea name="后台取值的key" id="myEditor">这里写你的初始化内容</textarea>

         <script type="text/javascript">

            var pasterMgr = new WordPasterManager();

            //pasterMgr.Config["PostUrl"] = "http://www.ncmem.com/products/upload_ori.aspx"

        pasterMgr.Config["PostUrl"] = "http://localhost:8080/WordPaster2UEditor1.4x/upload.jsp"

        //pasterMgr.Config["PostUrl"] = "http://cloud.dyso.cn/ueditor/upload.jsp"

        pasterMgr.Load();//加载控件

            var ue = UE.getEditor('myEditor');

            

             ue.ready(function() {

                 //设置编辑器的内容

                 ue.setContent('hello');

                 //获取html内容,返回: <p>hello</p>

                 var html = ue.getContent();

                 //获取纯文本内容,返回: hello

                 var txt = ue.getContentTxt();

                 pasterMgr.SetEditor(ue);

             });

                      

         </script>

    </body>

    </html>

    实现后的效果,能够批量上传word中的全部图片,大幅度提升图片上传效率。而且能够保留Word样式。

    图片上传完后,编辑器里面的图片地址也全部都改成了服务器的图片地址了,

    所有代码已经全部传到网上,有需要的朋友可以直接下载使用,http://blog.ncmem.com/wordpress/2019/08/07/javaword图片上传控件/

    讨论群:223813913

  • 相关阅读:
    网站安全编程 黑客入侵 脚本黑客 高级语法入侵 C/C++ C# PHP JSP 编程
    【算法导论】贪心算法,递归算法,动态规划算法总结
    cocoa2dx tiled map添加tile翻转功能
    8月30日上海ORACLE大会演讲PPT下载
    【算法导论】双调欧几里得旅行商问题
    Codeforces Round #501 (Div. 3) B. Obtaining the String (思维,字符串)
    Codeforces Round #498 (Div. 3) D. Two Strings Swaps (思维)
    Educational Codeforces Round 89 (Rated for Div. 2) B. Shuffle (数学,区间)
    洛谷 P1379 八数码难题 (BFS)
    Educational Codeforces Round 89 (Rated for Div. 2) A. Shovels and Swords (贪心)
  • 原文地址:https://www.cnblogs.com/songsu/p/13262200.html
Copyright © 2011-2022 走看看