Public Class Form1
    Inherits System.Windows.Forms.Form

#Region " Windows フォーム デザイナで生成されたコード "

    Public Sub New()
        MyBase.New()

        ' この呼び出しは Windows フォーム デザイナで必要です。
        InitializeComponent()

        ' InitializeComponent() 呼び出しの後に初期化を追加します。

    End Sub

    ' Form は dispose をオーバーライドしてコンポーネント一覧を消去します。
    Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
        If disposing Then
            If Not (components Is Nothing) Then
                components.Dispose()
            End If
        End If
        MyBase.Dispose(disposing)
    End Sub

    ' Windows フォーム デザイナで必要です。
    Private components As System.ComponentModel.IContainer

    ' メモ : 以下のプロシージャは、Windows フォーム デザイナで必要です。
    ' Windows フォーム デザイナを使って変更してください。  
    ' コード エディタは使用しないでください。
    <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
        '
        'Form1
        '
        Me.AutoScaleBaseSize = New System.Drawing.Size(5, 12)
        Me.ClientSize = New System.Drawing.Size(292, 494)
        Me.Name = "Form1"
        Me.Text = "Form1"

    End Sub

#End Region

    Protected Overrides Sub OnPaint(ByVal e As System.Windows.Forms.PaintEventArgs)

        'グラフィクスオブジェクトの取得
        Dim g As Graphics
        g = e.Graphics

        '画像ファイルの読み込み
        'アプリケーションのパスの直下の画像ファイルを読み込む
        Dim myBitmap As New Bitmap(Application.StartupPath + "\test.bmp")

        '描画命令（位置）
        g.DrawImage(myBitmap, 20, 10)

        '描画命令（位置:別バージョン）
        Dim myPos As New Point(120, 10)
        g.DrawImage(myBitmap, myPos)

        '描画命令（位置とサイズ）
        Dim myRect1 As New Rectangle(20, 104, 48, 48)
        g.DrawImage(myBitmap, myRect1)

        '描画命令（位置とサイズ:別バージョン）
        g.DrawImage(myBitmap, 120, 104, 128, 128)

        '描画命令（位置とサイズと部分）
        Dim myRect2 As New Rectangle(20, 244, 80, 80)
        Dim myRect3 As New Rectangle(20, 20, 50, 50)
        g.DrawImage(myBitmap, myRect2, myRect3, GraphicsUnit.Pixel)

        '描画命令（平行四辺形）
        Dim ulCorner1 As New Point(30, 354)
        Dim urCorner1 As New Point(150, 384)
        Dim llCorner1 As New Point(60, 464)
        Dim destPara1 As Point() = {ulCorner1, urCorner1, llCorner1}
        g.DrawImage(myBitmap, destPara1)

        '描画命令（平行四辺形:画像の回転を実現）
        Dim ulCorner2 As New Point(220, 450)
        Dim urCorner2 As New Point(175, 405)
        Dim llCorner2 As New Point(265, 405)
        Dim destPara2 As Point() = {ulCorner2, urCorner2, llCorner2}
        g.DrawImage(myBitmap, destPara2)

    End Sub
End Class
