加载和提取数据| .NET
Contents
[
Hide
Show
]从光盘加载CFF字体
适用于 .NET 的 Aspose.Font API可让您从存储在数字存储中的文件中读取CFF字体类型。可以使用以下步骤加载存储在光盘上的CFF字体文件。
- 创建一个
FontFileDefinition,指定扩展名cff和用于字体文件的FileSystemStreamSource。 - 使用
FontType.CFF和该文件定义创建一个FontDefinition。 - 调用
Font.Open并将结果转换为CffFont。如果结果不是 CFF 字体,此示例会抛出异常。
两个示例都使用 DataDir 下的 CFF/29645.cff 文件,DataDir 指向示例项目中的 tests-data/Aspose.Font 目录。在应用程序中使用这些代码片段时,请将 DataDir 设置为字体数据目录。请导入 System、System.IO、Aspose.Font、Aspose.Font.Cff 和 Aspose.Font.Sources 命名空间。
1// Load a CFF font from disk
2
3string fileName = Path.Combine(DataDir, "CFF", "29645.cff");
4FontDefinition fontDefinition = new FontDefinition(FontType.CFF,
5 new FontFileDefinition("cff", new FileSystemStreamSource(fileName)));
6CffFont cffFont = Font.Open(fontDefinition) as CffFont
7 ?? throw new InvalidOperationException("Expected a CFF font.");从字节数组加载CFF字体
以下示例使用 File.ReadAllBytes 将 CFF 文件读入字节数组,然后使用 ByteContentStreamSource 加载字体。
1// Load a CFF font from a byte array
2
3byte[] fontMemoryData = File.ReadAllBytes(Path.Combine(DataDir, "CFF", "29645.cff"));
4FontDefinition fontDefinition = new FontDefinition(FontType.CFF,
5 new FontFileDefinition("cff", new ByteContentStreamSource(fontMemoryData)));
6CffFont cffFont = Font.Open(fontDefinition) as CffFont
7 ?? throw new InvalidOperationException("Expected a CFF font.");