C++中RGB转换为ARGB

来源:互联网 发布:js面向对象编程教程 编辑:程序博客网 时间:2024/05/29 16:58

RGB :是24位的颜色值,高八位为R,中间八位为G,后八位为B。
ARGB:是32位的颜色值。高八位为A,次八位为R,再次八位为G,最后八位为B。

转换使用如下方法,我是先调颜色对话框取色,然后转化:

COLORREF col;

CColorDialog colorDialog;
if (IDOK == colorDialog.DoModal())
{
col= colorDialog.GetColor();
}


//转化

UINT r,g,b ;

r = GetRValue(col);
g = GetGValue(col);
b = GetBValue(col);

UINT argb  = (0xFF << 24) | (r << 16) | (g << 8) | b;

0 0
原创粉丝点击