create截图不显示

微信小游戏截图,然后添加到场景中,目前添加后不显示,一直没报错,求助各位大佬帮忙
目前两种方案都有问题。
不知道怎么修改?希望大佬指点一下,谢谢!!!!

toTempFilePathWx() {
let node = new cc.Node();
node.parent = this.textNode;
let camera = node.addComponent(cc.Camera);
//canvas.depth = -10;
camera.node.x = cc.visibleRect.width/2;
camera.node.y = cc.visibleRect.height/2;
// 设置你想要的截图内容的 cullingMask
camera.cullingMask = 0xffffffff;

    // 新建一个 RenderTexture,并且设置 camera 的 targetTexture 为新建的 RenderTexture,这样 camera 的内容将会渲染到新建的 RenderTexture 中。
    let texture = new cc.RenderTexture();
    let gl = cc.game._renderContext;
    // 如果截图内容中不包含 Mask 组件,可以不用传递第三个参数
    texture.initWithSize(cc.visibleRect.width, cc.visibleRect.height);  //, gl.STENCIL_INDEX8
    camera.targetTexture = texture;

    // 渲染一次摄像机,即更新一次内容到 RenderTexture 中
    camera.render();

    // 这样我们就能从 RenderTexture 中获取到数据了
    let data = texture.readPixels();

    // 接下来就可以对这些数据进行操作了
    //let canvas = document.createElement('canvas');
    let canvas = wx.createCanvas();
    let ctx = canvas.getContext('2d');
    let width = canvas.width = texture.width;
    let height = canvas.height = texture.height;

    let rowBytes = width * 4;
    for (let row = 0; row < height; row++) {
        let srow = height - 1 - row;
        let imageData = ctx.createImageData(width, 1);
        let start = srow*width*4;
        for (let i = 0; i < rowBytes; i++) {
            imageData.data[i] = data[start+i];
        }

        ctx.putImageData(imageData, 0, row);
    }


    let dataURL = canvas.toDataURL("image/jpeg");
    let img = document.createElement("img");
    img.src = dataURL;

    var textures = new cc.Texture2D();
    textures.initWithElement(img);

    let spriteFrame = new cc.SpriteFrame();
    spriteFrame.setTexture(textures);

    var sprite = node.addComponent(cc.Sprite);
    sprite.spriteFrame = spriteFrame;
    node.anchorX = 0;
    node.anchorY = 0;
    node.x = 0;
    node.y = 0;
},

toTempFilePathWx2 () {
    var scheduler = cc.director.getScheduler();
    var self= this;
    scheduler.schedule(function () {
        var canvas = wx.createCanvas();
        var sceneSize = cc.director.getWinSize();
        canvas.width = sceneSize.width;
        canvas.height = sceneSize.height;
        // canvas坐标左上角开始算  toTempFilePathSync 异步接口
        canvas.toTempFilePath({
            x: 0,
            y:0,
            width: sceneSize.width,
            height: sceneSize.height,
            destWidth: sceneSize.width,
            destHeight: sceneSize.height,
            fileType: 'png',
            quality: 1,
            success: function (res) {
                let picUrl = res.tempFilePath;
                self.sceneAddPic(picUrl);
            },

            fail: function () {
                if (params.failed) {
                    params.failed();
                }
            }
        });
    }, this, 0, 0, 0, false);
},


sceneAddPic (urlimg) {
    var node = new cc.Node("New Node");
    var sprite = node.addComponent(cc.Sprite);
    node.parent = this.addNode;//cc.director.getScene();
    node.anchorX = 0;
    node.anchorY = 0;
    node.x = 360;
    node.y = 640;

    /*var textures = new cc.Texture2D();
    textures.initWithElement(urlimg);

    let spriteFrame = new cc.SpriteFrame();
    spriteFrame.setTexture(textures);
    sprite.spriteFrame = spriteFrame;*/



    /*var img = new Image();
    var texture = new cc.Texture2D();
    img.src = urlimg;
    texture.initWithElement(img);
    let spriteFrame = new cc.SpriteFrame();
    spriteFrame.setTexture(texture);
    sprite.spriteFrame = spriteFrame;*/

    var image = new Image();
    image.src = urlimg;
    image.onload = function () {
        try{
            image.onload = null;
            image.onerror = null;
            var texture = new cc.Texture2D();
            texture.initWithElement(image);
            texture.handleLoadedTexture();
            let spriteFrame = new cc.SpriteFrame();
            spriteFrame.setTexture(texture);
            sprite.spriteFrame = spriteFrame;
        }catch(e){}
    };


    /*cc.loader.load(urlimg, (err, texture)=>{
        let spriteFrame = new cc.SpriteFrame();
        spriteFrame.setTexture(texture);
        sprite.spriteFrame = spriteFrame;
    });*/
},

微信小游戏要用他自己的截图啊
https://docs.cocos.com/creator/manual/zh/render/camera.html
文档最下面

现在截图成功了,生成的截图是http://xxxx.png 怎么创建一个sprite,目前遇到了问题

试试使用 cc.assetManager.loadRemote

试了,不可以。 微信接口截的图,虽然是http 但是复制地址在浏览器是打不开的。:joy:
尝试好多方案都不行,太痛苦了。