新功能
下列各節說明 Windows GDI+ 中的數項新功能。
漸層筆刷
GDI+ 會藉由提供線性漸層和路徑漸層筆刷來填滿圖形、路徑和區域,在 Windows 圖形裝置介面上展開 (GDI) 。 漸層筆刷也可以用來繪製線條、曲線和路徑。 當您使用線性漸層筆刷填滿圖形時,色彩會在您跨圖形移動時逐漸變更。 例如,假設您在圖形的左邊緣指定藍色,並在右邊緣指定綠色來建立水準漸層筆刷。 當您以水準漸層筆刷填滿該圖形時,當您從左邊緣移到右邊緣時,它會逐漸從藍色變更為綠色。 同樣地,當您從上到下移動時,填滿垂直漸層筆刷的圖形將會變更色彩。 下圖顯示以水準漸層筆刷填滿的橢圓形,以及填入對角線漸層筆刷的區域。
當您使用路徑漸層筆刷填滿圖形時,有各種選項可用來指定當您從圖形的某個部分移到另一個部分時,色彩的變更方式。 其中一個選項是有中心色彩和界限色彩,因此當您從圖形中間移至外部邊緣時,圖元會逐漸從一種色彩變更為另一種色彩。 下圖顯示從一對 Bézier 曲線) 填滿路徑漸層筆刷的路徑 (。
基本曲線
GDI+ 支援 GDI 中不支援的基數曲線。 基數曲線是聯結以形成較大麯線的個別曲線序列。 曲線是由點陣列所指定,並通過該陣列中的每個點。 基數曲線會順暢地傳遞 (陣列中每個點) 沒有尖角,因此比連接直線所建立的路徑更精簡。 下圖顯示兩個路徑,一個是連接直線所建立,另一個是建立為基數曲線。
獨立路徑物件
在 GDI 中,路徑屬於裝置內容,並會在繪製路徑時終結。 使用 GDI+,繪圖是由Graphics物件執行,而且您可以建立及維護數個與 Graphics物件分開的GraphicsPath物件。 繪圖動作不會終結 GraphicsPath 物件,因此您可以使用相同的 GraphicsPath 物件來繪製路徑數次。
轉換和矩陣物件
GDI+ 提供 Matrix 物件,這是一種功能強大的工具,可讓轉換 (旋轉、翻譯等) 簡單且有彈性。 矩陣物件會與已轉換的物件搭配運作。 例如, GraphicsPath 物件具有 GraphicsPath::Transform 方法,可接收 Matrix 物件的位址做為引數。 單一 3×3 矩陣可以儲存一個轉換或一連串轉換。 下圖顯示兩個轉換序列前後的路徑, (第一個刻度,然後旋轉) 。
可調整的區域
GDI+ 在 GDI 上大幅擴充,並支援區域。 在 GDI 中,區域會儲存在裝置座標中,唯一可以套用至區域的轉換是翻譯。 GDI+ 會將區域儲存在全局座標中,並允許區域進行任何轉換 (調整,例如可儲存在轉換矩陣中的) 。 下圖顯示三個轉換序列前後的區域:縮放、旋轉和轉譯。
Alpha 混合
請注意,在上圖中,您可以看到未轉換的區域 (透過轉換的區域填滿紅色) , (填滿影線筆刷) 。 這是由 Alpha 混合所提供,GDI+ 支援。 使用 Alpha 混合,您可以指定填滿色彩的透明度。 透明色彩會與背景色彩混合- 您製作填滿色彩越透明,背景顯示越長。 下圖顯示四個橢圓形,這些省略號會以不同透明度層級的相同色彩 (紅色) 填滿。
支援多個影像格式
GDI+ 提供 Image、 Bitmap和 Metafile 類別,可讓您載入、儲存及操作各種格式的影像。 下列為支援的格式:
- BMP
- 圖形交換格式 (GIF)
- JPEG
- Exif
- PNG
- TIFF
- 圖示
- WMF
- EMF