You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用EPPlus生成Excel时勾选符号显示异常求助

EPPlus生成Excel勾选符号显示异常解决办法

问题场景

用EPPlus生成Excel时,想让部分单元格显示方框勾选符号,当前代码如下:

using (ExcelRange Rng = wsSheet.Cells[col])
{
  Rng.Value = Beneficiary.IDentityOrFamilyBookCheck;// 该值为 ü
  Rng.Style.Font.SetFromFont("Wingdings", 16);
  Rng.Style.Font.Charset = 178;
}

按上述配置应该显示标准勾选符号,但实际显示为非预期的异常符号,预期是方框内带勾选的样式。

问题原因

  1. Wingdings字体中,方框勾选符号对应的字符并非ü,字符映射错误导致显示异常;
  2. 设置的字符集Charset=178是Windows Baltic字符集,不匹配Wingdings字体的字符映射规则,进一步导致显示错乱。

解决方案

方案1:使用Wingdings字体的正确字符

Wingdings字体里,方框勾选符号对应的十进制字符代码是252,直接赋值该字符并修正字符集:

using (ExcelRange Rng = wsSheet.Cells[col])
{
    // 赋值Wingdings字体对应的方框勾选字符
    Rng.Value = ((char)252).ToString();
    Rng.Style.Font.Name = "Wingdings";
    Rng.Style.Font.Size = 16;
    // 设置ANSI字符集,匹配Wingdings的映射规则
    Rng.Style.Font.Charset = 0;
}

方案2:直接使用Unicode勾选符号

如果不想依赖Wingdings字体,可直接使用Unicode标准的方框勾选符号☑,无需特殊字体设置:

using (ExcelRange Rng = wsSheet.Cells[col])
{
    Rng.Value = "☑";
    Rng.Style.Font.Size = 16;
}

内容的提问来源于stack exchange,提问作者Taha Babi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 09:55:24