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

RGB(1,1,1)以及RGB(255,255,255)

尚未結案
dean
一般會員


發表:24
回覆:60
積分:21
註冊:2003-08-23

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-10-15 01:21:57 IP:211.76.xxx.xxx 未訂閱
各位前輩們好:     小弟這邊有一個問題想請教,RGB的顯示方式應該是RGB(0-255,0-255,0-255),但據我所知,有的時候好像需要用0與1來顯示RGB,如:RGB(1,1,1)、RGB(0,1,1)....等,但到底什麼時候要用0與1?什麼時候要用0到255呢?     BITMAP輸入到電腦中,應該都是0-255才對,那要怎樣才能用0與1來表示256個不同顏色值呢?這樣不是很奇怪嗎?明明一個顏色有256種色調,卻偏偏只用1個位元來紀錄兩種色調(0跟1),那RGB三種加起來,怎麼可能讓0跟1來相互形成三種交叉而成的顏色呢?     最近還一直在搞HSV的模型,實在有太多不了解,想的越多問題越多,請各位前輩不吝嗇指導小弟,謝謝!       **我很想學,但又很不懂,所以一直問蠢問題,希望不要不屑我的問題,嘻嘻嘻**
JerryKuo
版主


發表:42
回覆:571
積分:322
註冊:2003-03-10

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-10-15 16:53:48 IP:61.230.xxx.xxx 未訂閱
引言: 各位前輩們好: 小弟這邊有一個問題想請教,RGB的顯示方式應該是RGB(0-255,0-255,0-255),但據我所知,有的時候好像需要用0與1來顯示RGB,如:RGB(1,1,1)、RGB(0,1,1)....等,但到底什麼時候要用0與1?什麼時候要用0到255呢? BITMAP輸入到電腦中,應該都是0-255才對,那要怎樣才能用0與1來表示256個不同顏色值呢?這樣不是很奇怪嗎?明明一個顏色有256種色調,卻偏偏只用1個位元來紀錄兩種色調(0跟1),那RGB三種加起來,怎麼可能讓0跟1來相互形成三種交叉而成的顏色呢? 最近還一直在搞HSV的模型,實在有太多不了解,想的越多問題越多,請各位前輩不吝嗇指導小弟,謝謝! < face="Verdana, Arial, Helvetica"> 你好: RGB原始程式宣告是如下,回傳值為4bytes的值, 0x00010101 = RGB(1,1,1) 0x00ffffff = RGB(255,255,255)。 兩者應該都是同一種道理
#define RGB(r, g ,b)  ((DWORD) (((BYTE) (r) | \  
                      ((WORD) (g) << 8)) | \ 
                      (((DWORD) (BYTE) (b)) << 16)))
dean
一般會員


發表:24
回覆:60
積分:21
註冊:2003-08-23

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-10-15 21:43:59 IP:211.76.xxx.xxx 未訂閱
引言: 你好: RGB原始程式宣告是如下,回傳值為4bytes的值, 0x00010101 = RGB(1,1,1) 0x00ffffff = RGB(255,255,255)。 兩者應該都是同一種道理
#define RGB(r, g ,b)  ((DWORD) (((BYTE) (r) | \  
                      ((WORD) (g) << 8)) | \ 
                      (((DWORD) (BYTE) (b)) << 16)))
HI!JerryKuo您好! 小弟不才,不太了解您想解釋的意思!可否麻煩在講明白一點,不好意思! 您說兩者都是同一種道理,但是為什麼有的人寫程式會用RGB(1,1,1),而有的人寫程式則要用RGB(255,255,255)呢?應該有他們要指定的意義吧!? 不管怎麼樣,先謝謝您JerryKuo!
< >< > **我很想學,但又很不懂,所以一直問蠢問題,希望不要不屑我的問題,嘻嘻嘻**
JerryKuo
版主


發表:42
回覆:571
積分:322
註冊:2003-03-10

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-10-16 15:00:01 IP:61.230.xxx.xxx 未訂閱
引言: [quote] 你好: RGB原始程式宣告是如下,回傳值為4bytes的值, 0x00010101 = RGB(1,1,1) 0x00ffffff = RGB(255,255,255)。 兩者應該都是同一種道理
#define RGB(r, g ,b)  ((DWORD) (((BYTE) (r) | \  
                      ((WORD) (g) << 8)) | \ 
                      (((DWORD) (BYTE) (b)) << 16)))
---------------------------------------------------------------------- 小弟不才,不太了解您想解釋的意思!可否麻煩在講明白一點,不好意思! 您說兩者都是同一種道理,但是為什麼有的人寫程式會用RGB(1,1,1),而有的人寫程式則要用RGB(255,255,255)呢?應該有他們要指定的意義吧!?
你好: 我想說的有很多啦,但又不知怎麼說起,所以才這樣寫。我想要表達的意思是 RGB這個函數是一個定義好的marco程式,回傳的值都是0x00rrggbb, RGB(1,1,1) 和RGB(255,255,255)都是一段長整數(DWORD),將這些放到bitmap->canvas->pixels[x][y] = RGB(colorR,colorG,colorB); 就固定代表一個顏色,所以使用的原理是一樣,只是一個是黑色一個是白色。除非 調色盤改變了,不然應該都是這樣的。 發表人 - jerrykuo 於 2003/10/16 15:03:45
系統時間:2024-05-01 1:13:19
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!