收藏
回答

悬赏一包辣条,通过canvas把一张图片等比例切割成九张。理想很美好现实很骨感?

切割核心代码:

var that = this

for (var i = 0; i < 3; i++) {

for (var j = 0; j < 3; j++) {

console.log(i, j)

wx.canvasToTempFilePath({

x: that.data.canvasWidth / 3 * j,

y: that.data.canvasHeight / 3 * i,

width: that.data.canvasWidth / 3,

height: that.data.canvasHeight / 3,

canvasId: 'myCanvas',

success(res) {

console.log(res.tempFilePath)

wx.saveFile({

tempFilePath: res.tempFilePath,

success(opt) {

console.log(opt.savedFilePath)

that.setData({

yulan: opt.savedFilePath

})

}

})

}

})

}

}



最后一次编辑于  2019-08-01
回答关注问题邀请回答
收藏

2 个回答

  • 夏虫语冰
    夏虫语冰
    2019-08-01

    第一步。清除本机的文件缓存,小程序最大的缓存文件为10M


    第二步。如果上述还不行。

    则需要将 上述的切割换成 队列形式, 利用 promise(队列)来消除执行时间异步导致的问题产生的可能




    2019-08-01
    有用 1
    回复 3
    • 袁述~
      袁述~
      2019-08-01
      能不能把你的promise队列代码我看一下呀
      2019-08-01
      回复
    • 夏虫语冰
      夏虫语冰
      2019-08-02回复袁述~
      已经发了
      2019-08-02
      1
      回复
    • 袁述~
      袁述~
      2019-08-02回复夏虫语冰

      我昨晚琢磨出来了另外一种。谢谢你给的灵感。



      2019-08-02
      回复
  • 袁述~
    袁述~
    2019-08-01

    最终只切割了一张图片,就是i=0,j=0,的时候。第一张。


    2019-08-01
    有用
    回复
登录 后发表内容