請問在BCB裡要怎麼圖檔之像素顏色資料... |
答題得分者是:richtop
|
abdias
一般會員 發表:5 回覆:4 積分:1 註冊:2004-07-30 發送簡訊給我 |
|
richtop
資深會員 發表:122 回覆:646 積分:468 註冊:2003-06-10 發送簡訊給我 |
abdias 您好: 底下程式碼,可以利用滑鼠在Image上移動讀取其RGB的值,請參考:
//--------------------------------------------------------------------------- void __fastcall TForm1::Image1MouseMove(TObject *Sender, TShiftState Shift, int X, int Y) { AnsiString msg; int r,g,b; r = GetRValue(Image1->Canvas->Pixels[X][Y]); g = GetGValue(Image1->Canvas->Pixels[X][Y]); b = GetBValue(Image1->Canvas->Pixels[X][Y]); msg.printf("(r, g, b) = (=,=,=)", r, g, b); Label1->Caption = msg; } //---------------------------------------------------------------------------但如果圖片是JPG格式,則要先轉換成BITMAP才能利用Pixels[][]讀取。轉換請參考: //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { Graphics::TBitmap *pBitmap = new Graphics::TBitmap(); pBitmap->Width = Image1->Picture->Width; pBitmap->Height= Image1->Picture->Height; pBitmap->Canvas->Draw(0,0,Image1->Picture->Graphic); Image1->Picture->Assign(pBitmap); delete pBitmap; } //---------------------------------------------------------------------------RichTop 敬上 =====***** 把數學當工具,可以解決問題;將數學變能力,能夠發現並解決問題! =====##### |
abdias
一般會員 發表:5 回覆:4 積分:1 註冊:2004-07-30 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |