向量圖形的概觀
Windows GDI+ 會在座標系統上繪製線條、矩形和其他圖形。 您可以選擇各種座標系統,但預設座標系統具有左上角的原點,其中 X 軸指向右邊,而 Y 軸則指向向下。 預設座標系統中的測量單位是圖元。
電腦監視器會在稱為圖片元素或圖元的矩形點陣列上建立其顯示。 畫面上出現的圖元數目會從一個監視器到下一個監視器而不同,而個別監視器上出現的圖元數目通常可由使用者設定為某個範圍。
當您使用 GDI+ 繪製線條、矩形或曲線時,您會提供要繪製之專案的特定重要資訊。 例如,您可以藉由提供兩個點來指定線條,而您可以藉由提供點、高度和寬度來指定矩形。 GDI+ 可與顯示驅動程式軟體搭配運作,以判斷必須開啟哪些圖元才能顯示線條、矩形或曲線。 下圖顯示開啟的圖元,以顯示從點 (4、2) 到點 (12、8) 的線條。
經過一段時間後,某些基本建置組塊已證明最適合用來建立二維圖片。 GDI+支援這些建置組塊,會在下列清單中提供:
- 線條
- 矩形
- 橢圓形
- 弧
- 多邊形
- 基數曲線
- Bézier 曲線
GDI+ 中的 Graphics 類別提供下列方法來繪製上一個清單中的專案: DrawLine、 DrawRectangle、 DrawEllipse、 DrawPolygon、 DrawArc、 DrawCurve (的基數曲線) 和 DrawBezier。 每個方法都會多載;也就是說,每個方法都有數個不同參數清單的變化。 例如,DrawLine 方法的一個變化會接收 Pen 物件的位址和四個整數,而 DrawLine 方法的另一個變化則接收 Pen 物件的位址和兩個 Point 物件參考。
繪製線條、矩形和 Bézier 曲線的方法具有複數隨附方法,可以在單一呼叫中繪製數個專案: DrawLines、 DrawRectangles和 DrawBeziers。 此外, DrawCurve 方法有一個隨附方法 DrawClosedCurve,藉由將曲線的結束點連接到起點來關閉曲線。
Graphics類別的所有繪圖方法都會與Pen物件搭配運作。 因此,若要繪製任何專案,您必須建立至少兩個物件: Graphics 物件和 Pen 物件。 Pen物件會儲存要繪製之專案的屬性,例如線條寬度和色彩。 Pen物件的位址會當做其中一個引數傳遞至繪圖方法。 例如, DrawRectangle 方法的其中一個變化會接收 Pen 物件的位址和四個整數,如下列程式碼所示,它會繪製寬度為 100 的矩形、高度為 50 且左上角 (20、10) 。
myGraphics.DrawRectangle(&myPen, 20, 10, 100, 50);