『壹』 请问一下,js如何获取canvas标签中自己画的图形的单击事件
添加canvas的onclick事件,根据click event的位置以及canvas、图形的位置判断是否点击在图形上,通过这个方式来模拟。。。
『贰』 JS中canvas画布绘制中如何实现缩放,位移,旋转
cxt.scale(2,2);
缩放的是整个画布,缩放后,继续绘制的图形会被放大或缩小。
ctx.translate(x,y) 方法重新映射画布上的 (0,0) 位置
x: 添加到水平坐标(x)上的值
y: 添加到垂直坐标(y)上的值
发生位移后,相当于把画布的0,0坐标 更换到新的x,y的位置,所有绘制的新元素都被影响。
位移画布一般配合缩放和旋转等。
context.rotate(angle); 方法旋转当前的绘图
注意参数是弧度(PI)
如需将角度转换为弧度,请使用 degrees*Math.PI/180 公式进行计算。
『叁』 js<canvas>标签绘制不同粗细的线条
请在绘制每条线条前,用beginPath()重置路径,这样每条线条的样式就可以单独设置了:
varcv=document.getElementById('canvas');
varg=cv.getContext('2d');
//绘制线条1
g.beginPath();//看这行
g.lineWidth=5;
g.moveTo(x1,y1);
g.lineTo(x2,y2);
g.stroke();
//绘制线条2
g.beginPath();//还有这行
g.lineWidth=10;
g.moveTo(x3,y3);
g.lineTo(x4,y5);
g.stroke();