配置呈现电子表格的字体
Contents
[
Hide
]
可能的使用场景
Aspose.Cells API 提供了以图像格式呈现电子表格并将其转换为 PDF 和 XPS 格式的工具。为了最大限度地提高转换保真度,电子表格中使用的字体必须在操作系统的默认字体目录中可用。如果所需字体不存在,则 Aspose.Cells API 将尝试用可用字体替换所需字体。
字体选择
以下是 Aspose.Cells API 在幕后遵循的过程。
- API 尝试在文件系统中查找与电子表格中使用的确切字体名称匹配的字体。
- 如果 API 找不到名称完全相同的字体,它会尝试使用工作簿下指定的默认字体**DefaultStyle.Font**财产。
- 如果API找不到工作簿下定义的字体**DefaultStyle.Font**属性,它会尝试使用下面指定的字体**PdfSaveOptions.DefaultFont**要么**ImageOrPrintOptions.DefaultFont**财产。
- 如果API找不到下定义的字体**PdfSaveOptions.DefaultFont**要么**ImageOrPrintOptions.DefaultFont**属性,它会尝试使用下面指定的字体**FontConfigs.DefaultFontName**财产。
- 如果API找不到下定义的字体**FontConfigs.DefaultFontName**属性,它会尝试从所有可用字体中选择最合适的字体。
- 最后,如果 API 在文件系统上找不到任何字体,它会使用 Arial 呈现电子表格。
设置自定义字体文件夹
Aspose.Cells API 在操作系统的默认字体目录中搜索所需的字体。如果所需的字体在系统的字体目录中不可用,则 API 会搜索自定义(用户定义的)目录。这**字体配置**类公开了许多设置自定义字体目录的方法,如下所述。
- FontConfigs.SetFontFolder:如果只设置一个文件夹,此方法很有用。
- FontConfigs.SetFontFolders:当字体位于多个文件夹中并且用户希望单独设置所有文件夹而不是将所有字体组合在一个文件夹中时,此方法很有用。
- FontConfigs.SetFontSources:当用户希望从多个文件夹或单个字体文件或字节数组中加载字体数据时,此机制很有用。
两个都**FontConfigs.SetFontFolder** & **FontConfigs.SetFontFolders**方法接受布尔类型的第二个参数。通过**真的**因为第二个参数将指示 Aspose.Cells API 在子文件夹中搜索字体文件。
请在申请开始时使用上述任何一种方法,即;在调用 Aspose.Cells API 的任何其他对象之前。
如果上述所有方法都用于设置字体源,则只有最后的设置生效。
字体替换机制
Aspose.Cells API 还提供了为呈现目的指定替代字体的能力。当必须进行转换的机器上所需的字体不可用时,此机制很有用。用户可以提供一个字体名称列表来替代最初需要的字体。为了实现这一点,Aspose.Cells API 公开了**FontConfigs.SetFontSubstitutes**接受2个参数的方法。第一个参数是类型**细绳** 这应该是需要替换的字体的名称。第二个参数是类型数组**细绳**.用户可以提供字体名称列表作为原始字体名称(在第一个参数中指定)的替代。
下面是一个简单的使用场景。
信息收集
除了上述方法外,Aspose.Cells API 还提供了收集有关已设置的源和替换信息的方法。
- **FontConfigs.GetFontSources方法返回类型数组FontSourceBase包含指定字体源的列表。如果没有设置源,则FontConfigs.GetFontSources**方法将返回一个空数组。
- FontConfigs.GetFontSubstitutes方法接受类型参数细绳允许指定已设置替换的字体名称。如果没有为指定的字体名称设置替换,则**FontConfigs.GetFontSubstitutes**方法将返回 null。