『壹』 請問一下,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();