小程序用云开发,请求的二维码是二进制数据,这个二进制数据如何在图片上显示出来呢
转成base64应该就可以了
cc.Texture2D 有一个 initWithData 函数,试试这个吧。
将你的 result 作为第一个参数传入,后面的自己补上吧~
TypeError: Failed to execute ‘texImage2D’ on ‘WebGLRenderingContext’: parameter 9 is not of type
微信的二维码的buffer传入好像个是还是不对的
let tex = new cc.Texture2D();
tex.initWithData(res.result.buffer, cc.Texture2D.PixelFormat.RGBA8888, 430, 430);
将buffer转出base64然后用Texture2D 的initWithData?
你可以在论坛里搜一下,有base64 的图片显示的帖子
谢谢,我服务端做了转换,然后类似如下进行了处理
myWx.cloudGetWXAcode((res) => {
let checkurl = ‘data:’ + res.result.contentType + ‘;base64,’ + res.result.buffer;
var img = new Image();
img.src = checkurl;
img.onload = function () {
var texture = new cc.Texture2D();
texture.initWithElement(img);
texture.handleLoadedTexture();
var newframe = new cc.SpriteFrame(texture);
self.sprite.spriteFrame=newframe;
}
});
感谢提供思路
