Shape對象與VML坐標(biāo)系
更新時間:2006年12月24日 00:00:00 作者:
Shape是VML最基本的對象,利用它可以畫出所有你想要的圖形。在VML中,使用的坐標(biāo)并不是Document的坐標(biāo),它有自己的坐標(biāo)系,這樣一來,動態(tài)改變它的坐標(biāo),就可以實(shí)現(xiàn)放大、縮小、旋轉(zhuǎn)等功能了。shape的 CoordSize 屬性就是用來定義坐標(biāo)的,它有兩個參數(shù),<v:shape CoordSize="2800,2800" />, 這里的2800,2800 是橫縱坐標(biāo)被分成了2800個點(diǎn),并不是HTML里面默認(rèn)像素。如果沒有設(shè)置圓點(diǎn),VML默認(rèn)是 0,0 (左上角),當(dāng)然你也可以使用 CoordOrig 屬性設(shè)置VML的圓點(diǎn)坐標(biāo)。
<v:shape CoordOrig="-1400,-1400" CoordSize="2800,2800" style="width:500;height:500" />
注意:定義的坐標(biāo)只是相對的,真正顯示的圖形大小還需要 style="width:500;height:500" 來定義!
上面的定義后,你可用的坐標(biāo)是 x(-1400到1400) y(-1400到1400) ,這樣的坐標(biāo)就像數(shù)學(xué)里面的坐標(biāo)了,把畫版分成了四個塊。
在解決實(shí)際問題的時候,我發(fā)現(xiàn),IE會自動把可見的VML圖象放在相對的(0,0)位置,意思是說,上面兩張圖如果沒有增加兩個輔助的坐標(biāo),在IE上顯示出來是并列的兩個正方形。
shape中最主要的屬性是Path,它是個功能強(qiáng)大的畫筆,語法很簡單,由幾個字母組成,下面詳細(xì)講述:
m x,y:MoveTo把畫筆移動到 (x,y);
l x,y:LineTo從當(dāng)前點(diǎn)到(x,y)畫一條線;可以給連續(xù)的幾個點(diǎn),VML會連續(xù)畫出來直到遇到 x 命令。
x:Close結(jié)束一條線;
e:End結(jié)束畫圖
shape的其他常用屬性:
FillColor:填充顏色,使用HTML中規(guī)定的顏色;例如:fillcolor=red
Filled:是否要填充圖形,如果圖形不是封閉的,也會自動封閉圖形進(jìn)行填充。當(dāng)Filled="true"(默認(rèn)),fillcolor才有效果;
StrokeColor:線的顏色;
StrokeWeight:線的寬度;
Title:當(dāng)鼠標(biāo)移動到該圖形上的時候,顯示的文字,和HTML里面的alt、tilte一樣;
Type:指定該圖形屬于那個ShapeType,ShapeType可以為VML制定模版,將在以后加以描述;
前面的這些屬性,F(xiàn)illColor、Filled可以在<v:Fill />中使用,StrokeColor、StrokeWeight可以在<v:Stroke />中使用。也可以在 Shape 或者 繼承Shape的對象中使用它。
在下面幾節(jié),將詳細(xì)介紹 Shape 延伸出來的一些具體對象,諸如 Rect、RoundRect、Oval、Line等對象。
<v:shape CoordOrig="-1400,-1400" CoordSize="2800,2800" style="width:500;height:500" />
注意:定義的坐標(biāo)只是相對的,真正顯示的圖形大小還需要 style="width:500;height:500" 來定義!
上面的定義后,你可用的坐標(biāo)是 x(-1400到1400) y(-1400到1400) ,這樣的坐標(biāo)就像數(shù)學(xué)里面的坐標(biāo)了,把畫版分成了四個塊。
在解決實(shí)際問題的時候,我發(fā)現(xiàn),IE會自動把可見的VML圖象放在相對的(0,0)位置,意思是說,上面兩張圖如果沒有增加兩個輔助的坐標(biāo),在IE上顯示出來是并列的兩個正方形。
shape中最主要的屬性是Path,它是個功能強(qiáng)大的畫筆,語法很簡單,由幾個字母組成,下面詳細(xì)講述:
m x,y:MoveTo把畫筆移動到 (x,y);
l x,y:LineTo從當(dāng)前點(diǎn)到(x,y)畫一條線;可以給連續(xù)的幾個點(diǎn),VML會連續(xù)畫出來直到遇到 x 命令。
x:Close結(jié)束一條線;
e:End結(jié)束畫圖
shape的其他常用屬性:
FillColor:填充顏色,使用HTML中規(guī)定的顏色;例如:fillcolor=red
Filled:是否要填充圖形,如果圖形不是封閉的,也會自動封閉圖形進(jìn)行填充。當(dāng)Filled="true"(默認(rèn)),fillcolor才有效果;
StrokeColor:線的顏色;
StrokeWeight:線的寬度;
Title:當(dāng)鼠標(biāo)移動到該圖形上的時候,顯示的文字,和HTML里面的alt、tilte一樣;
Type:指定該圖形屬于那個ShapeType,ShapeType可以為VML制定模版,將在以后加以描述;
前面的這些屬性,F(xiàn)illColor、Filled可以在<v:Fill />中使用,StrokeColor、StrokeWeight可以在<v:Stroke />中使用。也可以在 Shape 或者 繼承Shape的對象中使用它。
在下面幾節(jié),將詳細(xì)介紹 Shape 延伸出來的一些具體對象,諸如 Rect、RoundRect、Oval、Line等對象。