在 .NET 中设置颜色非常简单,只需要 Dim c As Color = Color.FromArgb(255, 1, 2, 3) 即可设置 透明度、红、绿、蓝 等颜色信息。
而当你想要从HTML或者CSS格式文本转换为颜色数据时,其实只需要使用 ColorTranslator.FromHtml(...) 这个方法就可以解析了。
但如果是 rgb rgba hsl hsla 这类子函数的话,就需要自己写解析方法了。
为此,我自己写了一个可以完全解析 html css 颜色文本的方法,顺便也分享出来。

支持解析CSS格式的文本内容到 Color 对象中,使用方法很简单

Dim c As Color = ToColorEx("#FF00CC")
c = ToColorEx("#ccc")
c = ToColorEx("rgba(204, 232, 207, 0.5)")
c = ToColorEx("hsla(84, 91, 205, 50%)")
c = ToColorEx("red")
支持的格式有
#fff
#FFFFFF
rgb(0,123,50)
rgba(0,123,50,0.5)
hsl(84,91,205)
hsla(84,91,205,50%)
red\blue\green\yellow 等常规描述性文本

- 阅读全文 -