Closed fenriliuguang closed 1 month ago
使用外部 canvas 的话,一般需要开发者自己管理 canvas 的 style,这个例子中因为没有指定 canvas style 的大小,浏览器默认会根据 canvas 的画布 width 和 height 标签来设置 style size, 所以 updateSize 后会改变 context size 从而改变 style size, 又触发resize 这样反复循环...
如果是想让 canvas 占满父级 container 应该指定 canvas style width 和 height 100% ,其实本质是对 canvas style width/height 和 attribute width/height 的理解问题
感谢指出我的理解问题。设置了 canvas 的 style 宽高解决了这一现象。能否同步一下官方文档: 手动创建-canvas?因为按照文档的最小示例仍然会触发上述问题。
感谢指出我的理解问题。设置了 canvas 的 style 宽高解决了这一现象。能否同步一下官方文档: 手动创建-canvas?因为按照文档的最小示例仍然会触发上述问题。
感谢提醒,稍后会对文档进行补充
这个bug 似乎已经修改了
Bug描述
在如下代码块中不配置
devicePixelRatio
时默认取window.devicePixelRatio
,当其值大于 1 (可能是1.2几)时,canvas 会不断 resize 宽高,直到达到 ~ 2 ^ 32;小于 1 时则最终为 0;Bug复现流程
通过以下步骤产生bug:
替换 HelloWorld.vue 文件为如下代码
期待的结果
正常初始化一个 宽 700 高 500 的 画布元素。
现象
bug 原因猜测
可能是如下代码块出现问题
测试引擎版本:
本地运行出错的Orillusion引擎版本: 0.7.2
本机系统 (请填写完整):
本机配置