C# 的Color 颜色转换

摘要:
//方法1://使用System引用命名空间。绘画颜色类型的十六进制颜色代码:ColorTranslator。FromHtml(颜色);颜色类型转换为十六进制颜色代码:ColorTranslator ToHtml(_Color);//方法2:///////将字符串转换为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);

        }


免责声明:文章转载自《C# 的Color 颜色转换》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Linux /proc/$pid部分内容详解C#之隐式与显示类型转换下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

VS2010主题设置及插件推荐

本文主要写了个人使用 VS2010 的一些配置及实用插件,从而打造一个符合个人风格的开发环境。 基础设置 安装 Visual Assist X 在 VS2010 中若不安装 Visual Assist X 这个插件,直接开发 C++ 相关的项目将是非常痛苦的事情。默认环境没有对代码的不同部分进行颜色高亮显示,也没有任何的智能提示,在这种情况下想要准确写出...

ie浏览器不支持cmyk模式下的JPEG图片

  今天分享一个小小的技巧,就是解决颜色模式为印刷格式CMYK四色模式的JPEG图片上传到服务器上不被支持的问题。  如果你用photo shop打开该图片,细心的人就会发现JPG图像标题栏的图片名称后面紧跟着该图像的颜色模式,如果是RGB的就显示RGB,如果是四色模式CMYK的就显示CMYK。而通常网络上使用的基本都是RGB格式。况且IE6.9-ie8...

图像数据类型及颜色空间转换

一 图像数据类型转换 在skimage中,一张图片就是一个简单的numpy数组,数组的数据类型有很多种,相互之间可以转换。这些数据类型及取值范围如下表所示: 一张图片的像素值范围是[0,255], 因此默认类型是unit8, 可用如下代码查看数据类型: from skimage import io,data img=data.astronaut() pr...

(六)学习CSS之color属性

参考:http://www.w3school.com.cn/cssref/pr_text_color.asp color 属性规定文本的颜色。 这个属性设置了一个元素的前景色(在 HTML 表现中,就是元素文本的颜色);光栅图像不受 color 影响。这个颜色还会应用到元素的所有边框,除非被 border-color 或另外某个边框颜色属性覆盖。 要设置一...

bayer, yuv, RGB转换方法

http://blog.csdn.net/kickxxx/article/details/6642888 因为我的STVxxx USB camera输出格式是bayer格式,手头上只有YUVTOOLS这个查看工具,没法验证STVxxx在开发板上是否正常工作。 网上找了很久也没找到格式转换工具,最后放弃了,觉得还是写个转换工具比较快。抄写了部分libv4lc...

iOS 16进制颜色和UIcolor的转换

各种颜色之间的转换,会陆续更新, 实现了 16进制颜色(HEX)、RGBA、HSBA、UIColor之间的  相互转换      使用示例(加号方法,类名调用) 1 //UIColor 转 RGB、HSB 2 RGBAColor colora = [ColorConversion UIColorToRGBA:[UIColor redCo...