画像のRGB情報を読み取る

事前準備
・フォームにPictureBoxを貼り付け、
DockプロパティをFillにする。

マウスのある点上のRGB情報を読み取り、
フォームのタイトル欄に表示します。

早い処理は必要ないので、LockBitsではなく、GetPixelを使用しました。

Public Class Form1
 Private bmp As Bitmap = New Bitmap(“C:\sample.bmp”)

 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  Me.Size = bmp.Size
 End Sub

 Private Sub Picture_Box(ByVal sender As Object, ByVal e As PaintEventArgs) Handles PictureBox1.Paint
  e.Graphics.DrawImage(bmp, 0, 0, PictureBox1.Width, PictureBox1.Height)
 End Sub

 Private Sub mMove(ByVal sender As System.Object, ByVal e As MouseEventArgs) Handles PictureBox1.MouseMove
  Me.Text = “R:” & bmp.GetPixel(e.X, e.Y).R & ” , G:” & bmp.GetPixel(e.X, e.Y).G & ” , B:” & bmp.GetPixel(e.X, e.Y).B
 End Sub
End Class

こんな感じになります。
このくらいの処理だと、LockBitsよりもお手軽で使いやすい
GetPixelで処理した方が楽だと思います。

関連記事
・Bitmap.LockBitsメソッド
・Bitmap.GetPixelメソッド

システム開発のためのVB.NETプログラミング関係一覧に戻る

システム開発の【Spread i-Vision】

google検索の結果はこちら