小程序canvas画布大小怎么设置啊
发布于 7 年前 作者 jiezou 4921 次浏览 来自 问答

求解怎么设置画布大小  写在内联的大小只能是容器大小,只能显示画布的一部分  想缩小画布该怎么设置呢

1 回复

现在的 canvas 不能像 h5的 canvas 一样把 画布大小 和 显示大小分别设置,且 canvas 不能 `display:none`。

分享下我的处理方法:

把 canvas 包裹在一个 view 中, 然后把这个 view 高度变成 0,`overflow: hidden` 掉, 也可以把它定位出去。总之就是利用类似的方法把 canvas 隐藏。然后在绘制 canvas 结束后把 canvas 导出到 tempfile,用 img src 去加载。这样可以设置一个较大的画布,但展示成想要的尺寸。 缺点是不能实时渲染展示,导出操作比较消耗性能。

另外还有一个坑: context.draw 的 callback 虽然执行了,但在 android 下不能直接导出 tempfile, 可以 setTimeout 下再导出。直接导出将会导致画布的内容不稳定出错。

另外注意画布的内容大小,和内存占用。

回到顶部