微信小程序推出 snapshot 生成海报组件,不用再手动绘制画布了
摘要IT之家 9 月 14 日消息,制作过微信小程序生成海报功能的小伙伴都知道,这一功能一般是通过 canvas 画布绘制与服务端绘制 2 种方式实现,不过都需要手动编写脚本,制作起来也不是很
IT之家 9 月 14 日消息,制作过微信小程序生成海报功能的小伙伴都知道,这一功能一般是通过 canvas 画布绘制与服务端绘制 2 种方式实现,不过都需要手动编写脚本,制作起来也不是很方便。
为了满足小程序高效生成海报的需求,微软宣布在 Skyline 渲染引擎中推出 snapshot 组件,快速解决复杂排版、超长海报等绘制难题。
据介绍,对比现有的 canvas 绘制与服务端绘制的方式,snapshot 组件具有如下优势:
- 轻松应对复杂排版,如圆角、百分比、自定义字体等样式均可轻松调整
- 没有宽高限制,支持超长海报的输出
- 调用方式简单,直接使用 wxml 实现
▲ snapshot 组件生成海报并保存本地,图源“微信开发者”公众号
此外,通过 snapshot 组件完成小程序生成海报并保存本地的完整过程也非常简单:
- 使用 wxml 绘制海报内容
- 使用 snapshot 组件包裹海报的 wxml
- 调用 takeSnapshot 获取图片数据
- 调用 fs.writeFileSync 将海报数据写入本地文件
- 调用 wx.saveImageToPhotosAlbum 将海报保存到本地
也就是说,用户可以像写小程序 UI 那样使用 wxml 来写海报布局,然后直接填充动态数据就可以了,这样易用性就大大提升,感兴趣的IT之家小伙伴可以在项目中尝试一下。