首页 > 其他分享 >Web编辑器实现WORD粘贴公式自动上传

Web编辑器实现WORD粘贴公式自动上传

时间:2023-08-29 18:35:25浏览次数:38  
标签:function Web WORD ueditor 控件 编辑 编辑器 wordupload 上传

 1.编辑器修改 (可选)

1.1在 ueditor/config.json 中添加代码块

    /* 上传word配置 */

    "wordActionName": "wordupload", /* 执行上传视频的action名称 */

    "wordFieldName": "upfile", /* 提交的视频表单名称 */

    "wordPathFormat": "/public/uploads/word/{yyyy}{mm}{dd}/{time}{rand:6}", /* 上传保存路径,可以自定义保存路径和文件名格式 */

    "wordMaxSize": 102400000, /* 上传大小限制,单位B,默认100MB */

"wordAllowFiles": [".docx"] /* 仅支持docx格式的word */

 

 

1.2 修改编辑器配置文件

在ueditor\ueditor.config.js文件中,新增按钮名称"wordupload",并添加鼠标悬浮提示

 ,labelMap:{

      'wordupload': '上传word文件',

    }

 

编辑

1.2.1 对应 /ueditor/lang/**

 

编辑

en.js

 'wordupload':{

        'exceedSizeError': 'File Size Exceed',

        'exceedTypeError': 'File Type Not Allow',

        'jsonEncodeError': 'Server Return Format Error',

        'loading':"loading...",

        'loadError':"load error",

        'errorLoadConfig': 'Server config not loaded, upload can not work.',

    },

 

编辑

 

编辑

zh-cn.js

 'wordupload':{

        'exceedSizeError': '文件大小超出限制',

        'exceedTypeError': '文件格式不允许',

        'jsonEncodeError': '服务器返回格式错误',

        'loading':"正在上传...",

        'loadError':"上传错误",

        'errorLoadConfig': '后端配置项没有正常加载,上传插件不能正常使用!'

    },

 

编辑

 

编辑

1.3 在ueditor\themes\default\images\目录下新增按钮图标"word_upload.png":

 

编辑

在ueditor\themes\default\css\ueditor.css文件中新增按钮样式:

.edui-default .edui-for-wordupload .edui-icon {

    width: 16px;

    height: 16px;

    background: url(../images/word_upload.png) no-repeat 2px 2px !important;

}

 

编辑

最后在ueditor\ueditor.all.js文件中editorui[“simpleupload”] = function (editor){}后面添加如下代码

  UE.commands['wordupload'] = {

    execCommand : function() {

      var me = this;

      try {

        if(typeof wordupload === "function") {

          wordupload(me.key);//回传富文本所在的元素ID

        } else {

          console.log("wordupload is not full");

        }

      } catch(e) {

        console.log("wordupload:"+e);

      }

    },

    queryCommandState : function() {

      return false;

    }

 

  };

 

编辑

 

编辑

 

版权声明:本文为CSDN博主「weixin_41949323」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/weixin_41949323/article/details/124841712


 

2.代码部分

2.1 html 页面加入下面代码

   

<!-- start -->

<div style="display: none;">

    <form id="wordimportform" enctype="multipart/form-data">

        <input type="file" name="worduploadfile" id="worduploadfile" onchange="javascript:asyncUploadFile()" />

    </form>

</div>

<div class="modal fade" id="loadingModal">

    <div style="width: 200px;height:20px; z-index: 20000; position: absolute; text-align: center; left: 50%; top: 50%;margin-left:-100px;margin-top:-10px">

        <div class="progress progress-striped active" style="margin-bottom: 0;">

            <div class="progress-bar" style="width: 100%;"></div>

        </div>

        <h5 style="color: #5BC0DE;">正在加载...</h5>

    </div>

</div>

<!-- end -->

2.2 对应 js 调用

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

 

 

    function wordupload(key){

        $("#worduploadfile").click();

    }

 

    function asyncUploadFile() {

        $("#loadingModal").modal({backdrop: 'static', keyboard: false});

        var formData = new FormData($('#wordimportform')[0]);

        $("#worduploadfile").val('');

 

        $.ajax({

            url:'/wordupload',

            type:'POST',

            data:formData,

            dataType:'text',

            cache: false,

            processData: false,

            contentType: false,

            success:function (result) {

                ue.execCommand('insertHtml', result);

                $("#loadingModal").modal('hide');

            },

            error:function (error) {

                console.log(error);

                $("#loadingModal").modal('hide');

            }

 

        });

    }

效果展示:

​编辑

​编辑

​编辑

 

视频教程:

 

动易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​


标签:function,Web,WORD,ueditor,控件,编辑,编辑器,wordupload,上传
From: https://www.cnblogs.com/songsu/p/17665589.html

相关文章

  • Bugku-Web13
    根据题意进行unescape解码,得到js脚本,将js脚本中的代码填入输入框中点击提交就得到了flag......
  • Bugku-Web12
    没啥思路,感觉自己在刷题,,,这个考虑的是本地管理员查看源码可以知道密码是base64加密的,使用工具解码就可以了!账号是admin,从评论里知道的...打开burp抓包,修改X-Forwarded-For:127.0.0.1即可......
  • Bugku-Web11
    没啥思路,在这个网站上不能右键弹出属性框,F12查看也没啥可看的,所以就去看了看评论,大概的套路有了,就只有实践了先安装dirsearch:https://github.com/maurosoria/dirsearch进入GitHub下载zip包,我拖到了kali里面安装,因为在wndows中解压输入命令就弹出dirsearch.py的文本文件,做完......
  • Bugku-Web10
    这个很简单!!!看了查看器,里面啥也没有,就看看网络,点开发现了flag......
  • Bugku-Web7
    打开页面之后一直在刷新(也可以说是窗口重新加载?)最近刚学了js脚本,浏览器右键检查源代码,发现有一个script一直在重载,在firefox浏览器中禁用js后,去网络里看加载页面源代码,然后就找到了flagfirefox禁用js的方式:先在地址栏输入about:config然后在搜索框中输入Javascript看到javas......
  • Bugku-Web14
    php://filter/read=convert.base64-encode/resource=index.php......
  • Bugku-Web17
    这是sql的注入题我自己的sql注入学的还不是很到位,这个题目有很学习的意味:;;第一个是通过sqlmap的注入的方式:python3.\sqlmap.py-u"http://114.67.246.176:18696/index.php"--methodPOST--data"id=1"-Dskctf-Tfl4g-Cskctf_flag--dumppythonsqlmap.py-uurl--......
  • CTFshow 萌新web22
    源代码<?phpif(isset($_GET['c'])){$c=$_GET['c'];if(!preg_match("/\:|\/|\\\/i",$c)){include($c.".php");}}else{highlight_file(__FILE__);}?>解法借助代码执行和字符......
  • 百度编辑器 从word中复制内容带多张图片
    ​ 在之前在工作中遇到在富文本编辑器中粘贴图片不能展示的问题,于是各种网上扒拉,终于找到解决方案,在这里感谢一下知乎中众大神以及TheViper。通过知乎提供的思路找到粘贴的原理,通过TheViper找到粘贴图片的方法。其原理为一下步骤:监听粘贴事件;【用于插入图片】获取光标位置;【......
  • Web Socket介绍
    在开发网络应用程序的时候,我们会遇到Socket这个概念。Socket是一个抽象概念,一个应用程序通过一个Socket来建立一个远程连接,而Socket内部通过TCP/IP协议把数据传输到网络:┌───────────┐┌───────────┐│Application│......