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

如何將image上某一點的r,g,b值存入txt的文字檔

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


發表:26
回覆:52
積分:15
註冊:2003-03-26

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-07-25 14:17:24 IP:163.28.xxx.xxx 未訂閱
請問:如何將影像中某一點(X,Y)座標上的R,G,B值存成一個txt的文字檔,然 後每換一個座標就覆蓋先前的R,G,B值 謝謝
taishyang
站務副站長


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

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-07-25 14:35:39 IP:140.135.xxx.xxx 未訂閱
newken您好:
引言:如何將影像中某一點(X,Y)座標上的R,G,B值存成一個txt的文字檔,然後每換一個座標就覆蓋先前的R,G,B值
試試下面的code
 
void __fastcall TForm1::Image1MouseDown(TObject *Sender,
      TMouseButton Button, TShiftState Shift, int X, int Y)
{
 Memo1->Clear();
 int R=GetRValue(Image1->Canvas->Pixels[X][Y]);
 int G=GetGValue(Image1->Canvas->Pixels[X][Y]);
 int B=GetBValue(Image1->Canvas->Pixels[X][Y]);
 Memo1->Lines->Add(R);
 Memo1->Lines->Add(G);
 Memo1->Lines->Add(B);
 Memo1->Lines->SaveToFile("像素資料.txt");
}
順心 <>~我也是在學習的階段,回答的不好請您多多見諒與指教~
RaynorPao
版主


發表:139
回覆:3622
積分:7025
註冊:2002-08-12

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-07-25 14:37:21 IP:203.73.xxx.xxx 未訂閱
引言: 請問:如何將影像中某一點(X,Y)座標上的R,G,B值存成一個txt的文字檔,然 後每換一個座標就覆蓋先前的R,G,B值 謝謝
newken 你好: 參考這篇,稍作修改應該就可以了
------
-- 若您已經得到滿意的答覆,請適時結案!! --
-- 欲知前世因,今生受者是;欲知來世果,今生做者是 --
-- 一切有為法,如夢幻泡影,如露亦如電,應作如是觀 --
newken
一般會員


發表:26
回覆:52
積分:15
註冊:2003-03-26

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-07-25 15:32:18 IP:163.28.xxx.xxx 未訂閱
請問: (1)thyang兄,你是用memo這個元件的特性,來把data存成文字檔, 那如果沒有使用這元件,有沒有別的寫法。 (2)還有一個問題是,當我執行程式時,是不是不能去開啟這個存好 的文字檔,好像會當掉。 (3)如果第二個問題發生時,哪我要寫個程式去讀取文字檔裡的data 會不會發生問題?.........疑問 謝謝
taishyang
站務副站長


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

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-07-25 16:26:52 IP:140.135.xxx.xxx 未訂閱
newken您好:   (1)那試試    
 
 int R=GetRValue(Image1->Canvas->Pixels[X][Y]);
 int G=GetGValue(Image1->Canvas->Pixels[X][Y]);
 int B=GetBValue(Image1->Canvas->Pixels[X][Y]);
 TStringList*Pixel=new TStringList();
 Pixel->Add(IntToStr(R));
 Pixel->Add(IntToStr(G));
 Pixel->Add(IntToStr(B));
 Pixel->SaveToFile("像素資料.txt");
 delete Pixel;
   
(2)一個檔案同時被讀出與寫入就會發生這樣的情況 (3)可以用try catch的方式避開.. 最主要還是看您怎麼規劃您的程式架構(目的) 可能原本就能避免這樣的情況發生 順心 <>~我也是在學習的階段,回答的不好請您多多見諒與指教~
newken
一般會員


發表:26
回覆:52
積分:15
註冊:2003-03-26

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-07-29 15:27:06 IP:163.28.xxx.xxx 未訂閱
taishyang你好: (1)不知你所提到的'try catch的方式'是什麼啊? (2)如果要從txt檔裡將我存的r,g,b值讀取出來,有幾種方式可用 謝謝
taishyang
站務副站長


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

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-07-29 16:38:06 IP:140.135.xxx.xxx 未訂閱
newken您好:  1. 請參考下面連結   http://delphi.ktop.com.tw/topic.php?TOPIC_ID=34715 2. 試試下面的code (或是用Memo...請您自行測試)
 
 TStringList* pic=new TStringList();
 pic->LoadFromFile("像素資料.txt");
 ShowMessage(pic->Strings[0]); //秀出R
// ShowMessage(pic->Strings[1]); //秀出G
// ShowMessage(pic->Strings[2]); //秀出B
 delete pic;
 
順心 <>~我也是在學習的階段,回答的不好請您多多見諒與指教~
系統時間:2024-05-05 16:01:54
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!