如何在C#中放大和缩小图像?

时间:2012-06-06 14:11:29

标签: c# image resize picturebox

我想为图像实现缩放。我不想调整PictureBox的大小,而是调整图像本身。

我该怎么做?

2 个答案:

答案 0 :(得分:28)

一个解决方案是:

  1. 创建所需尺寸的新图像(例如原始图像尺寸的200%或50%)
  2. 使用Graphics.DrawImage(Image, Rectangle);将原始图像绘制到新图像,该图像将给定图像绘制到给定大小的给定位置的新图像
  3. 将新图片设为PictureBox
  4. 的来源

    另一种方法是简单地创建一个新的位图实例:

    Size newSize = new Size((int)(originalBitmap.Width * zoomFactor), (int)(originalBitmap.Height * zoomFactor));
    Bitmap bmp = new Bitmap(originalBitmap, newSize);
    

答案 1 :(得分:0)

我使用网络浏览器来实现这一目标。

//loads the image
myWebBrowser.Navigate(C:\myimage.png);

从那里我使用SendKeys进行放大和缩小

myWebBrowser.Select(); //Selects browser.
SendKeys.Send("^{+}"); //Sends the control + key combo, causing the browser to zoom in. Replace the "+" with a "-" to zoom out.

这有点奇怪,但是对我来说确实很好。希望对您有所帮助!