[]某些机型drawToCanv绘图颜色变深

在联想k52e78测试发现如下代码绘图颜色变深。
var htmlC:HTMLCanvas = Laya.stage.drawToCanvas(750,1183,0,0);
var canvas:* = htmlC.getCanvas();//获取原生的canvas对象
var base64String:String = canvas.toDataURL("image/png");

var _webframe:*;
_webframe = Browser.document.createElement("img");
_webframe.setAttribute('src', base64String);
//_webframe.setAttribute('frameborder', 0);
_webframe.setAttribute('width', "100%");
_webframe.setAttribute('height', "100%");
//_webframe.setAttribute('align', "middle");
_webframe.setAttribute('scrolling', "no");
_webframe.setAttribute('position', "absolute");
_webframe.setAttribute('style', "z-index:100001;position: absolute; left: 0px; top: 0px; background: rgb(0, 0, 0);");
Browser.document.body.appendChild(_webframe);
下面图片左边是正产机型截图,右边是联想手机截图。已测试jepg和png格式结果都一样。
QQ图片20180103161657.png
已邀请:

CCQ

赞同来自: jzhlaya

我也碰到这个这个问题 机子是荣耀7x 用手机自带的浏览器测试没有问题 用微信的内置浏览器也会颜色加深 都是在webgl模式下

Aar0n

赞同来自:

https://ask.layabox.com/question/10077 参照这个问题试一下,一样的问题

jzhlaya

赞同来自:

修改代码测试没有解决问题。现在发现有oppo a37m 和lenovo k52e78两款型号的手机出现这个问题。

Aar0n

赞同来自:

上传一个可重现的demo 我们测一下

jzhlaya

赞同来自:

引擎初始化方法里不用WebGL模式就是正常的。这样牺牲了性能。希望官方能优化

jzhlaya

赞同来自:

今天发现华为荣耀v8也有这个现象

jzhlaya

赞同来自:

测试demo,周末没在公司,没有测试手机实验。代码环境应该一样的。

jzhlaya

赞同来自:

越来越多的手机出现这个问题,原先在我的vivo x5上没有问题,现在也异常。我把项目改了一下用于调试,地址:http://app.chentwin.com/Html/debug/index.html 现在在我手机上还是颜色异常。

helloworldlv

赞同来自:

我写例子测试了和我们引擎没关系,应该是浏览器兼容性问题。用layaair的精灵显示试试呢,不要用浏览器的
var htmlCanvas:HTMLCanvas = sprite.drawToCanvas(100, 100, 0, 0);//把精灵绘制到canvas上面
var texture:Texture = new Texture(htmlCanvas);//使用htmlCanvas创建Texture
 var sp:Sprite = new Sprite().pos(0, 200);//创建精灵并把它放倒200位置
sp.graphics.drawTexture(texture);//把截图绘制到精灵上
Laya.stage.addChild(sp);//把精灵显示到舞台
 

要回复问题请先

商务合作
商务合作