收藏
回答

主域Canvas是WebGL的,开放数据域的Canvas是2d的,如果绘制到主域

问题模块 框架类型 问题类型 API/组件名称 终端类型 操作系统 微信版本 基础库版本
API和组件 小游戏 需求 wxAPI 客户端 6.6.5 1.9.93

主域Canvas是WebGL的,开放数据域的Canvas是2d的,能把开放数据域的shareCanvas绘制到主域的上屏Canvas吗?


最后一次编辑于  2018-03-24  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

13 个回答

  • 许敬
    许敬
    2018-04-02

    @周玉龙,你可以看我的另一篇帖子,https://developers.weixin.qq.com/blogdetail?action=get_post_info&docid=000a48ebaa0628f3d686b9a9b56804&token=448351662&lang=zh_CN

    2018-04-02
    赞同
    回复
  • 周玉龙
    周玉龙
    2018-03-31

    楼主  能不能把你主域webgl绘制sharedCanvas核心代码告知一下。我也遇到同样问题了

    2018-03-31
    赞同
    回复
  • 许敬
    许敬
    2018-03-28

    @白开水,我用webGL的方式绘制,没有显示出来,请看我的另一篇帖子,https://developers.weixin.qq.com/blogdetail?action=get_post_info&lang=zh_CN&token=1399075349&docid=000aee26c88d08f67b868fe2056400

    2018-03-28
    赞同
    回复
  • 许敬
    许敬
    2018-03-28

    调用h5的绘图API自己画,shareCanvas是2d模式渲染的,API比较简单

    2018-03-28
    赞同
    回复
  • 且听丶风铃
    且听丶风铃
    2018-03-27

    楼主你是如何画排行榜这个列表的,能用游戏引擎吗?还是一点一点画

    2018-03-27
    赞同
    回复
  • leo
    leo
    2018-03-27

    你好  我这边做开放数据域。数据是获取到了  但是没事时canvas加载完了,异步数据还没有获取到。导致无法绘制。请问是什么原因呢?  楼主能留个联系方式 讨论下吗


    2018-03-27
    赞同
    回复
  • 白开水
    白开水
    2018-03-26

    开放数据域需要保证数据的安全,没有提供向主域发消息通知的能力。

    2018-03-26
    赞同
    回复 1
    • 我就是大强啊
      我就是大强啊
      2018-06-05

      主域中按照如下可以操作 sharedCanvas

         let openDataContext = wx.getOpenDataContext()

          let sharedCanvas = openDataContext.canvas

          sharedCanvas.width = 300

          sharedCanvas.height = 500

          let sharedCanvasContext = sharedCanvas.getContext('2d')

          sharedCanvasContext.fillStyle="#FF0000";

          sharedCanvasContext.fillRect(0,0,300,500);

          canvasCtx.drawImage(sharedCanvas, 40, 60, 300, 500)

      反而在开放数据域确无法操作sharedCanvas

      let sharedCanvas = wx.getSharedCanvas()

      let sharedCanvasContext = sharedCanvas.getContext('2d')

      sharedCanvasContext.fillStyle = 'blue'

        sharedCanvasContext.fillRect(0, 0, 100, 100)


        var grd=sharedCanvasContext.createLinearGradient(0,0,200,0);

        grd.addColorStop(0,"red");

        grd.addColorStop(1,"green");

        // 填充渐变 

        sharedCanvasContext.fillStyle=grd;

        sharedCanvasContext.fillRect(10,10,150,80)


      请问一下我是写的有问题吗





      2018-06-05
      回复
  • 许敬
    许敬
    2018-03-26

    这样作,性能上很浪费的

    2018-03-26
    赞同
    回复
  • 白开水
    白开水
    2018-03-26

    只能由主域不断地去更新

    2018-03-26
    赞同
    回复
  • 许敬
    许敬
    2018-03-26

    开放数据域里的好友数据,从微信后台获取是异步的,数据加载完,在sharedCanvas上绘制排行榜,然后再绘制到主域的上屏Canvas上,然而开放数据域不能向外发消息,那如何通知主域开始绘制排行榜?

    2018-03-26
    赞同
    回复

正在加载...