Feedback

C# - Hexstring in System.Drawing.Color umwandeln

Veröffentlicht von am 09.06.2006
(2 Bewertungen)
Wandelt einen Hexstring (z.B. #ff44ff) in ein System.Drawing.Color Objekt um
using System.Globalization;

/// <summary>
/// Gets the System.Drawing.Color object from hex string.
/// </summary>
/// <param name="hexString">The hex string.</param>
/// <returns></returns>
private System.Drawing.Color GetSystemDrawingColorFromHexString(string hexString)
{
    if (!System.Text.RegularExpressions.Regex.IsMatch(hexString, @"[#]([0-9]|[a-f]|[A-F]){6}\b"))
        throw new ArgumentException();
    int red = int.Parse(hexString.Substring(1, 2), NumberStyles.HexNumber);
    int green = int.Parse(hexString.Substring(3, 2), NumberStyles.HexNumber);
    int blue = int.Parse(hexString.Substring(5, 2), NumberStyles.HexNumber);
    return Color.FromArgb(red, green, blue);
}

2 Kommentare zum Snippet

herbivore schrieb am 09.12.2006:
Es gibt fast alles schon im .NET Framework, so auch diese Umwandlung: ColorTranslator.FromHtml
DimpiM schrieb am 15.06.2012:
Warum kompliziert wenns auch einfach geht

String xCol = "#FF00DD";
Color c = System.Drawing.ColorTranslator.FromHtml(xCol);
 

Logge dich ein, um hier zu kommentieren!