[C#]画像の表示 | Assertion Failed!

[C#]画像の表示

ディスクから読み込んだ画像を表示する


[環境]

VisualStudio2008

C# Windowsフォームアプリケーション


Assertion Failed!-画像表示


[デザイナ]

・Form

 → AutoScroll:True


・PictureBox

 → Name:_pict(任意)

 → SizeMode:AutoSize


[コード]

using System;
using System.Drawing;
using System.Windows.Forms;


public partial class Form1 : Form
{
  public Form1()
  {
    InitializeComponent();
  }


  private void Form1_Load(object sender, EventArgs e)
  {

    string filename = "C:\\sample.bmp";

    _pict.Image = Bitmap.FromFile(filename);
  }
}

[説明]

フォーム上にPictureBoxを任意の場所に貼り付け、その場所にディスクから

読み込んだイメージを表示するには、PictureBoxImageプロパティに

ビットマップクラスのメソッド「FromFile()」の結果を渡すだけでよい。


デザイナ側でAutoSizeを指定することにより、ピクチャボックスは画像サイズに

あわせた領域を持ち、AutoScrollをフォームに設定することで、ピクチャボックスの

サイズよりもフォームが小さくなったとき、自動でスクロールバーを表示する。


また、ビットマップクラスからFromFileで渡すイメージは、ビットマップファイルに

限らない。


例えば、


 string filename = "C:\\sample.jpg";


のように、JPGファイルを渡してもきちんと表示される。


ただし、読み込まれたイメージはJPG画像のビット深さを持ったビットマップとして

保持される。

(24bitのJPGを読み込んだ際のPixelFormatはFormat24bppRgbとなる。)