1

私はプログラミング言語を始めたばかりなので、Visual Studio(Visual Basic Language)のような簡単なものから始めたいと思いました。現在、この種のコードを使用して、コードを介してフォームに挿入された画像が実際の画像よりも大きいのはなぜかを理解しようとしています...

私の最初のプロジェクトは、Photoshopを介してスキンできるアナログ時計を作成することですが、画像のサイズ設定を使用したこのことは、私を夢中にさせています。

なぜこれが起こっているのか誰かが私に説明できればとても良いでしょう...

以下のコードと結果:

Public Class Form1

'25x25 white rectangle image
Dim rec As Image = Image.FromFile("c:\img\rectangle.png")

Private Sub pic_Paint(sender As Object, e As PaintEventArgs) Handles pic.Paint
    'Declaring graphics
    Dim g As Graphics = e.Graphics
    'Drawing image into PictureBox called pic
    g.DrawImage(rec, 200, 200)
End Sub
End Class

結果

ありがとうございました!

4

2 に答える 2

1

96dpiで実行していない(タイトルバーが少し大きく見える)か、使用している25x25の画像にDPIメタデータフィールドがあり、GDI(Windowsのグラフィックシステム)に拡大縮小されたサイズで描画するように指示している可能性があります。

SetResolutionクラスのメソッドを使用するBitmapか、オーバーロードをいじることをお勧めしDrawImageます。

于 2012-11-21T20:17:28.850 に答える
0

これは私のグラフィカルエディタ関連の問題であることがわかりました。msペイントで25x25の正方形を作成すると、プログラムの実行時に正しく表示されることがわかりました。ありがとうございました!

于 2012-11-21T20:29:57.310 に答える