最近公司业务开发支付宝小程序,功能涉及生成分享图的功能,开始研究实现方案。

开发过微信小程序的小伙伴应该都知道,在微信中生成分享图最常用的方案是使用第三方库Painter

GitHub官方仓库地址为:https://github.com/Kujiale-Mobile/Painter

但是官方的代码只支持微信小程序,所以需要自己改造下官方的代码。听到改造,大家也不用一下子被难住了,原因是:

市面上其他小程序基本都是“摸着微信过河”,所以api,组件命名等基本都是一致的,只是前缀有所不同,例如wx.开头我们只需要把它替换成my.(支付宝小程序)

这里有份我已经改造好的代码,大家可以直接下载导入使用。但值得注意的是,这份代码整体功能与官方仓库并不同步,如果你发现官方文档声明的功能没有正常运行,最好自己去GitHub拿份最新的代码改造一下。

代码下载地址:https://pan.quark.cn/s/3d7fd9938216

由于使用的是uniapp开发方案,下面的写法教程为uniapp写法

下载完成后,在src目录下新建mycomponents文件夹(uniapp识别支付宝原生组件强制统一存放的地方)

接着在使用到的页面中引入组件:

vue页面中使用:

拿到生成渲染图的地址

保存图片

 1 uni.saveImageToPhotosAlbum({
2 filePath: this.imageUrl,
3 success: function () {
4 uni.showToast({
5 title: "下载成功!",
6 icon: "none",
7 duration: 3000,
8 });
9 }
10 })

题外话

本人在业余时间开发了个ai导航网站,汇总了各种分类AI工具,欢迎点击跳转查看:https://ainav-wiki.org

uniapp支付宝小程序生成分享图方案(最新)的更多相关文章

  1. 微信小程序生成分享图片,保存到本地

    1.页面 <canvas canvas-id="shareCanvas" style="width:600px;height:900px">< ...

  2. uniapp微信小程序分享

    触发代码 如: <button open-type="share">分享</button> 在JS中 分享进入页面传参,和微信小程序路由传参的思路是一样的. ...

  3. uniapp封装小程序雷达图组件实现

    效果图: view <canvas id="radar-canvas" class="radar-canvas" type="2d"& ...

  4. 微信小程序分享支持自定义封面图

    微信小程序又发布更新了,刚好昨天支付宝也发布小程序,不能让它抢了风头的节奏.微信小程序主要更新如下:“小程序分享支持自定义封面图,公众号及小程序客服可发送小程序卡片.同时,我们还开放了获取发票抬头,指 ...

  5. uni-app 微信小程序全局分享

    实际使用中,经常需要小程序分享到好友或者朋友圈,一般而言是一个个页面去设置. 官网分享介绍:https://uniapp.dcloud.io/api/plugins/share?id=onsharea ...

  6. 微信小程序绘制分享图

    微信小程序绘制分享图例子: demo下载地址:https://gitee.com/v-Xie/wxCanvasShar 大致代码会再以下说明 实际开发项目: 基础知识点: 了解canvas基础知识 w ...

  7. uniapp 微信小程序 配置分享朋友和朋友圈

    uniapp 微信小程序 配置分享朋友和朋友圈 首先在小程序中配置微信分享,和微信朋友圈, onShareAppMessage, onShareTimeline 这两个API 和 onLoad 同级目 ...

  8. 钉钉/支付宝小程序和微信小程序的区别及转换方案

    最近接到一个工作任务,是把钉钉小程序转微信小程序... 对,居然还有这种操作,之前只听过微信小程序转支付宝小程序的,钉钉转微信是什么鬼

  9. 支付宝小程序开发——获取位置API没有城市区号的最佳处理方案

    前言: 需要对城市区号进行判断,但是支付宝小程序提供的my.getLocation() API返回的数据中只有6位的城市行政代码,诸如:深圳(440300),并没有区号(0755),那么怎么办呢? 需 ...

  10. 小程序开发过程中常见问题[微信小程序、支付宝小程序]

    目录 一.样式中如何使用background-image呢? 二.使用自适应单位rpx类似于rem,布局尽量使用flex布局 三.万能的{{双大括号,用于在模版中输出变量 四.你想要的基础组件和API ...

随机推荐

  1. Zstd-数据压缩组件

    Zstandard 简称Zstd,是一款快速实时的开源数据压缩程序,由Facebook开发,源码是用C语言编写的.相比业内其他压缩算法(如Gzip.Snappy.Zlib)它的特点是:当需要时,它可以 ...

  2. 11.10javaweb学习

  3. Redis源码历史版本下载地址和Redis的Windows版本服务端/客户端下载地址

    Redis源码历史版本下载地址:http://download.redis.io/releases/ Redis的Windows版本服务端/客户端下载地址:https://github.com/mic ...

  4. 从韩国客机事故看Java异常处理机制:保障程序的“安全着陆”

    当地时间12月29日上午9时,韩国济州航空编号7C2216航班坠毁于韩国务安机场,除救出的两人外,预计事故其余人员全部遇难.据了解,失事客机因起落架故障准备进行机腹着陆,在此过程中发生事故,最终与机场 ...

  5. 【AIGC】Embedding与LLM:token长度限制困局下,长文本LLM应用的暂缓之计

    [详细内容首发于微信公众号(Hobbes View)] 什么是Embedding? Embedding是一种多维向量数组,由一系列数字组成,可以代表任何事物,如文本.音乐.视频等.在这里我们将重点关注 ...

  6. java线程用法和区别

    从操作系统的角度讲,os会维护一个ready queue(就绪的线程队列).并且在某一时刻cpu只为ready queue中位于队列头部的线程服务.但是当前正在被服务的线程可能觉得cpu的服务质量不够 ...

  7. 如何快速的开发一个完整的iOS直播app(创建房间)

    直播(创建房间) 1.进入主播界面,首先创建房间 2.设计房间模型(key,名称),key作为房间的唯一标识,用来找到房间 3.用socket创建房间,导入socket.io框架 4.一般一个客户端一 ...

  8. w3cschool-MyBatis 教程

    参考 https://www.w3cschool.cn/mybatis/mybatis-dyr53b5w.html MyBatis 入门 SqlSessionFactoryBuilder用 SqlSe ...

  9. 所生成项目的处理器架构“MSIL”与 “x86”不匹配

    在 .net 生成时如果修改过某个类库的平台目标,那么通常会出现下面的警告: 之所以产生这个问题是因为类库的"平台目标"不统一,如果选择了 x86, 那么解决方案中所有的项目都应设 ...

  10. AlertWindowManager 弹出提示窗口

    LookAndFeel(界面外观): NativeStyle:本地化界面为真实用系统内置外观 SkinName:本地化界面(NativeStyle:)设置为假可使用皮肤外观 OptionAnimate ...