Scan Line Out of Range |
答題得分者是:blk5743
|
huntfox
一般會員 發表:11 回覆:13 積分:4 註冊:2006-10-23 發送簡訊給我 |
請問各位大大
我想要做出能順時針旋轉的圖 可是卻出現了Scan Line Out of Range 不知道是哪裡出了問題 感謝大大的幫忙 [code cpp] Graphics::TBitmap *TheBitmap, *TempBitmap; int Width, Height; Byte *ptr1, *ptr2, bRatio; TPixelFormat pixel_format; // 產生一個新的 Bitmap 元件, 作為儲存翻轉或旋轉後的結果 TempBitmap = new Graphics::TBitmap(); // 將 TheBitmap 指向原始影像 TheBitmap = Image1->Picture->Bitmap; pixel_format = Image1->Picture->Bitmap->PixelFormat; if (pixel_format == pf8bit){ bRatio = 1; TheBitmap->PixelFormat = pf8bit; } else { bRatio = 3; TheBitmap->PixelFormat = pf24bit; } Width = TheBitmap->Width; Height = TheBitmap->Height; TempBitmap->Assign(TheBitmap); if(RadioGroup1->ItemIndex > 1){ //旋轉後的影像之長寬與原始影像相反 TempBitmap->Width = Height; TempBitmap->Height = Width; } for(int y = 0; y < Height; y ){ ptr2 = (Byte *)TheBitmap->ScanLine[y]; for(int x = 0; x < Width * bRatio; x ){ //順時針旋轉 if(RadioGroup1->ItemIndex == 2){ ptr1 = (Byte *)TempBitmap->ScanLine[x]; ptr1[Height - 1 - y] = ptr2[x]; } } } TheBitmap->Assign(TempBitmap); delete TempBitmap; [/code] |
taishyang
站務副站長 發表:377 回覆:5490 積分:4563 註冊:2002-10-08 發送簡訊給我 |
|
blk5743
高階會員 發表:34 回覆:371 積分:236 註冊:2003-11-17 發送簡訊給我 |
|
huntfox
一般會員 發表:11 回覆:13 積分:4 註冊:2006-10-23 發送簡訊給我 |
其實這個問題我比較困惑的是8bit跟24bit在圖形上到底有什麼樣的差異
還好有blk5743跟taishyang站務副站長的回答 我陸陸續續又找了一些資料 像是Royce520大大的範例 http://delphi.ktop.com.tw/board.php?cid=31&fid=79&tid=38783 跟taishyang站務副站長的範例 http://delphi.ktop.com.tw/board.php?cid=31&fid=79&tid=40159 或許還要一些時間消化一下 但是應該會得到對很多之前感到困惑的事的一些新的啟發 感謝大大們的回答與資料 ^^ |
blk5743
高階會員 發表:34 回覆:371 積分:236 註冊:2003-11-17 發送簡訊給我 |
其實這個問題我比較困惑的是8bit跟24bit在圖形上到底有什麼樣的差異
======================================================= 一般狀況來說 8bits的圖形是指灰階圖形每一個pixel只用8bits表示 24bits是彩色的RGB各用8bits表示 如果你有一張灰階及一張彩色的圖 圖片大小皆為640*480的話 行數 列數 檔案大小 灰階 640 480 640*1*480 彩色 640 480 640*3*480 但是因為彩色的一個pixel實際上是由RGB三個顏色所組成的 所以灰階圖形每一列你要處理640個點,但彩色則要處理640*3 這樣子有初步的了解了嗎 如果要詳細了解跟影像有關的資訊 可以上維基百科或google等網站搜尋即可 至於處理的sample code我相信在本站你可以找到很多實用的範例 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |