如何讀取BMP圖檔所有Byte值並顯示至Form |
答題得分者是:mephise
|
yc601065
一般會員 發表:3 回覆:5 積分:1 註冊:2009-12-15 發送簡訊給我 |
Hi各位高手好~
小弟我想讀取BMP圖檔並以Byte(如:0xFFFFFFF...)方式顯示在Form的Memo元件上 以下是我找到的相關範例Code,請問ptr要如何修改才能以Byte顯示至Memo元件 ============================================= [code delphi] Byte *ptr; int r,g,b; int gray; int i,j; int threshold; threshold=ScrollBar1->Position; Edit1->Text=ScrollBar1->Position; Bmp->Assign(Image1->Picture->Bitmap); for(j=0;j { ptr=(Byte *)Bmp->ScanLine[j];//ptr指標指向bmp第y行 for(i=0;i { b=ptr[i*3]; g=ptr[i*3 1]; r=ptr[i*3 2]; gray=0.299*r 0.587*g 0.114*b; //灰階演算 if(gray>threshold) gray=255; else gray=0; ptr[i*3]=(Byte)gray;//藍 ptr[i*3 1]=(Byte)gray; //綠 ptr[i*3 2]=(Byte)gray; //紅 } } [/code] |
mephise
高階會員 發表:4 回覆:149 積分:205 註冊:2004-02-09 發送簡訊給我 |
|
yc601065
一般會員 發表:3 回覆:5 積分:1 註冊:2009-12-15 發送簡訊給我 |
|
mephise
高階會員 發表:4 回覆:149 積分:205 註冊:2004-02-09 發送簡訊給我 |
那就跟它是不是 BMP 檔無關了, 你只是要單純開一個 Binary 檔, 然後讀數值而已
你可以利用這樣的宣告, 讀取檔案 (我是用 Untyped Binary File 方式來讀取) var F: File; 然後再利用 AssignFile, Reset, BlockRead, CloseFile 這幾個函數來讀取檔案 細節我就不說了, 請查閱 Delphi 中的 Help, Help裡面也有一些範例可供參考 把資料讀到 Byte 裡面再轉成 Hex 顯示在 Memo 中即可
------
Mephise Chen 前興德工程師 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |