GDI标准RGB颜色值 : 这是WIn系统编程的 GDI 颜色值, 还有 GDI+值需要自己改造
HSL 值 :自定义的值,主要是为了方便使用,把4个数字合成1个 LONG 数字
同时支持透明值 A ,当然 GDI 一般不用 A值,GDI+ 则必须的。
位运算简单说明:
数值内存结构,可以打开 WIn 里的计算器,切换程序员模式。数字的2进制是 从右到左,从0到31保存的。
Shr 是向右移动几位 ,Shl 是向右移动几位 ,And 是获取几位数值,=255 是 0-7 位数

Function RGBtoHSL_Gdi(GDI_RGB As Long) As Long 'GDI标准RGB颜色转换为 HSL 值
'GDI标准RGB颜色 32位数 31--0 a是透明度=31--24 B=23--16 G=15--8 R=7--0
'aHSL 值 32位数 31--0 a是透明度=31--24 H=23--14 S=13--7 L=6--0
Dim r As Single = (GDI_RGB And 255) / 255
Dim g As Single = (GDI_RGB Shr 8 And 255) / 255
Dim b As Single = (GDI_RGB Shr 16 And 255) / 255
Dim a As Long = GDI_RGB Shr 24 'GDI 一般无透明通道,特殊时使用的。
Dim As Single m ,v ,h ,s ,l
m = min(r ,min(g ,b))

这篇博客介绍了如何在VisualBasic中进行RGB和HSL颜色之间的转换,包括GDI标准的RGB颜色值和自定义的HSL表示方式。文中提到了透明值A的处理,并且解释了位运算在颜色转换中的应用,如Shr、Shl和And操作符的使用。
最低0.47元/天 解锁文章
964

被折叠的 条评论
为什么被折叠?



