Visual Basic 中学校 掲示板 投稿の管理
タグのない投稿を抽出
統計
RSS
Visual Basic 中学校
投稿一覧
imageクラスについて
この投稿へのリンク
https://keijiban.umayadia.com/ThreadDetail.aspx?ThreadId=9224#CommentId12114
この投稿の削除
削除パスワード
削除する
コメント本文
投稿者
よねKEN
 (社会人)
投稿日時
2009/7/14 02:18:41
System.Drawing.Imageは抽象クラスで、その派生クラスには、
・System.Drawing.Bitmap というビットマップ画像(≠拡張子がbmpの画像)を現すクラス、
・System.Drawing.Imaging.Metafile というベクター画像を現すクラスがあります。
Imageクラスが抽象クラスであるのに対して、BitmapやMetafileは具象クラスといいます。
ビットマップ画像は、ドットの集まりで表現する形式の画像で、
ベクター画像は、線の両端の座標、曲線の曲がり具合、太さ、色などの形状で表現する形式の画像です。
BitmapクラスやMetafileクラスは内部の表現形式を規定した具体的な画像を現しているのに対して、
Imageクラスはより抽象的な意味での画像を現すクラスになっています。
画像をどのように表現するのかをImageクラスは知りませんので、Imageクラスのインスタンスは生成できません。
なぜこのようになっているか?と聞かれれば、設計者がそのように設計したから、です。
ちなみに、Image.FromFileメソッドやImage.FromStreamメソッドは、
指定した画像によりBitmapクラスかMetafileクラスのインスタンスを生成して返します。