首页 > 其他分享 >支持复制粘贴word公式的Web编辑器

支持复制粘贴word公式的Web编辑器

时间:2023-05-25 17:14:41浏览次数:55  
标签:Web word 控件 pasterMgr imgFile 复制粘贴 ue http page

 这种方法是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样式。

 

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

效果展示:

 

视频教程:

 

动易SiteFactory 4.7整合,动易SiteFactory 6.2整合,dedecms 5.7-ueditor整合,dedecms 5.7-ckeditor3x整合,帝国CMS-ueditor整合,帝国CMS-ckeditor4x整合,dokuwiki整合,Windows控件安装,macOS控件安装,linux-deb控件安装,linux-rpm控件安装,uos控件安装,linux-银河麒麟控件安装,

 

更多详细资料可以参考这篇文章:

详细思路及源码

示例下载:

wordpaster-vue3-cli-ueditor1.5wordpaster-vue-ueditor1.5wordpaster-asp.net-ueditor1.5xwordpaster-php-ueditor1xwordpaster-jsp-ueditor1x​

标签:Web,word,控件,pasterMgr,imgFile,复制粘贴,ue,http,page
From: https://www.cnblogs.com/songsu/p/17431877.html

相关文章

  • Spring Web Body 转化常见错误
    案例1:Noconverterfoundforreturnvalueoftype在直接用SpringMVC而非SpringBoot来编写Web程序时,我们基本都会遇到“Noconverterfoundforreturnvalueoftype”这种错误。实际上,我们编写的代码都非常简单,例如下面这段代码:(https://www.java567.com,搜"spring"......
  • HTTP - HTTP请求 与 HTTP响应 【Web后端开发基础】
    一、HTTP介绍HTTP(HyperTextTransferProtocol)超文本传输协议,是互联网上应用最为广泛的一种网络协议。 作用: 规范浏览器和服务器之间通信时传输数据的格式 特点: 基于TCP协议:面向连接,安全 基于请求-响应模型的:一次请求对应一次响应 HTTP协议是无状态的......
  • Spring Web URL 解析常见错误
    案例1:当@PathVariable遇到/在解析一个URL时,我们经常会使用@PathVariable这个注解。例如我们会经常见到如下风格的代码:(https://www.java567.com,搜"spring") @RestController @Slf4j publicclassHelloWorldController{  @RequestMapping(path="/hi1/{name}",......
  • web安全之文件上传漏洞、文件包含漏洞
    文件上传原理:对上传的文件未进行过滤,或者过滤不严,导致恶意文件被成功上传到网站。防御:代码加强、WAF拦截、webshell查杀、正则搜索网站目录是否存在eval等敏感字段。前端JS绕过更改前端限制burp抓包MIME绕过 漏洞利用文件头欺骗  gif89a<%evalrequest("pwd")%>fu......
  • web3j操作和以太坊基础知识
    web3j操作和以太坊基础知识以太坊中的基本单位单位很多,主要需要关注的是下面3种。最小单位是wei其中ether就是常说的1个ETH。1个ETH是1e18wei。1个Gwei就是常说的gas,一个gas即一个Gwei=1e9wei。单位wei值Weiwei11weiGwei(shannon)1e9wei1,000,00......
  • web安全之SQL注入漏洞
    SQL注入原理:用户能控制输入的内容;Web应用把用户输入的内容带入到数据库中执行。分类:依据注入点参数类型分类:数字型注入、字符型注入、搜索型注入        依据获取信息的方式分类:union注入、布尔盲注、时间盲注、报错注入、堆叠查询注入        依据请求方......
  • Flex实践—So beautiful webpage.....
        前不久听说应该开始学习Flex,因为我的骨子里还是懒的,所以一直不想装这种专业软件,其实装软件配环境对我来说一直是比写代码还痛苦的事,今天下午终于赖不住无聊,下了个FlexBuilder3,装了一下,找了个注册码,开始感受它的神奇。。。。    让我惊讶的是Flex设计出来的页面效......
  • WebShell 特征分析
    WebShell特征分析作者:HaiCheng@助安社区,关注公众号领取学习路线和资料。​ WebShell是黑客经常使用的一种恶意脚本,其目的是获得服务器的执行操作权限,常见的webshell编写语言为asp/jsp/php。主要用于网站管理,服务器管理,权限管理等操作。使用方法简单,只需要上传一个代码文件,通过......
  • Fdog系列(三):使用腾讯云短信接口发送短信,数据库写入,部署到服务器,web收尾篇。
    文章目录1.前言2.使用腾讯云短信接口发送短信3.java连接数据库4.部署到服务器(如果你有的话)目录Fdog系列(一):思来想去,不如写一个聊天软件,那就从仿QQ注册页面开始吧。Fdog系列(二):html写完注册页面之后怎么办,用java写后台响应呀。文章中出现的源码获取方式:评论区留下邮箱地址。创作......
  • 调用WebService和WCF
    标题:CMD命令提示符命令:cmd.exe参数:%comspec%/k"C:\ProgramFiles\MicrosoftVisualStudio\2022\Enterprise\Common7\Tools\VsDevCmd.bat"初始目录:$(ItemDir) 标题:WSDL生成代理类命令:C:\ProgramFiles(x86)\MicrosoftSDKs\Windows\v10.0A\bin\NETFX4.8Tools......