c-zhuo/easycanvas

webgl添加透明纹理的问题

cyitianyou opened this issue · 6 comments

您好!
我使用Easycanvas的webgl插件渲染图片,添加了一个背景图,又在背景图上增加了一个组件图;
组件图使用的纹理图片是.png格式,图片是透明背景,
但是最终的渲染结果是组件图有了白色的背景,能帮忙指点一下原因吗?这种情况有办法解决吗?
测试代码在这个链接: https://cyitianyou.github.io/easycanvas-demo/demo.html

含有白色背景的图,加上hasAlpha: true属性试试
Easycanvas.webglShapes.custom({ ... , hasAlpha: true});

文档貌似忘了提这一块,后续补上。

按照您说的,我更新了一下demo,好像还是不生效
代码还是在原地址: https://cyitianyou.github.io/easycanvas-demo/demo.html

好的,等下班有空了我查查哈

感谢!那您先忙!
另外还得再咨询一下您,Easycanvas有提供整个界面保存成图片的API吗?
我试过$app.$dom.toBlob或者$app.pause(); $app.$dom.toBlob 得到的都是一张空白的图片

您好!白色背景的问题解决了,是我自己的问题!
我把背景图和组件图的z坐标都设置成0了,可能会相互影响,我把组件图的z坐标设为1,再加上您说的hasAlpha: true属性就可以了!
再次感谢您的支持!

好的,都是0的情况下确实有个bug,这个下个版本会修复。
保存成图片,可以对canvas用toDataURL这个API,是浏览器提供的API。