全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1213
推到 Plurk!
推到 Facebook!

得到的pixel值很奇怪怎麼這麼大?

答題得分者是:taishyang
change5945
一般會員


發表:2
回覆:3
積分:1
註冊:2007-12-30

發送簡訊給我
#1 引用回覆 回覆 發表時間:2008-11-14 18:07:21 IP:203.64.xxx.xxx 訂閱
void __fastcall TForm1::sub1MouseMove(TObject *Sender, TShiftState Shift,
int X, int Y)
{
Graphics::TBitmap *TheBitmap;
Byte *ptr;
PALETTEENTRY pal[1];
TheBitmap=sub1->Picture->Bitmap;
if(!sub1->Picture->Bitmap->Empty)
{
StatusBar1->Panels->Items[0]->Text= "X=" IntToStr(X);
StatusBar1->Panels->Items[1]->Text= "Y=" IntToStr(Y);
if(TheBitmap->PixelFormat==pf8bit)
{
StatusBar1->Panels->Items[2]->Text="Pixels=" IntToStr(sub1->Canvas->Pixels[X][Y]);
ptr=(Byte*)TheBitmap->ScanLine[Y];
GetPaletteEntries(TheBitmap->Palette,ptr[X],1,pal);
StatusBar1->Panels->Items[3]->Text="RED=" IntToStr(pal[0].peRed);
StatusBar1->Panels->Items[4]->Text="GREEN=" IntToStr(pal[0].peGreen);
StatusBar1->Panels->Items[5]->Text="BLUE=" IntToStr(pal[0].peBlue);
}
}

這是我寫的部份程式碼
目的:滑鼠在sub1這個image裡面滑動時會同時顯示出x,y做標和Pixel還有RGB
可是我得到的pixel卻很奇怪
例如 pixel:8816262 R:134 G:134 B:134
這是什麼道理呢???
很奇怪~麻煩有處理圖像經驗的大大指導一下~感謝您
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#2 引用回覆 回覆 發表時間:2008-11-14 18:16:48 IP:118.169.xxx.xxx 訂閱
Q.可是我得到的pixel卻很奇怪
例如 pixel:8816262 R:134 G:134 B:134
這是什麼道理呢???

A.
134 = 0x86
0x00868686 =
8816262
編輯記錄
taishyang 重新編輯於 2008-11-14 18:17:50, 註解 無‧
istillloving
高階會員


發表:33
回覆:182
積分:183
註冊:2008-10-09

發送簡訊給我
#3 引用回覆 回覆 發表時間:2008-11-14 20:31:18 IP:218.172.xxx.xxx 訂閱
原來還要自己轉回十進制

受教受教
------
恩...
change5945
一般會員


發表:2
回覆:3
積分:1
註冊:2007-12-30

發送簡訊給我
#4 引用回覆 回覆 發表時間:2008-11-15 11:51:52 IP:203.64.xxx.xxx 訂閱
挖...真的~~
感謝大大終於解決我心中一個重大疑惑了!!!!
感謝感謝~被這個問題困擾好久....
終於得到答案真感動
系統時間:2024-05-14 23:25:08
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!