字体子集化工具

通过创建字体子集来减小 Web 字体文件的大小。仅保留您需要的字符,支持自定义字符、Unicode 范围和实时预览。提升您的网站性能和核心网页指标。

广告
广告

字体子集化器通过只提取您实际需要的字符(字形)来减小字体文件大小。完整的字体文件可能包含数千个多种语言的字形,但网站通常只使用几百个。将字体从 500 KB 子集化为 50 KB 可显著提高页面加载速度。此工具使用 HarfBuzz (hb-subset) 在本地处理字体——不上传任何字体文件。

不上传即可将字体文件缩小 80-95%

只保留您网站实际使用的字符。支持 TTF、OTF、WOFF 和 WOFF2,带 Unicode 范围和实时预览——全部在浏览器中。

更快页面加载
100% 私密
免费无限

使用步骤

  1. 1

    上传字体

    使用拖放区域上传您的 .TTF, .OTF, .WOFF 或 .WOFF2 字体文件。

  2. 2

    指定字符

    在文本框中输入您网站上实际使用的所有字符。您还可以添加常见的 Unicode 范围,例如用于中文字符的 U+4E00-9FFF。

  3. 3

    子集化并下载

    点击“创建子集”。输出格式(TTF 或 OTF)根据字体的轮廓格式自动确定。下载优化后的字体并在您的项目中使用。

为什么要对字体进行子集化?

更快的页面加载

较小的字体文件下载速度更快,从而改善 LCP(最大内容绘制)指标,这对于网站性能至关重要。

更好的用户体验

用户能更快地看到您的文本内容,减少等待时间,从而降低跳出率并提高满意度。

改进的核心网页指标

页面速度是 Google 等搜索引擎的关键排名因素。优化字体是提高核心网页指标分数的有效方法。

100% 私密

您的字体文件在本地处理。永不上传、永不存储、永不发送到服务器。

广告

了解字体子集化

为什么字体文件这么大

现代字体文件(OTF、TTF、WOFF、WOFF2)包含的内容远不止字母形状。典型的拉丁字体包括大小写字母、数字、标点符号、重音字符、连字、替代字形、字距对和 OpenType 功能(小型大写、旧式数字、上下文替代)。一个完整的字体系列可以包含 1,000+ 个字形。当您在一个只显示英文的网站上使用字体时,您正在加载 90% 未使用的字体数据——浪费带宽并减慢页面加载。

字体子集化通过只提取您需要的字形来解决这个问题。对于纯英文网站,您可能只需要 95 个可打印 ASCII 字符——将字体从 500 KB 减少到 20-50 KB。对于使用基本拉丁字母 + 常用重音字符的网站,您可能需要 200 个字形。子集化工具使用 HarfBuzz (hb-subset)——与 Chrome 和 Android 文字排版相同的开源引擎——解析字体,仅保留请求的字形及其依赖的全部数据(复合部件、GSUB/GPOS 特性、字距、度量、提示指令),并序列化为受支持表全部完好的有效字体文件。

WOFF2 格式在子集化之上提供额外压缩。WOFF2 使用 Brotli 压缩,比 WOFF 小 20-40%。所有现代浏览器都支持 WOFF2。最佳方法是将字体子集化为所需字形,然后编码为 WOFF2 以获得最大压缩。一个 500 KB 的 TTF 字体可以减少到 15 KB 的 WOFF2 子集——减少 97%。

广告

实用的子集化策略

对于大多数网站,最简单的策略是子集化为 Unicode 基本拉丁范围(U+0020 到 U+007E),覆盖所有 ASCII 字符。这对英文内容足够了。对于多语言网站,子集化为每种语言所需的特定 Unicode 范围,并使用 CSS 的 unicode-range 属性仅为每个页面加载相关子集。Google Fonts 使用此技术——它根据页面内容提供不同的子集。

子集化时,注意不要移除 OpenType 功能引用的字形。例如,小型大写功能 (smcp) 用小型大写版本替换小写字母——如果您移除小型大写字形,该功能将失效。我们的工具保留字体的功能定义,但只包含您指定的字形。如果您需要 OpenType 功能,请包括这些功能引用的所有字形。对于网页正文,通常最好禁用复杂的 OpenType 功能并只子集化为基本字母形式。

广告

与其他字体子集化工具的对比

流行的字体子集化工具的并排对比。

功能NeatForgeFont SquirrelEverything Fonts
隐私(无上传)100% 浏览器本地上传到服务器上传到服务器
TTF/OTF/WOFF/WOFF2 输入所有格式有限
WOFF2 输出仅 TTF/OTF
自定义字符集有限
保留 OpenType 功能
彩色 emoji 字体 (COLR/CBDT)
无需注册需要邮箱

Font Squirrel 和其他基于服务器的子集化工具需要上传您的字体文件。我们的工具使用 HarfBuzz (hb-subset) 完全在浏览器中解析和子集化字体——您的自定义或授权字体绝不会离开您的设备。

常见问题

我的字体文件安全吗?会被上传吗?
是的,100% 安全。所有字体处理都在您的浏览器中本地进行。您的字体文件从未上传到我们的服务器,确保您的数据保持私密。
为什么子集化后我的字体文件变大了?
对于非常小或高度优化的原始字体,这可能会发生。子集化保留字体已有的表结构、仅移除未使用的字形,但每种字体都有固定的结构开销(文件头、表目录、名称记录、排版特性等)。对于极小的字体,这部分开销占主导,子集反而可能略大于原文件。如果发生这种情况,说明您的字体已经非常高效,您应该继续使用原始文件。这种情况最常见于原本字符不足 100 个的字体,或已经子集化过的字体。对于大多数字体(500+ 字形),子集化为 50-100 个字符可减小 80-95% 的体积。实时预览会在下载前显示预期文件大小。
为什么输出格式是自动确定的(TTF 或 OTF)?
输出格式跟随字体自身的轮廓格式:TrueType 轮廓(glyf)输出 TTF,CFF 轮廓输出 OTF。两种轮廓格式之间转换需要重新绘制所有字形,因此工具保持原始轮廓数据不变,使容器与之匹配。子集化后,最佳做法是使用专用转换器将生成的字体转换为 `.woff2` 格式以获得最大压缩(通常比 TTF/OTF 小 30-50%)。
我可以在商业项目中使用子集化字体吗?
您必须遵守您上传的原始字体的许可证。对字体进行子集化不会更改其许可证。确保您有权修改并将字体用于您的目的。
字体文件大小可以减少多少?
减少量取决于原始字体大小和保留的字符数量。典型的拉丁字体包含 400-700 个字形(包括大小写字母、数字、标点符号、重音字符和符号),TTF 格式为 80-200 KB。如果您只子集化为典型英文网站使用的 50-80 个字符(A-Z、a-z、0-9、基本标点),文件大小将降至 15-40 KB——减少 80%。CJK 字体(中文、日文、韩文)可能大得多(5-20 MB),因为它们包含数千个字符。将 CJK 字体子集化为最常用的 2,000 个字符可减少 90% 以上的文件大小。
子集应包含哪些字符?
至少包括您网站上出现的所有字符:大写 A-Z、小写 a-z、数字 0-9,以及内容中使用的所有标点符号。还包括内容特有的任何特殊字符(货币符号、数学运算符、箭头)。对于多语言网站,包括您支持的每种语言的重音字符。对于 CJK 网站,包括您语言中最常用的 1,000-3,500 个字符。一个好的方法是扫描您网站的文本内容并提取唯一字符集——这确保您不会遗漏任何字符,同时保持子集尽可能小。
什么是 Unicode 范围?如何使用?
Unicode 范围(如大写 A-Z 的 U+0041-005A)指定 Unicode 标准中的连续字符块。工具接受单个字符和 Unicode 范围。例如,'A-Za-z0-9' 指定所有 ASCII 字母和数字。'U+4E00-9FFF' 指定 CJK 统一表意文字块(常用汉字)。'U+3040-309F' 指定平假名(日文)。您可以组合字符和范围:'Hello World U+4E00-9FFF' 将包含 'Hello World' 中的字符加上所有常用汉字。这对于需要拉丁和 CJK 字符的多语言网站很有用。
子集化会影响字体渲染质量吗?
不会。子集化保留与原始字体完全相同的字形轮廓、提示指令和字距对——它只是移除您不需要的字形。子集字体中保留的字符将在所有尺寸下与原始字体相同地渲染。唯一的可见区别是未包含在子集中的字符将不会渲染(它们将回退到浏览器的默认字体或显示为空白框)。这就是为什么包含您网站使用的所有字符很重要。实时预览让您在下载前验证所有文本是否正确渲染。
支持彩色 emoji 字体(如 Noto Color Emoji)吗?
支持。本工具完整支持彩色 emoji 字体:CBDT/CBLC(位图彩色,Noto Color Emoji 使用)与 COLR/CPAL(矢量彩色,Noto Color Emoji COLR 版、Twemoji、Segoe UI Emoji 等使用)的彩色数据会被正确裁剪保留。例如,将约 10 MB 的 Noto Color Emoji 子集化为几个 emoji 后只有几 KB,且选中的 emoji 仍能以彩色渲染。一个限制:Apple 的 sbix 表与旧版 SVG 表无法由浏览器端引擎重新裁剪,将被丢弃并给出提示;COLR/CBDT 彩色数据不受影响。

您的隐私是我们的优先事项

此工具完全在您的浏览器中运行。您的文件不会被上传到服务器、存储或分析。

  • 我们不上传、不存储、不分析您的文件。
  • 您处理的一切都保留在您的设备上。
  • 该工具从本地内存读取您的字体文件,解析字体表(字形、字距、度量、提示指令),创建仅包含指定字符的新字体并生成输出文件——全程不产生任何网络请求。
  • 没有任何记录字体文件名或字符选择的服务器端日志,没有跟踪使用模式的分析,没有任何形式的持久化存储。
  • 关闭浏览器标签页后,所有字体数据和子集配置会立即从内存中清除。
  • 因此,该工具可安全用于专有字体、授权商用字体、品牌定制字体,以及任何字体文件不应暴露给第三方服务器的场景。
  • 页面初次加载后,该工具还可离线使用。

即使您的互联网连接断开,您的文件也是安全的。

你可能还喜欢

相关指南

广告