Egret社区

toDataURL跨域问题。

2015-11-20 10:15
567315
1银子
   this.screen1 = new egret.RenderTexture();
   this.screen1.drawToTexture(this,new egret.Rectangle(50,55,537,835));
   this.screenBim = new egret.Bitmap(this.screen1);
   this.addChild(this.screenBim);
   this.base = this.screen1.toDataURL("image/jpeg"); //转换成base64字符串,会提示以下错误

Uncaught Error: #1033: 跨域图片不可以使用toDataURL来转换成base64
         at _error()[http://192.168.0.104:3001/libs/modules/egret/egret.js:53]
         at toDataURL()[http://192.168.0.104:3001/libs/modules/egret/egret.web.js:3910]
         at p.addLoadComplete()[E:/egret_11/dianliangchongqing_2015-11-25/src/win/HeartWnd.ts:131]
         at p.$notifyListener()[http://192.168.0.104:3001/libs/modules/egret/egret.js:550]
         at p.dispatchEvent()[http://192.168.0.104:3001/libs/modules/egret/egret.js:529]
         at Event.dispatchEvent()[http://192.168.0.104:3001/libs/modules/egret/egret.js:7583]


求解决方式,谢谢各位的帮助

分享到 :
0 人收藏

15 个回复

正序浏览
jcbelieve  圆转纯熟 | 2016-8-31 18:20:27
jiang200 发表于 2015-11-21 18:16
this.screen1.drawToTexture(this,new egret.Rectangle(50,55,537,835)); 截取本地舞台的画面 ...

你问解决了吗   我就用webgle 因为我要读取相册 canvas不行 现在 webgle V呀本办法 不能转换base64 一直提示跨域
leecan_zeng  登堂入室 | 2016-8-16 12:06:02
csjdameinv 发表于 2016-7-14 22:43
请问这个问题你是怎么解决的?我也遇到了这个问题

如#13楼所说,将index.html 的
[mw_shl_code=javascript,true]egret.runEgret({renderMode:"webgl", audioType:0});[/mw_shl_code]
webgl 改为 canvas 就正常。
csjdameinv  初学乍练 | 2016-7-14 22:43:58
请问这个问题你是怎么解决的?我也遇到了这个问题
pplboy  斑竹 | 2016-4-19 21:50:19
我发现一个坑
如果使用
egret.runEgret({renderMode:"canvas"});
就没问题

egret.runEgret({renderMode:"webgl"});

就会出现这个问题
aknight  炉火纯青 | 2016-3-15 10:18:06
先用服务器down下来,然后用服务器地址即可
参与人数 1贡献 +3 收起 理由
yjtx + 3 赞一个!

查看全部评分

zmt002  登堂入室 | 2016-3-14 17:50:39
没人解答吗?
gamedaybyday  初窥堂奥 | 2016-3-14 13:44:36
= = 我也遇到了。没人解答么。
qsw745  登堂入室 | 2015-12-16 20:27:51
遇到了相同的问题,同求助
撸管王  登堂入室 | 2015-11-23 11:30:14
关注。。我也想知道答案
jiang200  登堂入室 | 2015-11-22 01:20:08
xsstomy 发表于 2015-11-20 18:58
试试把base64的头去掉

知道问题出在什么地方了,因为加载了微信头像,头像属于外部的域图片,即使用
this.screen1 = new egret.RenderTexture();
   this.screen1.drawToTexture(this,new egret.Rectangle(50,55,537,835));
   this.screenBim = new egret.Bitmap(this.screen1);
   this.addChild(this.screenBim);
   this.base = this.screen1.toDataURL("image/jpeg");

就算舞台加载了微信图像,我截屏也会失败--  怎么解决这个问题
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|京网文[2014]0791-191号|京ICP证150115号|Egret社区 ( 京ICP备14025619号 )

Powered by Discuz! X3.4 © 2001-2019 Comsenz Inc.

返回顶部