【问题标题】:How can I assign a color to a font in EPPlus?如何为 EPPlus 中的字体分配颜色?
【发布时间】:2016-12-18 19:55:44
【问题描述】:

我可以像这样设置单元格或单元格范围的背景颜色:

rowRngprogramParamsRange.Style.Fill.PatternType = ExcelFillStyle.Solid;
rowRngprogramParamsRange.Style.Fill.BackgroundColor.SetColor(Color.DarkRed);

不过,我无法设置字体颜色。我试过这个:

rowRngprogramParamsRange.Style.Font.Color = Color.Red;

...使用两个错误消息编译失败:第一个是我无法将 System.Drawing.Color 分配给 OfficeOpenXml.Style.ExcelColor,第二个是该属性无论如何都是只读的。

只是为了忍俊不禁,我尝试铸造价值:

rowRngprogramParamsRange.Style.Font.Color = (OfficeOpenXml.Style.ExcelColor)Color.Red;

...我现在得到,“无法将类型 'System.Drawing.Color' 转换为 'OfficeOpenXml.Style.ExcelColor'

EPPlus 中的大部分内容都非常简单,当然比 Excel Interop 更容易,但这让我感到困惑。 如何为 EPPlus 中的范围内的字体分配颜色?

【问题讨论】:

    标签: c# excel-2007 epplus epplus-4 system.drawing.color


    【解决方案1】:

    此外,我想说,如果您想要确切的 excel 颜色,我发现的最佳方法是将显示所需颜色的 excel 电子表格的屏幕截图复制到 ms paint 中,以从那里获取其十六进制代码.之后,您只需添加这样获得的 rgb 代码。

    rowRngprogramParamsRange.Style.Font.Color.SetColor(0, 244, 176, 132)
    

    第一个参数可以保持为0。 当前颜色是橙色调 2 浅色 40。 淡鲑鱼很接近,但不完全是..

    【讨论】:

    • 如何从 Paint 中获取 RGB?
    • 有一个看起来像滴管的工具,可以让你复制颜色。您复制所需的颜色,然后在颜色右侧,有用于修改颜色的按钮。弹窗右下角会显示rgb代码。
    【解决方案2】:

    假设Style.Fill.BackgroundColorStyle.Font.Color 都是ExcelColor 类型是安全的,所以只需使用与设置背景颜色相同的SetColor() 方法。

    rowRngprogramParamsRange.Style.Font.Color.SetColor(Color.Red);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-12-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-08
      • 1970-01-01
      • 2021-03-07
      • 1970-01-01
      相关资源
      最近更新 更多