2012-05-21 121 views
1

我有路徑,然後我用Raphael JS繪製。代碼看起來像這樣:如何更改Raphael JS繪製的路徑寬度和高度?

var paper = Raphael($('#draw_here')[0], '32', '32'); 

var star = paper.path("M 22.137,19.625 32,12 20,12 16,0 12,12 0,12 9.875,19.594 6,32 16.016,24.32 26.008,32 z"); 

star.attr({ 
    fill: 'white', 
    stroke: 'black', 
    title: 'This is a STAAAAAAAR!' 
}); 

它的作品,它繪製32×32像素的大明星。 如何改變它的寬度和高度?

我試着這樣做:

var paper = Raphael($('#draw_here')[0], 64, 64); 

var star = paper.path("M 22.137,19.625 32,12 20,12 16,0 12,12 0,12 9.875,19.594 6,32 16.016,24.32 26.008,32 z"); 

star.attr({ 
    fill: 'white', 
    stroke: 'black', 
    title: 'This is a STAAAAAAAR!', 
    width: 64, 
    height: 64 
}); 

......但這一切改變的是「紙元素的」寬度和高度,而不是明星。

我想要做的事情是放置當鼠標光標在上面時星形變得更大的效果。

謝謝你的任何建議!

P.S.我沒有自己寫道,它從Iconic set得到。

回答

7

你也必須調整路徑! 只需在Raphaël Playground上試試。

寬度和高度屬性只是要繪製的元素的大小,但路徑座標仍然相同。

對於一個簡單的調整大小,你也可以使用

star.transform("s2"); 

像以前那樣將其調整到2x

如果不想編輯路徑和規模簡單它,你應該使用transform方法來調整它的大小和translate一定值的完整路徑。

star.transform("t32,32 s2"); 

這例如將由32px從頂部和32px從左側移動對象並如前它的大小調整爲2x

+0

謝謝,這簡直太棒了! ^^ – daGrevis

相關問題