将RGB浮点数据转换为十六进制字符串

Ale*_*eed 2 c# rgb

我正在编写一个修改游戏的工具,游戏使用float来存储RGB数据(范围从0.0 - > 1.0).您最好如何建议我从浮点RGB数据转换为十六进制字符串/字节RGB数据?

pau*_*aul 11

var rgbString = string.Format("#{0}{1}{2}", 
    ((int)(redValue * 255)).ToString("X2"), 
    ((int)(greenValue * 255)).ToString("X2"), 
    ((int)(blueValue * 255)).ToString("X2"));
Run Code Online (Sandbox Code Playgroud)

编辑(可能更易读的代码):

var rgbString = string.Format("#{0:X2}{1:X2}{2:X2}", 
    (int)(redValue * 255), 
    (int)(greenValue * 255), 
    (int)(blueValue * 255));
Run Code Online (Sandbox Code Playgroud)