[]
        
立即试用
(Showing Draft Content)

备选字体查找策略

GcExcel 提供了字体配置功能,当导出PDF时,您可以自定义 GcExcel 使用何种字体。

但当使用的字体,在提供的字体中不存在时,GcExcel 会根据备选字体的策略,规避因为没有字体导致导出后乱码的问题。

备选策略分为三部分,按顺序依次匹配合适的字体。

从内置字体列表中选择

GcExcel 会优先用户所提供的字体中是否有在以下列表中的字体,顺序会按照字母顺序进行寻找。





  • Arial

  • Arial Unicode MS

  • Batang

  • Cambria Math

  • Courier New

  • Dotum

  • Ebrima

  • Gadugi

  • Gulim

  • Gungsuh

  • Javanese Text

  • Khmer UI

  • Lao UI

  • Leelawadee UI

  • Lucida Sans Unicode

  • Malgun Gothic

  • Meiryo

  • Microsoft Himalaya

  • Microsoft JhengHei

  • Microsoft New Tai Lue

  • Microsoft Tai Le

  • Microsoft YaHei

  • Microsoft Yi Baiti

  • MingLiu

  • Mongolian Baiti

  • MS PMincho

  • MS UI Gothic

  • MV Boli

  • Myanmar Text

  • Nirmala UI

  • Segoe MDL2 Assets

  • segoe UI

  • Segoe UI Historic

  • Segoe UI symbol

  • SimSun

  • Tahoma

  • Times New Roman

  • Verdana

  • Yu Gothic

  • Yu Mincho

从已经使用的字体中选择

如果您提供的所有字体都未在上述列表中出现过,GcExcel 会从已经使用过的字体列表中,挨个尝试渲染内容。

如果所有字体都不能正常渲染内容,则会进入下一规则。

顺序将遵循字体使用的先后顺序,对于同一个导出任务,顺序将保持一致。

从未使用过的字体中选择

当内置字体列表和已使用字体列表中,都没有合适的字体,GcExcel 会尝试从指定字体列表中,其他未使用的字体里尝试寻找可以渲染内容的字体。

此顺序将遵循字母排序。

示例

为了方便理解,这里提供一个示例,用来解释规则。

  • 在 GcExcel 中,假设给内容设置的为“宋体”

  • 提供给 GcExcel 可使用的字体列表中有“隶书”

  1. 当导出时,因为提供的字体里没有“宋体”,所以会进入备选字体查找的策略,按顺序适配三条规则。

  2. GcExcel 在第一条规则中,从列表中按顺序查找是否有字体,用户已经提供了。但因为 “隶书” 不在列表中,虽然提供给 GcExcel,也不会被加载,因此进入第二个规则。

  3. 在我们的例子中,假设之前没有任何字体被使用。因此在第二个规则中,因为没有出现过使用的字体,会进入第三个规则。

  4. 在第三个规则中,GcExcel 检测未使用的字体 “隶书”,发现字体适合显示中文内容,则使用该字体。

  5. 最终导出时,PDF会使用隶书渲染内容。