2015-11-13 128 views
1

我想知道它是否可能在C#中按比例調整圖像的大小。c#調整圖像的百分比值

例如,我有我想要創建縮略圖的圖像,我想調整大小爲25%,是否可以將百分比並應用到特定方法中?

由於

回答

1

我用這個方法在應用程序中我提出來調整圖像。它使用'System.Drawing.2D'

public static Bitmap ResizeImage(Image image, int width, int height) 
    { 
     var destRect = new Rectangle(0, 0, width, height); 
     var destImage = new Bitmap(width, height); 

     destImage.SetResolution(image.HorizontalResolution, image.VerticalResolution); 

     using (var graphics = Graphics.FromImage(destImage)) 
     { 
      graphics.CompositingMode = CompositingMode.SourceCopy; 
      graphics.CompositingQuality = CompositingQuality.HighQuality; 
      graphics.InterpolationMode = InterpolationMode.HighQualityBicubic; 
      graphics.SmoothingMode = SmoothingMode.HighQuality; 
      graphics.PixelOffsetMode = PixelOffsetMode.HighQuality; 

      using (var wrapMode = new ImageAttributes()) 
      { 
       wrapMode.SetWrapMode(WrapMode.TileFlipXY); 
       graphics.DrawImage(image, destRect, 0, 0, image.Width, image.Height, GraphicsUnit.Pixel, wrapMode); 
      } 
     } 

     return destImage; 
    } 
+0

thx。如何設置百分比,例如,如果我想將圖像縮小到25%的大小? – Laziale

+0

要麼重寫它以獲取百分比,要麼像這樣調用相對寬度和高度'ResizeImage(img,img.Width/4,img.Height/4);' –