TextureBrush::TextureBrush (Image*,WrapMode,constRect&) 方法 (gdiplusbrush.h)

根據影像、包裝模式和定義矩形,建立 TextureBrush 物件。

語法

void TextureBrush(
  [in]      Image        *image,
  [in]      WrapMode     wrapMode,
  [in, ref] const Rect & dstRect
);

參數

[in] image

類型: 影像*

Image 物件的指標,其中包含要使用的影像位圖。

[in] wrapMode

類型: WrapMode

WrapMode 列舉的 元素,指定使用這個紋理筆刷繪製影像時,影像的重複複本如何用來並排顯示區域。

[in, ref] dstRect

類型: const Rect

矩形的參考,此矩形定義這個紋理筆刷的大小,以及這個紋理筆刷所要使用的影像部分。 如果 Image 對像是從元檔建立的,筆刷會使用整個影像,縮放以符合筆刷的大小。

傳回值

備註

紋理筆刷的寬度和高度是由 dstRect 矩形的寬度和高度所定義。 紋理筆刷一律會以 (0、0) 為方向。 矩形的左上方點、寬度和高度會指定紋理筆刷所要使用的影像部分的起點、寬度和高度。

此建構函式如何使用具有非metafile 影像的 dstRect 矩形

如果 dstRect 矩形的維度小於筆刷所根據影像的維度,則會裁剪筆刷的影像,這是影像的一部分。 如果 dstRect 矩形的維度等於影像的維度,筆刷的影像會與影像相同。 dstRect 矩形不得包含影像維度以外的區域。 這樣做會產生無法預期的行為,或產生運行時錯誤。 例如,假設您有 256 個×256 像素的影像,並且根據此影像建立 TextureBrush 物件,並傳遞為 dstRect 參數。 筆刷會使用影像的左下半部。 這個部分的左下角也是影像的左下角。 現在假設您根據相同的影像建立另一個 TextureBrush 物件,並傳遞為 dstRect 參數。 請注意,此矩形的上層座標位於 157,而不是 156。 此矩形會將一個單位延伸到影像的高度之外,而且很可能會產生存取違規。

此建構函式如何搭配元檔影像使用 dstRect 矩形

如果 dstRect 矩形的維度與影像的維度不同,筆刷的影像會視需要相應縮小或更大以符合矩形。 例如,假設您的元檔影像為 256 ×256 像素,而且您建立 TextureBrush 物件,並傳遞為 dstRect 參數。 筆刷的影像會包含所有的元檔影像,但會縮放以符合筆刷:它會垂直垂直並水平縮放。 如果矩形的維度等於影像的維度,筆刷的影像會與影像相同。

此建構函式如何使用包裝模式

超出筆刷界限的區域會以筆刷的重複複本並排顯示。 紋理筆刷可能會以特定方向翻轉替代磚,如包裝模式所指定。 翻轉的效果是反轉筆刷的影像。

規格需求

   
最低支援的用戶端 Windows XP、Windows 2000 Professional [僅限桌面應用程式]
最低支援的伺服器 Windows 2000 Server [僅限桌面應用程式]
目標平台 Windows
標頭 gdiplusbrush.h (包含 Gdiplus.h)
程式庫 Gdiplus.lib
Dll Gdiplus.dll

另請參閱

筆刷和填滿的圖形

映像

Rect

TextureBrush

TextureBrush::GetWrapMode

TextureBrush::SetWrapMode

使用筆刷填滿形狀

WrapMode