轻源码

  • QingYuanMa.com
  • 全球最大的互联网技术和资源下载平台
搜索
一起源码网 门户 初级进阶 查看主题

安静的小智:我的canvas使用总结

发布者: jiduqishi | 发布时间: 2017-12-30 20:54| 查看数: 2192| 评论数: 1|帖子模式

上次在这里提问如何将view及里面的内容保存成一张图片,看到大家的意见是使用画布,在看了官方文档后,发现的确可以实现.非常感谢.
现在的画布功能并不是很多,有许多不足之处.
这里只是把我在做的过程中遇到的问题做个总结.

1. 画布里的api设置的x,y,width,height尺寸都是px,
所以我用prop设置了一个比例,屏幕的宽度/20

2. iphone6的750rpx=375px,所以当画布设置宽为375px,会充满整个屏幕,但是保存下来的图片再显示会很模糊(分辨率太低).
当画布设置宽度大于375px(比如750px),保存下来的图片会清晰很多,但画布超过整个屏幕,会左右滑动.高度也是如此
我的解决办法:我的项目中,画布只是个过程,最终就是生成图片,所以我设置了画布宽度为750px,设置了hidden,直接在onReady方法中生成图片,在image组件中显示

3. 画布中,同一个位置,后面画的会覆盖前面画的,使用.clearRect(x,y,w,h)可以清除画布中的以(x,y)起始,w宽,h高的矩形区域,之后可以继续在上面画

4. .drawImage(src,x,y,w,h)不会在模拟器中显示图片,只能在真机中显示,非常坑的bug...

5. 保存画布,获取画布的路径

6. 保存到相册
通过wx.previewImage预览图片,长按后就可以'发送给朋友','收藏','保存图片'.

7. .fillText(要显示的字符串,x,y)这里的x,y不是要显示的字符串的左上角,是左下角

写的粗糙,请多包涵.
再次感谢在微信小程序联盟中助人的各位大神

最新评论

fdsf 发表于 2022-5-7 09:23
帮人写代码的平台

轻源码让程序更轻更快

QingYuanMa.com

工作时间 周一至周六 8:00-17:30

侵权处理

客服QQ点击咨询

关注抖音号

定期抽VIP

Copyright © 2016-2021 https://www.171739.xyz/ 滇ICP备13200218号

快速回复 返回顶部 返回列表