- ベストアンサー
VBでbmpのビットを抜出す
VB6を使いbmpファイルの指定行のビットを抜出したいのですが可能でしょうか。 例)AAA.bmpの左端上から10行目のビット抜出す
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
VB6でしたら一度 ピクチャーボックスなどに読み込んで Pointメソッドで座標指定してやれば取り出せますよ dim cl as long Set Picture1.Image = LoadPicture("aaa.bmp") Picture1.ScaleMode = vbPixels cl = Picture1.Point( 10, 0 ) といった具合です 取り出した情報は GGRRBB といった具合になっています 緑なら VAL(LEFT(RIGHT(HEX(cl)& "000000",6),2)) 赤なら VAL(MID(RIGHT(HEX(cl)& "000000",6),2)) 青なら VAL(RIGHT(RIGHT(HEX(cl)& "000000",6),2)) または 緑 = (cl And &HFF0000) / &H10000 赤 = (cl And &HFF00 ) / &H100 青 = (cl And &HFF) といった具合です
お礼
以下のようにすることで解決できました。本当にありがとうございます Private Sub Command1_Click() Dim c, r, g, b As Long Dim nx As Single Dim ny As Single '座標 nx = 100 ny = 100 c = Picture1.Point(nx, ny) 'RGB分解 r = (c And &HFF) g = (c And &HFF00&) \ &H100 b = (c And &HFF0000) \ &H10000 Text1.Text = r Text2.Text = g Text3.Text = b End Sub
補足
redfox63様 アドバイスありがとうございます。また、返事が遅くなり申し訳ございません。 アドバイス通りにプログラミングして見ましたがどうも上手く行きませんでしたもう少し研究してみます。