前端使用html2canvas在页面截图并导出,以及截图中含有图片时的跨域问题解决
创始人
2024-11-14 18:04:39
0

1.引入html2canvas

npm 安装或cdn引入

npm install html2canvas   

2.使用 html2canvas

// 假设你有一个 id 为 "capture" 的元素   html2canvas(document.querySelector("#capture")).then(canvas => {       // canvas 是转换后的 canvas 元素       // 你可以将 canvas 转换为图片,然后添加到 DOM 中       document.body.appendChild(canvas);          // 或者,将 canvas 转换为图片 URL 并显示在 img 元素中       var image = canvas.toDataURL("image/png").replace("image/png", "image/octet-stream");       var link = document.createElement('a');       link.download = 'screenshot.png';       link.href = image;       link.click();   });

3.图片跨域时的解决方法

1.服务器CORS配置:

        图片所在服务器设置Access-Control-Allow-Origin: * 或 Access-Control-Allow-Origin: 你的域名 的头部。

        注意,出于安全考虑,许多服务器默认不允许跨域请求。

2.设置开发服务器代理,以vue项目为例:

        在vue.config.js中配置

// vue.config.js   module.exports = {     devServer: {       proxy: {        '/file': {           target: 'http://155.60.114.72:88545'//图片所在地址,           changeOrigin: true,           pathRewrite: {             '^/file': ''           }         }       }     }   }

        在你的Vue组件中,你应该将图片URL更改为通过代理访问的URL

let img = '/file/7df46603b38d49af94cefb4c92d5cd27.jpg' 

相关内容

热门资讯

WPK透视辅助!德州局脚本,w... WPK透视辅助!德州局脚本,wpk德州局透视(切实是有挂)1、超多福利:超高返利,海量正版游戏,wp...
微扑克透视辅助!pokemmo... 微扑克透视辅助!pokemmo辅助器手机版下载,hhpoker开挂教程(一贯是真的有挂)1、微扑克透...
WPK透视辅助!扑克之星辅助,... WPK透视辅助!扑克之星辅助,wepoker辅助是真的假的(真是真的有挂)wepoker辅助是真的假...
wpk透视辅助!hhpoker... wpk透视辅助!hhpoker是内部控制吗,wepoker破解工具(好像真的有挂)1、hhpoker...
微扑克透视辅助!hhpoker... 微扑克透视辅助!hhpoker德州透视,xpoker透视辅助(好像真的是有挂)1)hhpoker德州...
微扑克透视辅助!黑侠破解wep... 微扑克透视辅助!黑侠破解wepoker,wepoker辅助分析器(切实是有挂)1、首先打开wepok...
wpk透视辅助!aapoker... wpk透视辅助!aapoker怎么设置抽水,大菠萝手游辅助(总是真的有挂)运aapoker怎么设置抽...
wpk透视辅助!wepoker... wpk透视辅助!wepoker软件辅助程序,wepoker辅助器安装包定制(其实是有挂)小薇(辅助器...
微扑克透视辅助!aapoker... 微扑克透视辅助!aapoker怎么提高中牌率,hhpoker软件安装包(确实真的有挂)1、进入游戏-...
WPK透视辅助!wepoker... 您好,wepoker透视器免费这款游戏可以开挂的,确实是有挂的,需要了解加去威信【485275054...