js实现word转换为html
前言
最近接到一个需求,实现上传一个word文档,然后将该word转换成html丢给服务端存上。进行技术调研后发现有三种方法可以实现这个功能:ActiveXObject
、docx2html
、mammoth
。
IE的 ActiveXObject
var oWordApp=new ActiveXObject("Word.Application"); var oDocument=oWordApp.Documents.Open("C://test.doc"); oDocument.SaveAs("C://test.html", 10)
缺点:只有IE才有这个东西
docx2html
Git地址:https://github.com/lalalic/docx2html
使用方法:
// html 部分
<input type="file" @change="handleFileSelect">
<textarea id="text"></textarea>// js部分
handleFileSelect(event){require("docx2html")(event.target.files[0]).then(function(converted){console.log(converted)document.querySelector('textarea').value=converted.toString()})
}
缺点:只能将简单的docx文件转化成html,复杂点的就报错了,如图:
mammoth.js
Git地址:https://github.com/mwilliamson/mammoth.js
中文文档地址:https://www.helplib.com/GitHub/article_106969
使用方法:
//html:部分<div class="container"><input id="document" type="file" @change="handleFileSelect" /><div class="row"><div class="span8"><div id="output" class="well"></div></div><div class="span4"><h3>Messages</h3><div id="messages"></div></div></div></div>
//js:部分handleFileSelect(event) {this.readFileInputEventAsArrayBuffer(event, (arrayBuffer) => {mammoth.convertToHtml({arrayBuffer: arrayBuffer}).then(this.displayResult).done();});},displayResult(result) {console.log(result)document.getElementById("output").innerHTML = result.value;var messageHtml = result.messages.map((message) => {return '<li class="' + message.type + '">' + this.escapeHtml(message.message) + "</li>";}).join("");document.getElementById("messages").innerHTML = "<ul>" + messageHtml + "</ul>";},readFileInputEventAsArrayBuffer(event, callback) {var file = event.target.files[0];var reader = new FileReader();reader.onload = function(loadEvent) {var arrayBuffer = loadEvent.target.result;callback(arrayBuffer);};reader.readAsArrayBuffer(file);},escapeHtml(value) {return value.replace(/&/g, '&').replace(/"/g, '"').replace(/</g, '<').replace(/>/g, '>');},
缺点:只支持docx的word文档,并且转换后的标题没有居中,如图:
js实现word转换为html相关推荐
- js把word转html在线预览,js实现word转换为html
前言 最近接到一个需求,实现上传一个word文档,然后将该word转换成html丢给服务端存上.进行技术调研后发现有三种方法可以实现这个功能:ActiveXObject.docx2html.mammo ...
- js把html转换成word,js实现word转换为html
前言 最近接到一个需求,实现上传一个word文档,然后将该word转换成html丢给服务端存上.进行技术调研后发现有三种方法可以实现这个功能:ActiveXObject.docx2html.mammo ...
- 一键将Word转换为MarkDown
▌01 Word转换为Markdown 1.背景介绍 Word文档是由微软公司的Office办公室软件编辑生成的办公文档,是当今应用最为广泛的文件形式之一. Markdown 文档则以它简介的语法纯字 ...
- java 如何将word 转换为ftl_如何把word转化为pdf?职场达人必需的转换技巧
原标题:如何把word转化为pdf?职场达人必需的转换技巧 小刘是做推广工作的,前两天我们要到某度上传文件,但是pdf格式的文件在那个平台上比较吃香!而我们日常在文件中编辑文字又都是以word的格式, ...
- android word转html标签,如何将Word转换为网页html格式的方法(附代码清理方法)
Word是我们常用的的办公软件,广泛被运用,那么我们怎么把Word转换为网页html格式? 需要软件: word2003 或 wps 个人建议用wps更方便,word生成的图片容易重复 editplu ...
- java docx转html实例_Java实现将word转换为html的方法示例【doc与docx格式】
Java实现将word转换为html的方法示例[doc与docx格式] 发布于 2020-6-14| 复制链接 摘记: 本文实例讲述了Java实现将word转换为html的方法.分享给大家供大家参考, ...
- java markdown转word_一键将 Word 转换为 Markdown
李缘 | | Stata 连享会 (知乎 | 简书 | 码云 方法一:Writage + Pandoc -- 双剑合璧! 打开 Writage网页,点击Download,再点击Download Now ...
- JS将数字转换为中文
<!DOCTYPE html> <html> <head><meta charset="UTF-8"><title>JS ...
- winform实现word转换为PDF(.doc)
注意:实现word转换为PDF文件,本人安装Office为2013; word以后缀为.doc为例实现文件类型转换,具体方式如下所示: 实现步骤: 1.添加命名空间引用--using Microsof ...
最新文章
- 【高并发】一个工作了7年的朋友去面试竟然被Thread类虐的体无完肤
- flex布局一行三个_CSS Flex布局
- django网上商城_网上商城开源项目合集
- Oracle:闪回,闪回表,闪回删除,闪回版本查询,闪回事务查询
- android 流量统计工具,Android 统计应用流量的使用情况
- linux自带mysql启动不_Linux系统自带的MySQL 数据库启动问题
- java ee 类切换_eclipse的工程类型切换
- ECshop sina
- 【优化充电】基于matlab多种遗传算法求解电动汽车有序充电优化问题【含Matlab源码 792期】
- cookie、session存储以及cookie使用环境 多数据存储批次加载渲染页面
- ESP8266/ESP32 +1.3“ or 0.96“ IIC OLED指针时钟+数字时钟显示
- 【算法】机器人走迷宫(适用于走迷宫、最短路径算法)-20200412
- 4.0 RTL8723DU驱动(wifi+蓝牙)
- [Jenkins]jenkins配置163邮箱做邮件发送
- 洛谷 P2517 [HAOI2010]订货
- Spark中cache、persist、checkpoint区别
- 【干货】 xgboost如何自定义eval_metric ( feval ) ?
- 百度地图线路颜色_山东到底发展成了什么样子,这两张地图不会说谎
- 逻辑漏洞----其他类型
- android gone动画_java – Android添加简单的动画,而setvisibility(view.Gone)
热门文章
- 51nod题解 1006 最长公共子序列LCS
- 如何在注册表中删除用户帐户信息。
- 手机linux游戏,无聊的教室游戏下载(附攻略)-无聊的教室手机版v1.0.0-Linux公社
- FPGA--(基于Quartus的FPAG程序下载与固化教程)VGA显示实验之上板测试
- 美团点评将全面迎战百度、阿里、携程
- API接口安全思考和最佳实践
- 程序员自我修养-总结 (1)
- 下拉菜单和文本框结合
- 4/2 三元表达式/函数递归/匿名函数/内置函数
- 关于富勒-富勒旗舰店- 天猫Tmall.com