创建 TTF 字体子集
.NET API 解决方案生成 TrueType 字体子集
Aspose.Font API 解决方案提供了丰富的字体处理功能。转换、字形操作、拉丁字符检测等。这里我们将探讨字体子集化功能。
Font subsetting 是一种强大的技术,可优化网页性能并提供语言特定支持,同时最小化文件大小和加载时间。随着在线内容的多样化和对多语言受众的需求增加,字体子集为网页设计师和开发者提供了实用的解决方案。让我们进一步了解字体子集化的优势:
在网页或应用程序中包含字体的完整字符集会导致文件体积庞大,导致加载缓慢和带宽占用增加。通过创建字体子集,您可以显著减少文件大小,从而提升网页性能和加载时间。
字体子集仅包含渲染特定内容所需的字符。排除未使用的字符,可在使用设计工具时更易于管理字体文件。字体子集还让设计师对网页项目的排版和视觉形象拥有更大的控制。通过它们,设计师可以确保一致性并保持项目的预期美感。
不同的语言和文字需要特定的字符、重音符、变音符和连字。因此,定制的子集确保必要的字形被包含,页面能够良好呈现。
字体子集可以自定义以包含特定字符,确保符合可访问性标准,使您的网页项目更加包容。
因此,生成更小的字体文件为您带来诸多好处,Aspose 提供了多种工具。您可以使用跨平台的 Font Generator 创建子集,或像下面的 C# 示例一样自行编码,使用 Aspose.Font API 解决方案。
运行示例所需条件:
Aspose.Font for .NET API,这是一款功能丰富、强大且易于使用的文档操作和转换 API,适用于 C# 平台。
打开 NuGet 包管理器,搜索 Aspose.Font 并安装。您也可以在包管理器控制台中使用以下命令。
Package Manager Console Command
PM> Install-Package Aspose.Font
使用 C# 生成字体的步骤:
此代码演示如何使用 IFontCharactersMerger 接口,通过将原始字体的特定字形合并到新字体中来创建子集,并将结果字体保存为 TTF 文件。
- 指定输入字体。
- 使用 IFontCharactersMerger.MergeFonts() 方法创建包含所需字形的子集。
- 使用 Save() 方法保存生成的字体。
创建子集的 C# 代码
using Aspose.Font.Ttf;
using Aspose.Font.TtfHelpers; // Original font to take glyphs from
TtfFont srcFont;
//To create a font we use functionality of the IFontCharactersMerger interface.
IFontCharactersMerger merger = HelpersFactory.GetFontCharactersMerger(srcFont, srcFont);
TtfFont destFont = merger.MergeFonts(new uint[] { 'a', 'c', 'e' }, new uint[0], "TestFont");
//Save resultant font
destFont.Save("TestFont.ttf");常问问题
1. 什么是字体子集?
字体子集是指与原始字体文件相比较小的字体子集,仅包含特定文档或网页中使用的字符,可以显着减小文档或网页的文件大小。
2. 我可以在线创建字体子集吗?
是的,有一个专门为此类任务开发的跨平台 Aspose Font Generator 。
3. Aspose.Font 中的子集化功能如何工作?
在Aspose.Font中,子集功能是通过合并功能实现的。它允许您从几种字体或单一字体创建子集。