プロが教える店舗&オフィスのセキュリティ対策術

下記のようなコードで、画像の拡大・縮小を行っています。
ただ画像の縮小時、PictureBox内の余分な部分について、(1)縮小前の
画像が残像のように表示されています。
また通常、画像の拡大・縮小前の画像では画像サイズがPictureBoxよりも大きいサイズの
場合、スクロールバーを表示するようにしています。
(2)でも、画像拡大時、スクロールバーが出るには出ているのですが、画像全てを
確認できません。
(1)、(2)の問題について、解決方法をご存知の方、お願いです、、、教えてください。。。
かなり、困ってます。。。。


Bitmap img = new Bitmap(pictureBox1.Image.Tag.ToString());
//PictureBox1のGraphicsオブジェクトの作成
Graphics g = pictureBox1.CreateGraphics();

//拡大・もしくは縮小
RectangleF rect =
new RectangleF(0, 0, zoom * img.Width, zoom * img.Height);
g.DrawImage(img, rect);

//BitmapとGraphicsオブジェクトを破棄
img.Dispose();
g.Dispose();

A 回答 (1件)

> (1)縮小前の画像が残像のように表示されています。


DrawImage しているのだからキャンバスに上から絵を
描いているのと同じ。書かない部分にはもとの画像が
残ります。
当たり前のことが起こっているだけなので、どうしたい
のか書いてくれないと分からないのですが、背景色ででも
塗りつぶせばいいのでは?

> (2)でも、画像拡大時、スクロールバーが出るには出ている
> のですが、画像全てを確認できません。
コードが書かれていないから分かりません。確認て何でしょう?
スクロール自体が出来ない?それはコードが悪いのでは?
画像が表示されない?スクロールした部分の画像を自分で描いて
いないなら、描かれていなくて当然なのでは?描いて下さい。

何を答えろと言ってるのでしょうか??
    • good
    • 2

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!