微信小程序 如何把小程序页面保存至用户相册

思路

  • canvas绘制出页面
  • 将canvas转化成图片,获取到临时路径
  • 用临时路径将图片保存至相册

组件及API

举个栗子

  • wxml
<view class="container">
  <canvas canvas-id='share' style='width:100vw;height:90vh;'></canvas>
  <view class='tips' bindtap='saveImageToPhotosAlbum'>点击保存图片</view>
</view>
  • js
  //绘制
  onReady:function(){
    var context = wx.createCanvasContext('share')
    context.setStrokeStyle("#00ff00")
    context.setLineWidth(5)
    context.rect(0, 0, 200, 200)
    context.stroke()
    context.draw(false, this.getTempFilePath)
  }

  //获取临时路径
  getTempFilePath:function(){
    wx.canvasToTempFilePath({
      canvasId: 'share',
      success: (res) => {
        this.setData({
          shareTempFilePath: res.tempFilePath
        })
      }
    })
  }
  //保存至相册
  saveImageToPhotosAlbum:function(){
    if (!this.data.shareTempFilePath){
      wx.showModal({
        title: '提示',
        content: '图片绘制中,请稍后重试',
        showCancel:false
      })
    }
    wx.saveImageToPhotosAlbum({
      filePath: this.data.shareTempFilePath,
      success:(res)=>{
        console.log(res)
      },
      fail:(err)=>{
        console.log(err)
      }
    })
  }

本人两年纯小程序开发经验 新建了一个交流群 欢迎加入

进群.png

以下是我独立开发的小程序 第一次Pro 欢迎使用 欢迎吐槽

小程序.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 转载链接 注:本文转载知乎上的回答 作者:初雪 链接:https://www.zhihu.com/question...
    pengshuangta阅读 28,849评论 9 295
  • 给提问的开发者的建议:提问之前先查询 文档、通过社区右上角搜索搜索已经存在的问题。 写一个简明扼要的标题,并且...
    极乐叔阅读 13,958评论 0 3
  • 什么是微信小程序 腾讯公司于2016年9月21日开始微信小程序内测,一时间小程序的讨论热度不断。网络上流传一张张小...
    centuryscr阅读 5,678评论 0 3
  • 小萌新瑟瑟发抖,前来报到。 哈哈,刚来到简书,本大吊萌新瑟瑟发抖生怕被大佬们吊打,不过嘛,还是要有点骨气的,所以请...
    无尽天蝎阅读 179评论 0 0
  • 在我17、18岁的时候我觉得世界上我最牛逼,没人比我厉害,过了两年后,当我进入大学,我意识到我只是渺小的我,比我厉...
    没心没肝没心眼阅读 285评论 0 0