• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >html5 > Canvas引入跨域的图片导致toDataURL()报错的问题的解决

Canvas引入跨域的图片导致toDataURL()报错的问题的解决

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-03

本文主要包含Canvas,,图片跨域,toDataURL()报错等相关知识,匿名希望在学习及工作中可以帮助到您
这篇文章主要介绍了Canvas引入跨域的图片导致toDataURL()报错的问题的解决的相关资料,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

本文介绍了Canvas引入跨域的图片导致toDataURL()报错的问题的解决,分享给大家,具体如下:

1.png

【场景】

用户打开网页,则请求腾讯COS(图片服务器)上的图片。使用canvas绘图。

然后,用户可以重新选择图片、裁剪、上传。

【问题】

图片首次载入,选择新图片后裁剪、绘制都没有问题。但上传失败,报错如下:

Failed to execute 'toDataURL' on 'HTMLCanvasElement': Tainted canvases may not be exported.

经过了解,需要在图片首次引用时,设置crossOrigin字段:

                var c=document.getElementById("cover_show");
                var img=new Image();
                img.src="http://vsqx-cover-xxxxxx.coscd.myqcloud.com/"+this.vsqx_uid+".jpg";
                //增加这一行:
                img.setAttribute("crossOrigin",'anonymous');
                img.onload = function(){
                    var cxt=c.getContext("2d");
                    cxt.drawImage(img,0,0,300,150,0,0,200,126);
                }

然后再次运行。发现图片首次载入时,不显示了。。。

控制台报错如下:

3.png

【最终解决方法】

登录腾讯云COS,找到这个储存桶,设置“跨域访问CORS”。(其他PHP/JAVA服务器同理)

2.png

再次测试:图片显示成功,图片上传成功。

以上就是本文的全部内容,希望对大家的学习有所帮助!

以上就是Canvas引入跨域的图片导致toDataURL()报错的问题的解决的详细内容,更多请关注微课江湖其它相关文章!

您可能想查找下面的文章:

  • canvas与html5实现视频截图功能示例
  • 详解html5 canvas常用api总结(二)--绘图API
  • HTML5 Canvas玩转酷炫大波浪进度图效果实例(附demo)
  • 详解使用HTML5 Canvas创建动态粒子网格动画
  • 解决canvas转base64/jpeg时透明区域变成黑色背景的方法
  • 用html5的canvas和JavaScript创建一个绘图程序的简单实例
  • HTML5 canvas基本绘图之图形组合
  • HTML5 canvas基本绘图之文字渲染
  • HTML5 canvas基本绘图之绘制曲线
  • HTML5 canvas基本绘图之图形变换

相关文章

  • 2018-12-03详解html5的web存储与cookie的区别
  • 2018-12-03HTML5 canvas基本绘图之绘制曲线
  • 2017-08-06IE9下html5初试小刀
  • 2018-12-03H5你真的了解吗?(绝对干货)
  • 2018-12-03关于H5新属性audio音频和video视频的控制解析
  • 2018-12-03使用javascript和HTML5 Canvas画的四渐变色播放按钮效果_html5教程技巧
  • 2018-12-03h5实现QQ聊天气泡的实例介绍
  • 2018-12-03用html5实现画虚线效果代码
  • 2018-12-03HTML5新增的Css选择器、伪类介绍_html5教程技巧
  • 2018-12-03HTML5仿微信聊天界面和朋友圈代码

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • 如何适配不同分辨率和不同屏幕尺寸的手机
    • H5计算手机摇动次数
    • H5的头部meta标签如何使用
    • HTML5和CSS3实例教程总结(推荐)
    • HTML5 CANVAS:绘制路径
    • 利用HTML5 Canvas API绘制矩形的超级攻略
    • Html5拖放的实现方法
    • html5上传图片IOS系统和Android系统下均显示摄像头拍照和图片选择
    • 12个冷门的H5设计小技巧
    • HTML5-WebSocket实现聊天室示例

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有