![]() |
1
27
画布有两种调整大小的行为:
这是一个演示“调整大小”两种类型的页面: http://xavi.co/static/so-resizable-canvas.html
如果要第一种调整大小(拉伸内容),请将画布放入容器中。
第二种类型的调整大小(静态内容)是一个两步过程。首先你必须调整
当前,当用户停止调整小部件的大小时,上面的代码会重新绘制画布的内容。可以重新绘制画布 resize 但是,调整大小的事件经常发生,并且重新绘制是昂贵的操作——小心地接近。 |
![]() |
2
1
在画布坐标系统上有一点奇怪的地方,关于使用这个: 拉伸画布{ 宽度:100%; 身高:100%; } < /代码>(以上示例) 必须使用这些CSS规则,因为不能在画布的宽度/高度属性中指定%。但是当你试图用这些规则在上面绘制对象时,你会发现你会得到意想不到的结果——绘制的对象看起来被压扁了。这是上面的CSS,带有画布边框… CSS*/ α拉伸 宽度:200 px; 高度:100px; } #拉伸画布{ 边框:1倍纯红; 宽度:100%; 身高:100%; } < /代码>画布的大小是正确的,边框规则是正确实现的。在其他地方的代码中添加的蓝色矩形,应该用20px的填充填充填充画布,但这并没有发生:
要解决此问题,请确保还为canvas元素指定宽度和高度(在HTML或带setattribute的javascript中):。
|
![]() |
3
0
为什么不在canvas元素之前应用一个div,并调整该元素的大小,当它停止时,在canvas中应用宽度和高度,然后重新绘制canvas。 |