CocosCreator截屏全黑问题分析:浮点数引起的bug

在官方的截屏案例中,关于截屏的逻辑也算是比较简单,copy到项目中也能正常使用。

但是在部分手机上运行,截屏竟然是透明白,renderTexture.readPixels()返回的像素数据也没有任何问题,而canvas.toDataURL('image/jpeg')死活始终是全黑。

首先想到的是canvas.toDataURL这个api是否存在兼容性问题,写了demo也没有任何问题呀

排查了很久,整整2天,发现context.putImage的数据竟然全是undefined,下图解释了为什么是undefined,太TMD的坑了

image.png

至于cc.visibleRect.height为啥是浮点数,这就不太清楚了,不过这个浮点数的坑,是真的坑!目前官方案例中还存在这样的bug,使用前记得

width = parseInt(width.toFixed(0));
height = parseInt(height.toFixed(0));
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容