在 vb.net 如何将一个图像平埔输出呢?

方法一:
using (Image image = Image.FromFile(@"e:\pic.jpg")) 

    
using (TextureBrush brush = new TextureBrush(image)) 
    { 
        brush.TranslateTransform(x, y); 
        g.FillRectangle(brush, x, y, image.Width, image.Height);  
        g.Restore(state);  
    } 
方法二:
          Dim sx As Single = IIf((pImg.HorizontalResolution > 0.0), (g.DpiX / pImg.HorizontalResolution), 1)
          
Dim sy As Single = IIf((pImg.VerticalResolution > 0.0), (g.DpiY / pImg.VerticalResolution), 1)
             
Using brush As TextureBrush = New TextureBrush(pImg, System.Drawing.Drawing2D.WrapMode.Tile)
                brush.TranslateTransform(
CSng(prtDest.X), CSng(prtDest.Y))
                brush.ScaleTransform(sx, sy)
                g.FillRectangle(brush, prtDest)
              
End Using

TextureBrush是支持Matrix变换的,所以使用TranslateTransform就可以影响其Origin位置。
posted @ 2008-06-14 10:51  追风  阅读(902)  评论(0编辑  收藏  举报