2013-06-13 203 views
-1

我正在從MSDN學習win32 API。我遇到了這個話題(http://msdn.microsoft.com/en-us/library/windows/desktop/ff684180(v=vs.85).aspx),它談到了direct2d中的顏色。但是RGB代碼只有8種主要顏色。什麼是direct2d中每種可能顏色的RGB代碼?direct2d中顏色的RGB值

在此先感謝。

+0

典型的視頻卡可以渲染1670萬種實際顏色。 D2D顏色使用浮點,所以理論上這個範圍是浮點的分辨率,但是任何給定的理論顏色都將被映射到顯示設備可以處理的最接近的實際顏色。無論哪種方式,所有可能的顏色的完整列表並不真實。 –

回答

0

另外,值得注意的是,Direct2D中的顏色以rgba格式表示爲1.0標準化的浮點值。

例如:

ID2D1RenderTarget * pRT; // passed in or created. 
// Of course the code below should be between pRT->BeginDraw(), pRT->EndDraw() calls. 

ID2D1SolidColorBrush* pbr = NULL; 
// red, blue, green, alpha are float values from 0.f to 1.f 
D2D1_COLOR_F colr = D2D1::ColorF(red, green, blue, alpha)); 

pRT->CreateSolidColorBrush(colr, &pbr); 

// now you have a color you can use for rendering 
D2D1_RECT_F rcF = D2D1::RectF(10.f, 10.f, 650.f, 490.f); 
pRT->FillRectangle(rcF, pBrush);