共用方式為


HOW TO:使用影像並排顯示圖案

就好像您可以將瓷磚並排來拼接地板,您也可以將矩形影像並排來填滿 (並排顯示) 圖案。 若要並排顯示圖案的內部,請使用材質筆刷。 當您建構 TextureBrush 物件時,傳遞至建構函式的引數之一為 Image 物件。 當您使用材質筆刷繪製圖案的內部時,便會使用這個影像的重複複本來填滿圖案。

TextureBrush 物件的換行模式屬性會決定影像在矩形格線中重複的方向。 您可以使格線中的所有拼接都朝相同的方向,也可以將影像從一個格線位置翻轉至另一個位置。 翻轉方向可為水平、垂直或兩者。 下列範例會說明使用不同翻轉類型的拼接。

若要並排顯示影像

  • 這個範例使用下列的 75×75 影像來並排顯示 200×200 的矩形。

並排顯示 1

  • 下圖顯示的是如何使用影像拼接成矩形。 請注意,所有拼接的方向都相同,沒有進行任何翻轉。

並排顯示 2

        Dim image As New Bitmap("HouseAndTree.gif")
        Dim tBrush As New TextureBrush(image)
        Dim blackPen As New Pen(Color.Black)
        e.Graphics.FillRectangle(tBrush, New Rectangle(0, 0, 200, 200))
        e.Graphics.DrawRectangle(blackPen, New Rectangle(0, 0, 200, 200))

Image image = new Bitmap("HouseAndTree.gif");
TextureBrush tBrush = new TextureBrush(image);
Pen blackPen = new Pen(Color.Black);
e.Graphics.FillRectangle(tBrush, new Rectangle(0, 0, 200, 200));
e.Graphics.DrawRectangle(blackPen, new Rectangle(0, 0, 200, 200));

若要在並排顯示時水平地翻轉影像

  • 這個範例使用相同的 75×75 影像來填滿 200×200 的矩形。 換行模式已設定為水平翻轉影像。 下圖顯示的是如何使用影像拼接成矩形。 請注意,當您從一個拼接移到同一列的下一個拼接時,即會水平翻轉影像。

並排顯示 3

        Dim image As New Bitmap("HouseAndTree.gif")
        Dim tBrush As New TextureBrush(image)
        Dim blackPen As New Pen(Color.Black)
        tBrush.WrapMode = WrapMode.TileFlipX
        e.Graphics.FillRectangle(tBrush, New Rectangle(0, 0, 200, 200))
        e.Graphics.DrawRectangle(blackPen, New Rectangle(0, 0, 200, 200))

Image image = new Bitmap("HouseAndTree.gif");
TextureBrush tBrush = new TextureBrush(image);
Pen blackPen = new Pen(Color.Black);
tBrush.WrapMode = WrapMode.TileFlipX;
e.Graphics.FillRectangle(tBrush, new Rectangle(0, 0, 200, 200));
e.Graphics.DrawRectangle(blackPen, new Rectangle(0, 0, 200, 200));

若要在並排顯示時垂直地翻轉影像

  • 這個範例使用相同的 75×75 影像來填滿 200×200 的矩形。 換行模式已設定為垂直翻轉影像。

            Dim image As New Bitmap("HouseAndTree.gif")
            Dim tBrush As New TextureBrush(image)
            Dim blackPen As New Pen(Color.Black)
            tBrush.WrapMode = WrapMode.TileFlipY
            e.Graphics.FillRectangle(tBrush, New Rectangle(0, 0, 200, 200))
            e.Graphics.DrawRectangle(blackPen, New Rectangle(0, 0, 200, 200))
    
    
    Image image = new Bitmap("HouseAndTree.gif");
    TextureBrush tBrush = new TextureBrush(image);
    Pen blackPen = new Pen(Color.Black);
    tBrush.WrapMode = WrapMode.TileFlipY;
    e.Graphics.FillRectangle(tBrush, new Rectangle(0, 0, 200, 200));
    e.Graphics.DrawRectangle(blackPen, new Rectangle(0, 0, 200, 200));
    

若要在並排顯示時水平和垂直地翻轉影像

  • 這個範例使用相同的 75×75 影像來並排顯示 200×200 的矩形。 換行模式已設定為同時水平和垂翻轉影像。 下圖顯示的是如何使用影像拼接成矩形。 請注意,當您從一個拼接移到同一列的下一個拼接時,即會水平翻轉影像;當您從一個拼接移到同一行的下一個拼接時,則會垂直翻轉影像。

並排顯示 5

        Dim image As New Bitmap("HouseAndTree.gif")
        Dim tBrush As New TextureBrush(image)
        Dim blackPen As New Pen(Color.Black)
        tBrush.WrapMode = WrapMode.TileFlipXY
        e.Graphics.FillRectangle(tBrush, New Rectangle(0, 0, 200, 200))
        e.Graphics.DrawRectangle(blackPen, New Rectangle(0, 0, 200, 200))

Image image = new Bitmap("HouseAndTree.gif");
TextureBrush tBrush = new TextureBrush(image);
Pen blackPen = new Pen(Color.Black);
tBrush.WrapMode = WrapMode.TileFlipXY;
e.Graphics.FillRectangle(tBrush, new Rectangle(0, 0, 200, 200));
e.Graphics.DrawRectangle(blackPen, new Rectangle(0, 0, 200, 200));

請參閱

其他資源

使用筆刷填滿形狀