字体定义文本中单个字符的图形表示,例如其大小、显示样式、重量、颜色等。TTF(True Type Font) 在所有数字平台上都可以正常工作,并在 -屏幕和打印文档中。另一方面,WOFF (Web Open Font Format) 主要用于网页。它包含特定格式的压缩和附加的 XML 元数据。在某些情况下,我们可能需要将 True-type 字体转换为 Web 字体。在本文中,我们将学习如何使用 C# 将 TTF 转换为 WOFF。
本文将涵盖以下主题:
C# TTF 到 WOFF 转换器 API
为了将 TTF 转换为 WOFF,我们将使用 Aspose.Font for .NET API。它允许从 支持的字体类型 加载、保存和提取信息。请下载 API 的 DLL 或使用 NuGet 安装它。
PM> Install-Package Aspose.Font
使用 C# 将 TTF 转换为 WOFF
我们可以按照以下步骤轻松地将 True Type 字体 (TTF) 转换为 Web 开放字体 (WOFF):
- 首先,使用 FileSystemStreamSource 类加载字体文件。
- 接下来,使用源文件对象作为参数创建 FontFileDefinition 类的实例。
- 然后,初始化Font类型为TTF的FontDefinition类对象和FontFileDefinition对象。
- 之后,使用 Font.Open() 方法打开字体,并将 FontDefinition 对象作为参数。
- 最后调用SaveToFormat()方法保存。它将输出文件路径和 FontSavingFormats 到 WOFF 作为参数。
以下代码示例演示了如何使用 C# 将 TTF 转换为 WOFF。
// 此代码示例演示如何将 TTF 转换为 WOFF。
// TTF 文件路径
string fontPath = @"D:\Files\font\Montserrat-Regular.ttf";
// 加载字体文件
FileSystemStreamSource source = new FileSystemStreamSource(fontPath);
// 创建字体文件定义
FontFileDefinition fileDefinition = new FontFileDefinition(source);
// 创建字体定义
FontDefinition fontDefinition = new FontDefinition(FontType.TTF, fileDefinition);
// 打开字体
Font font = Font.Open(fontDefinition);
// WOFF 输出路径
string outPath = @"D:\Files\font\TtfToWoff_out1.woff";
FileStream outStream = File.Create(outPath);
// 将 TTF 转换为 WOFF
font.SaveToFormat(outStream, FontSavingFormats.WOFF);
在 C# 中将 TTF 转换为 WOFF2
WOFF2 是 WOFF 的更新版本。它提供了更多的压缩,因为它的文件大小更小,并为现代浏览器提供了更好的性能。我们也可以按照前面提到的步骤将 TTF 转换为 WOFF2。但是,我们只需要在最后一步中将 FontSavingFormats 设置为 WOFF2。
以下代码示例演示了如何使用 C# 将 TTF 转换为 WOFF2。
// 此代码示例演示如何将 TTF 转换为 WOFF2。
// TTF 文件路径
string fontPath = @"D:\Files\font\Montserrat-Regular.ttf";
// 加载字体文件
FileSystemStreamSource source = new FileSystemStreamSource(fontPath);
// 创建字体文件定义
FontFileDefinition fileDefinition = new FontFileDefinition(source);
// 创建字体定义
FontDefinition fontDefinition = new FontDefinition(FontType.TTF, fileDefinition);
// 打开字体
Font font = Font.Open(fontDefinition);
// WOFF 输出路径
string outPath = @"D:\Files\font\TtfToWoff_out1.woff";
FileStream outStream = File.Create(outPath);
// 将 TTF 转换为 WOFF
font.SaveToFormat(outStream, FontSavingFormats.WOFF2);
获得免费许可证
您可以获得免费的临时许可证 试用该库而不受评估限制。
结论
在本文中,我们学习了如何在 C# 中将 True Type 字体转换为 Web 开放字体。我们还看到了如何以编程方式将 TTF 保存为 WOFF2。此外,您可以使用 documentation 了解更多关于 Aspose.Font for .NET API 的信息。如有任何歧义,请随时在我们的 免费支持论坛 上与我们联系。