2011-01-25 6 views
3

自分のユーザーピクチャを私のHDDにファイルとして保存しました。 (データベースにはありません)。ディスク/ファイル上の画像の幅x高さの比率を取得する方法は?

この* .jpgファイルの高さと幅はどのように取得されますか?

(背景:高さと幅の比率を計算して、指定した高さと幅に伸ばしずに戻す必要があります)。

+1

ヘッダーを直接読み取ろうとしていますか?または、画像をメモリにロードしてもよろしいですか? –

答えて

4

多くのフォーマットがその情報にヘッダをサポートしていますが、他はso...

Image img = System.Drawing.Image.FromFile(path); 
int height = img.Height; 
int width = img.Width; 
0

System.Drawing.BitmapクラスのFromFile静的メソッドを使用してイメージを読み込みます。返されるBitmapインスタンスには、WidthプロパティとHeightプロパティがあります。代わりに、コンストラクタパラメータとして画像ファイルに文字列パスを渡す新しいBitmapを構築することもできます。

6

ない私はSystem.Drawing.ImageがIDisposableインターを実装することも言及する価値があると思うので、あなたはいつも使用してステートメントを使用する必要がありますかオブジェクトのDispose()メソッドを呼び出して、アンマネージシステムリソースを解放していることを確認します。例:

using (Image img = System.Drawing.Image.FromFile(path)) 
{ 
    int height = img.Height; 
    int width = img.Width; 
} 
関連する問題