DOBON.NET DOBON.NETプログラミング掲示板過去ログ

イメージの描画の不思議

環境/言語:[XP]
分類:[.NET]

VB.NET勉強中の者です。
イメージファイルをFormに描画するには、定型として、Form1のPaintプロシージャに次のように書くと心得ていますが
e.Graphics.DrawImage((New Bitmap("qq.jpg"), 10, 10)
表示された画像を見ると拡大されています。たとえば160*200pixelの画が217*272になってしまいました。
どなたか、お願いします。原因解明してください。
> イメージファイルをFormに描画するには、定型として、Form1のPaintプロシージャに次のように書くと心得ていますが
> e.Graphics.DrawImage((New Bitmap("qq.jpg"), 10, 10)
> 表示された画像を見ると拡大されています。たとえば160*200pixelの画が217*272になってしまいました。

160*200pixelというのは何で調べたときのサイズでしょうか?
同様に217*272というのは何で調べたサイズですか?

DrawImageメソッドのヘルプには下記のようにあります。

(DrawImageメソッドのヘルプより引用)
>> DrawImage メソッドは物理サイズを使用してイメージを描画するため、
>> イメージは表示デバイスの解像度 (dpi) に関係なく、インチで示された正確なサイズで描画されます。
>> たとえば、ピクセル幅が 216、水平解像度が 72 dpi のイメージがあるとします。
>> DrawImage を呼び出して、96 dpi (1 インチあたりのドット数) の解像度のデバイスにこのイメージを描画すると、
>> レンダリングされたイメージの幅は (216/72)*96 = 288 (ピクセル) になります。

ピクセル数はともかく見た目の物理サイズはどうなんでしょう?
■No1304に返信(よねKENさんの記事)
>>イメージファイルをFormに描画するには、定型として、Form1のPaintプロシージャに次のように書くと心得ていますが
>> e.Graphics.DrawImage((New Bitmap("qq.jpg"), 10, 10)
>>表示された画像を見ると拡大されています。たとえば160*200pixelの画が217*272になってしまいました。
>
> 160*200pixelというのは何で調べたときのサイズでしょうか?
> 同様に217*272というのは何で調べたサイズですか?
>
> DrawImageメソッドのヘルプには下記のようにあります。
>
> (DrawImageメソッドのヘルプより引用)
> >> DrawImage メソッドは物理サイズを使用してイメージを描画するため、
> >> イメージは表示デバイスの解像度 (dpi) に関係なく、インチで示された正確なサイズで描画されます。
> >> たとえば、ピクセル幅が 216、水平解像度が 72 dpi のイメージがあるとします。
> >> DrawImage を呼び出して、96 dpi (1 インチあたりのドット数) の解像度のデバイスにこのイメージを描画すると、
> >> レンダリングされたイメージの幅は (216/72)*96 = 288 (ピクセル) になります。
>
> ピクセル数はともかく見た目の物理サイズはどうなんでしょう?

返信ありがとうございます。
画像の大きさは見た目でことなります
また画像のピクセル値はVBで出力された画像をペイントショップでキャプチュアして測りました。

DOBON.NET | プログラミング道 | プログラミング掲示板