C# 仅当MS图表标签位于系列之外时,才使用不同颜色

C# 仅当MS图表标签位于系列之外时,才使用不同颜色,c#,.net,mschart,series,C#,.net,Mschart,Series,上下文: 我正在使用MS Chart,如果值为callout(从系列中重新定位),则需要将系列标签设置为黑色 实际上,系列标签显示在系列内部,我正在根据系列颜色的暗/亮系数更新标签颜色。如果系列颜色为深色,则标签颜色将为白色,反之,如果系列颜色较浅,则标签颜色将为白色,使用以下代码 double brightnessWhite = 255; double brightnessBackColor = (backColor.R * 299 + backColor.G * 587 +

上下文: 我正在使用MS Chart,如果值为callout(从系列中重新定位),则需要将系列标签设置为黑色

实际上,系列标签显示在系列内部,我正在根据系列颜色的暗/亮系数更新标签颜色。如果系列颜色为深色,则标签颜色将为白色,反之,如果系列颜色较浅,则标签颜色将为白色,使用以下代码

    double brightnessWhite = 255;
    double brightnessBackColor = (backColor.R * 299 + backColor.G * 587 + backColor.B * 114) / 1000;
    double brightnessForeColor = (foreColor.R * 299 + foreColor.G * 587 + foreColor.B * 114) / 1000;

    double factor = brightnessForeColor - brightnessBackColor;
    double whiteFactor = brightnessWhite - brightnessBackColor;

    if (factor <= 110 && factor >= -140) // text not legible
    {
        color = (whiteFactor >= 110 && whiteFactor <= -140) ? Color.Black : Color.White;
    }

    return color;
double brightnessWhite=255;
双亮度backColor=(backColor.R*299+backColor.G*587+backColor.B*114)/1000;
双亮度前景色=(前景色.R*299+前景色.G*587+前景色.B*114)/1000;
双因子=亮度前景色-亮度背景色;
双白因子=brightnessWhite-brightnessBackColor;
if(factor=-140)//文本不清晰
{

color=(whiteFactor>=110&&whiteFactor那么,您使用调用颜色吗?(
callback/ForeColor
)调用颜色没有
ForColor
属性。