[VC2005] 画像を拡大・縮小する方法
◆概要
この資料は、Microsoft(R) Visual C# 2005で 画像を拡大・縮小する方法について記述しています。
◆Contents
1.画像を拡大する
2.画像を縮小する
3.ScaleTransformを使う方法
private void button1_Click(object sender, EventArgs e) { pictureBox1.SizeMode = PictureBoxSizeMode.AutoSize; // 幅2倍、高さ2倍のイメージを作成する Bitmap bmp = new Bitmap(pictureBox1.Image, (int)(pictureBox1.Image.Width * 2), (int)(pictureBox1.Image.Height * 2)); pictureBox1.Image = bmp; } |
▼ページトップへ
◆2.画像を縮小する
上記の例の2のところを0.5にするとオリジナルの画像を半分の大きさで表示します。
private void button1_Click(object sender, EventArgs e) { pictureBox1.SizeMode = PictureBoxSizeMode.AutoSize; // 幅0.5倍、高さ0.5倍のイメージを作成する Bitmap bmp = new Bitmap(pictureBox1.Image, (int)(pictureBox1.Image.Width * 0.5), (int)(pictureBox1.Image.Height * 0.5)); pictureBox1.Image = bmp; } |
▼ページトップへ
◆3.ScaleTransformメソッドを使う方法
ScaleTransformメソッドを使うと、ピクチャボックスの画像を拡大・縮小できます。
次の例は画像を半分の大きさにします。なお、この例を使用する前にピクチャボックス(pictureBox2)を追加してください。
private void button2_Click(object sender, EventArgs e)
{
Graphics g;
pictureBox2.Image
= new Bitmap(pictureBox2.Width, pictureBox2.Height);
g = Graphics.FromImage(pictureBox2.Image);
g.Clear(this.BackColor);
//変換マトリックスをセット
g.ResetTransform();
//元の画像を表示
g.ScaleTransform(0.5F, 0.5F);
//画像を描画
g.DrawImage(pictureBox1.Image, 0, 0);
pictureBox2.Refresh();
}
▼ページトップへ