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

有關ScanLine out of range的問題

缺席
paulcaptain
一般會員


發表:13
回覆:9
積分:4
註冊:2004-11-17

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-08-10 23:14:59 IP:61.218.xxx.xxx 未訂閱
我執行程式遇到ScanLine out of range的問題 我瀏覽相關問題文章 有說要改成24BITS的,我改了之後也是出現同樣問題 有說ScanLine大小不可超過IMAGE的大小,我也沒有超過 目前有個問題是有人說要先載入一張圖片,如果IMAGE沒有圖片,則ScanLine也會出現同樣問題,我也有圖片在我的IMAGE裡面,還是出現同樣ScanLine out of range的問題 以下是我的程式碼,不知道哪裡出錯了
Graphics::TBitmap* BMP1 = new Graphics::TBitmap();
.........中間影像處理(略)
extract2_image->Picture->Assign(BMP1);
    //將BMP1設給image元件大小為100*100name為extract2_image的IMAGE元件
    //原圖比100*100小,用Stretch設為true,因為我想把大小弄成100*100
int resize[100][300];
extract2_image->Picture->Bitmap->PixelFormat = pf24bit;
for(int i = 0 ; i < 100 ; i  )
{
  byte *ptr = (byte *)extract2_image->Picture->Bitmap->ScanLine[i];
  for(int j = 0 ; j < 100 ; j  )
  {
    resize[i][j*3]   = ptr[j*3];//B
    resize[i][j*3 1] = ptr[j*3 1];//G
    resize[i][j*3 2] = ptr[j*3 2];//R
  }
} 
delete BMP1;
困擾我好久...
taishyang
站務副站長


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

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-08-10 23:48:23 IP:218.168.xxx.xxx 未訂閱
您好:  
引言: 用Stretch設為true
改成把AutoSize設為true看看
poaivy
中階會員


發表:40
回覆:78
積分:53
註冊:2004-08-09

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-08-11 02:36:33 IP:128.95.xxx.xxx 未訂閱
把IMAGE的大小設定好 就可以不用載入一張圖片, Graphics::TBitmap* BMP1 = new Graphics::TBitmap(); BMP1->PixelFormat=pf24bit; BMP1->Width= 100; BMP1->Height= 100;
paulcaptain
一般會員


發表:13
回覆:9
積分:4
註冊:2004-11-17

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-08-26 06:17:04 IP:61.218.xxx.xxx 未訂閱
謝謝兩位的建議 因時間的關係 我已改用程式來做縮放的動作 雖然麻煩了點 呵呵,謝謝
系統時間:2024-05-04 18:49:57
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!