Xaml 文字列から LinearGradientBrush を解析しようとしていますがColorConverter.ConvertFromString
、通常のテキストまたは html の色変換に問題なく使用しています。
最近、ScRGB フォーマット"sc#scA, scR, scG, scB"を使用して、Adobe Illustrator から Expression Blend に解析されたいくつかの色に出会いました。ScA
構造体からColor
の値が値を間違って解析しているように見えるため、それは ColorConverter を壊しているようです。たとえば、0.2 は 2 になり、0.5 は 5 になります。
私のコードはかなり簡単です:
string colorStr = "sc#0.117647059, 0, 0, 0";
Color color = (Color)ColorConverter.ConvertFromString(colorStr);
Console.WriteLine(color.ScA);
出力: 1,176471E+08、予想: 0,1176471
これは .NET Framework のバグですか (私は 4 を使用しています)? 回避策はありますか? 誰もクリーンフィックスを持っていますか?