zoukankan      html  css  js  c++  java
  • C# 的Color 颜色转换

    //方法1:
    //引用命名空间 using System.Drawing;

    16进制颜色代码转Color类型:ColorTranslator.FromHtml(color);
    Color类型转16进制颜色代码:ColorTranslator.ToHtml(_color);

    //方法2:
             /// <summary>
            
    /// 将字符串转换为Color
            
    /// </summary>
            
    /// <param name="color">带#号的16进制颜色</param>
            
    /// <returns></returns>
            public Color ToColor(string color)
            {

                
    int red, green, blue = 0;
                
    char[] rgb;
                color 
    = color.TrimStart('#');
                color 
    = Regex.Replace(color.ToLower(), "[g-zG-Z]""");
                
    switch (color.Length)
                {
                    
    case 3:
                        rgb 
    = color.ToCharArray();
                        red 
    = Convert.ToInt32(rgb[0].ToString() + rgb[0].ToString(), 16);
                        green 
    = Convert.ToInt32(rgb[1].ToString() + rgb[1].ToString(), 16);
                        blue 
    = Convert.ToInt32(rgb[2].ToString() + rgb[2].ToString(), 16);
                        
    return Color.FromArgb(red, green, blue);
                    
    case 6:
                        rgb 
    = color.ToCharArray();
                        red 
    = Convert.ToInt32(rgb[0].ToString() + rgb[1].ToString(), 16);
                        green 
    = Convert.ToInt32(rgb[2].ToString() + rgb[3].ToString(), 16);
                        blue 
    = Convert.ToInt32(rgb[4].ToString() + rgb[5].ToString(), 16);
                        
    return Color.FromArgb(red, green, blue);
                    
    default:
                        
    return Color.FromName(color);

                }
            }

            
    public string ColorToHex(Color _color)
            {
                
    //return "#" + String.Format("{0:X}", Color.FromArgb(_color.R, _color.G, _color.B).ToArgb()).Substring(2);
                
    //return Convert.ToString(Color.FromArgb(_color.R, _color.G, _color.B).ToArgb(), 16).Substring(2);

            }


  • 相关阅读:
    【小程序】订阅消息
    【小程序】轮播图
    【小程序】全局变量的设置、使用、修改、全局方法执行
    【RN】标题栏右边添加自定义按钮或加事件
    【RN】阴影react-native-shadow
    【vue】点击复制到剪贴板的方法( clipboard )
    Q-learning和Sarsa的区别
    Q-learning之一维世界的简单寻宝
    使用tensorflow时,关于GPU的设置
    安装Matlab出现弹出DVD1插入DVD2的提示怎么办?
  • 原文地址:https://www.cnblogs.com/taven/p/1574329.html
Copyright © 2011-2022 走看看