[英]How can I get the RGB components of a TAlphaColor in C++ Builder XE5 cross-platform?
我正在從VCL轉換為Firemonkey(FMX)。
我想在TAlphaColor變量中獲取R,G或B值。
我以前使用函數GetRValue(TColor)。 但是,GetRValue是一個Windows GDI調用。
有沒有辦法實現跨平台工作(特別是Windows和Mac)?
我找到了似乎用Delphi和TAlphaColorRecs做的例子,但我無法將代碼轉換為C ++。
您可以使用TAlphaColorRec
結構讀出顏色通道:
TAlphaColorRec acr;
acr.Color = Color;
Byte r = acr.R;
Byte g = acr.G;
// etc.
這種類型的重要部分是union
,聲明如下:
union
{
struct
{
System::Byte B;
System::Byte G;
System::Byte R;
System::Byte A;
};
struct
{
System::Word HiWord;
System::Word LoWord;
};
struct
{
TAlphaColor Color;
};
};
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.