非同源图片下载(html添加canvas标签)

方法1:
downloadImgByBase64(url){
console.log()
// 创建隐藏的可下载链接  
// let  blob = 'http://pic.c-ctrip.com/VacationH5Pic/mice/wechat/ewm01.png';
// var a = document.createElement('a');
// a.style.display = 'none';
// a.href = blob;       
// a.download = 'QRcode.jpg';
// document.body.appendChild(a);
// a.click();
// //移除元素
// document.body.removeChild(a);
//canvans下载
let src = url;
var canvas = document.createElement('canvas');
var img = document.createElement('img');
img.onload = function(e) {
canvas.width = img.width;
canvas.height = img.height;
var context = canvas.getContext('2d');
context.drawImage(img, , , img.width, img.height);
// window.navigator.msSaveBlob(canvas.msToBlob(),'image.jpg');
// saveAs(imageDataUrl, '附件');
canvas.getContext('2d').drawImage(img, , , img.width, img.height);
canvas.toBlob((blob)=>{
let link = document.createElement('a');
link.href = window.URL.createObjectURL(blob);
link.download = 'aaa';
link.click();
}, "image/jpeg");
//注:图片为透明图片时使用图片格式 image/jpeg下载图片为黑色背景图,
如果想下周图片为透明图片,使用图片格式image/png
      // context.toBlob(function(blob) {
// console.log('blob :', blob); // let link = document.createElement('a');
// link.href = window.URL.createObjectURL(blob);
// link.download = 'aaa';
// }, "image/jpeg");
}
img.setAttribute("crossOrigin",'Anonymous');
img.src = src;
}, 方法2: downloadImgByBase64cehsi(url) {
var img = new Image()
img.onload = function() {
var canvas = document.createElement('canvas')
canvas.width = img.width
canvas.height = img.height
var ctx = canvas.getContext('2d')
// 将img中的内容画到画布上
ctx.drawImage(img, , , canvas.width, canvas.height)
// 将画布内容转换为base64
var base64 = canvas.toDataURL()
// 创建a链接
var a = document.createElement('a')
a.href = base64
a.download = ''
// 触发a链接点击事件,浏览器开始下载文件
a.click()
}
img.src = url
// 必须设置,否则canvas中的内容无法转换为base64
img.setAttribute('crossOrigin', 'Anonymous')
},

2,同源图片下载

 <a :href="http:***.png " download="logo.png"></a>

图片下载&&非同源图片下载&&同源下载&&网页点击下载图片的更多相关文章

  1. js生成二维码以及点击下载二维码

    js生成二维码 jquery.qrcode.js可以快速使用页面生成二维码.但改项目有两个小问题:1.不支持中文:2.不支持二维码中间生成图片. 支持中文的jquery-qrcode jquery.q ...

  2. Python 爬虫5——爬取并下载网页指定规格的图片

    看完上篇文档之后,我们对于正则表达式已经有了基本的了解,其实学习最有效的办法就是带着问题和目的,这里我们假设有一个目标:获取某个网页上指定规格的图片的链接地址,并下载到本地. 一.实现步骤: 1.在浏 ...

  3. php如何实现图片点击下载,并保存本地?-----本例子为二维码的生成图片,并支持点击下载

    ### 今天因为工作需要,完成了一个二维码的生成图片,并支持点击下载的 ### 控制器文件,相关代码 // 生成二维码 $url = action('Apih5\\VersionController@ ...

  4. 分享:android图片浏览器—类微信朋友圈相片浏览【android代码下载】

    今天给大家分享个android图片/相册浏览器,类似微信朋友圈相片浏览,可以左右滑动,可以双击放大,捏拉放大 效果如下:<ignore_js_op> device-2013-09-04-1 ...

  5. C# 网络编程之webBrowser获取网页url和下载网页中图片

    该文章主要是通过C#网络编程的webBrowser获取网页中的url并简单的尝试瞎子啊网页中的图片,主要是为以后网络开发的基础学习.其中主要的通过应用程序结合网页知识.正则表达式实现浏览.获取url. ...

  6. 图片去水印工具:Inpaint 7.2中文专业破解版下载及使用方法

    下载地址: 点我 Inpaint 是一款可以从图片上去除不必要的物体,让您轻松摆脱照片上的水印.划痕.污渍.标志等瑕疵的实用型软件:简单说来,Inpaint 就是一款强大实用的图片去水印软件,您的图片 ...

  7. 30款jQuery常用网页焦点图banner图片切换 下载

    1.jquery 图片滚动特效制作 slide 图片类似窗帘式图片滚动 查看演示 2.jquery幻灯片插件带滚动条的圆形立体图片旋转滚动 查看演示 3.jQuery图片层叠旋转类似洗牌翻转图片幻灯片 ...

  8. 30款jQuery常用网页焦点图banner图片切换 下载 (转)

    1.jquery 图片滚动特效制作 slide 图片类似窗帘式图片滚动 查看演示 2.jquery幻灯片插件带滚动条的圆形立体图片旋转滚动 查看演示 3.jQuery图片层叠旋转类似洗牌翻转图片幻灯片 ...

  9. php大力力 [045节] 兄弟连高洛峰 PHP教程 2014年[已发布,点击下载]

    http://www.verycd.com/topics/2843130/ 第1部分 WEB开发入门篇第1章LAMP网站构建1.[2014]兄弟连高洛峰 PHP教程1.1.1 新版视频形式介绍[已发布 ...

随机推荐

  1. linux yum的配置文件 repo文件详解

    linux yum的配置文件 repo文件详解 什么是repo文件?repo文件是Fedora中yum源(软件仓库)的配置文件,通常一个repo文件定义了一个或者多个软件仓库的细节内容,例如我们将从哪 ...

  2. AXIOS构建请求处理全局loading状态&&AXIOS避免重复请求loading多次出现

    一般情况下,在 vue 中结合 axios 的拦截器控制 loading 展示和关闭,是这样的:在 App.vue 配置一个全局 loading. <div class="app&qu ...

  3. Codeforces Round #395 Div.1 C pacifist【JZOJ5449】Pacifist

    题目 papyrus 喜欢谜题... 来解一道如何? 在你面前有一个被加密了的数组,其原数组是一个等差序列,你面前的则是将原数组中的所有数字都对m 取模再打乱后而得到的新数组 papyrus 给你出的 ...

  4. HTML DOM 事件与方法

    HTML DOM 事件允许Javascript在HTML文档元素中注册不同事件处理程序. 事件通常与函数结合使用,函数不会在事件发生前被执行! (如用户点击按钮). 鼠标事件 键盘事件 框架/对象(F ...

  5. HTML中的表格和图像总结

    ㈠表格 ⑴表格的基本结构 ①表格的基本标签有:table标签(表格),tr标签(行),td标签(单元格).<tr>标签和<td>标签都要在表格的开始标签<table> ...

  6. yum 源的搭建

    repos和epel的关系 https://blog.csdn.net/fantaxy025025/article/details/84918199 配置阿里云的yum源 https://www.cn ...

  7. 51 Nod 1066 Bash游戏

    1066 Bash游戏  基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题  收藏  关注 有一堆石子共有N个.A B两个人轮流拿,A先拿.每次最少拿1颗,最多拿K颗,拿到 ...

  8. 51 Nod 1486 大大走格子

    1486 大大走格子  题目来源: CodeForces 基准时间限制:1 秒 空间限制:131072 KB 分值: 160 难度:6级算法题  收藏  关注 有一个h行w列的棋盘,里面有一些格子是不 ...

  9. sublime text 3插件---File Header配置

    今天趁着有点闲工夫,准备好好配置一下sublime环境,毕竟天天见面. 首当其冲的就是FileHeader插件了,安装它之后就懒得配置过.(方便起见,以下简称FH) FH是一个为文件自动添加前缀字段的 ...

  10. 图解数据库中的join操作

    1.所有的join都从cross join衍生而来 2.所有join图示 转自Say NO to Venn Diagrams When Explaining JOINs