时间:2021-05-26
首先功能是要求前台导出word,但是前后台是分离的,图片存在后台,所以就存在跨域问题。
导出文字都是没有问题的(jquery.wordexport.js),但是导出图片就存在问题了:
图片是以链接形式存到word中,这样如果是需要vpn的网站就会存在生成的word在没有vpn的情况下打不开,有vpn的情况下必须启用编辑才能加载出来图片。
解决办法:将图片转换成Data URL格式,再导出。
详细代码如下所示:
function changeImgToDataurl(){ var charImg = document.all("exportdom").getElementsByTagName("img"); var imgURLs = ""; for (var i = 0; i < charImg.length; i++) { var imgURL = charImg[i].currentSrc; getBase64(imgURL,charImg[i]); } }function getBase64(url,charImg){ var Img = new Image(); Img.crossOrigin = "Anonymous";//跨域必须使用,且后台也得设置允许跨域 dataURL=''; Img.src=url; Img.onload=function(){ //要先确保图片完整获取到,这是个异步事件 var canvas = document.createElement("canvas"), //创建canvas元素 width=Img.width, //确保canvas的尺寸和图片一样 height=Img.height; canvas.width=width; canvas.height=height; canvas.getContext("2d").drawImage(Img,0,0,width,height); //将图片绘制到canvas中 dataURL=canvas.toDataURL('image/jpg'); //转换图片为dataURL condataurl?condataurl(dataURL,charImg):null; //调用回调函数 };} function condataurl(dataURL,charImg){ charImg.src=dataURL; //console.log(charImg);}以上这篇js生成word中图片处理方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
word把字体放在图片上,其方法是: 1、首先在电脑打开Word文档软件,然后在Word中打开需要处理的文档。 2、接下来在上方工具栏中选择“插入”、“图片
大家都知道,Word文档中的图片是不能够复制粘贴的,只能将图片从文档中提取出来,常用的方法是将Word文档另存为网页格式的进行提取。但缺点是提取一张图片会生成一
WORD是办公常用软件,可以处理文字、图片、表格。在处理表格时,我们会遇到删除表格。在WORD里删除表格的方法很多。下面小彩介绍一下在WORD中快速删除表格的一
在日常的工作中,经常会有到word2003来处理编辑文档,有时候需要在文档中插入一些图片,但是word2003中插入图片都是默认【嵌入型】的,对于整个版面的处理
在Node.js中,我们可以通过qr-image包直接在后台生成二维码图片,使用方法很简单:varqr=require('qr-image');exports.