20

画像にズームを実装したい。PictureBoxのサイズを変更したくありませんが、画像自体のサイズを変更します。

どうすればよいですか?

4

2 に答える 2

35

1つの解決策は次のとおりです。

  1. 目的のサイズの新しい画像を作成します(たとえば、元の画像サイズの200%または50%)
  2. Graphics.DrawImage(Image、Rectangle);を使用して、元の画像を新しい画像に描画します。、指定されたサイズで指定された位置にある新しい画像に指定された画像を描画します
  3. ソースとして新しい画像を設定しますPictureBox

もう1つの方法は、次のような新しいビットマップインスタンスを簡単に作成することです。

Size newSize = new Size((int)(originalBitmap.Width * zoomFactor), (int)(originalBitmap.Height * zoomFactor));
Bitmap bmp = new Bitmap(originalBitmap, newSize);
于 2012-06-06T14:15:13.503 に答える
1

私はこれを達成するためにウェブブラウザを使用しました。

//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.

少し奇妙な方法ですが、私にとっては本当にうまくいきました。これがお役に立てば幸いです。

于 2019-06-20T20:08:57.750 に答える