我正在使用draw2dtouch
6.1.66 version
(最新版本)。最初,画布的宽度和高度分别为1000px
和800px
。单击按钮时,我将画布的宽度和高度分别更改为2170px
和902px
。
现在,我无法将矩形图形拖动到1000px
宽度方向之外。它卡在1000px
原来的宽度上。
注意:我检查我的html,canvas div和svg都显示width:2170px
和height:902px
。
<div _ngcontent-awi-17="" draw2d-canvas="" id="canvas" style="height: 902px; cursor: default; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); width: 2170px;">
<svg height="902" version="1.1" width="2170" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" style="overflow: hidden; position: absolute; left: -0.828125px;">
这是我的代码:
$("#canvas").css("height",902);
$("#canvas").css("width", 2170);
canvas.setDimension(new draw2d.geo.Rectangle(0, 0, 2170, 902));
最佳答案
使用css设置画布的width
和height
会产生类似缩放的效果,因为基础imageData
数组未更新为新尺寸。
因此,如果需要缩放画布,请使用画布的属性,如下所示:
$('#canvas').attr({width: <width>, height: <height>});
请记住,更改这些值将清除画布,并且您需要重新绘制所有内容。