# 字体子集工具

将字体缩减为你实际使用的字符。上传 TTF、OTF、WOFF 或 WOFF2 文件，输入要保留的字符，或列出 Unicode 个范围（例如 U+0000-00FF），然后下载只包含这些字形、其组件和 .notdef 字形的较小字体。网络开发者可用它来缩减字体下载量，设计师则可用它来交付标题或徽标字体。轮廓、微调信息和度量数据均会保留。

## 常见问题

### 字体子集化工具会在新字体中保留什么？

它会保留你指定且字体中存在的字符对应的字形、这些字形所需的所有组件字形，以及用于显示缺失字符的第 0 号字形（notdef 字形）。轮廓、TrueType hinting 程序、前进宽度、名称表和 OS/2 表都会复制，并且只会为保留的字符写入新的字符映射表。

### 如何输入要保留的字符？

在字符框中输入或粘贴字符，例如标题、字母表或符号列表。每个 Unicode 字符只计一次，因此重复字母不增加数量；包含空格时也会保留空格。字符框最多可接受 20,000 个字符。

### 如何输入 Unicode 范围？

单个码点可写作 U+0041，范围可写作 U+0020-007E，也可使用纯十六进制格式，例如 0041-005A；多个值之间用逗号、空格或分号分隔。范围最高可到 U+10FFFF，字段最多接受 5,000 个字符。你可以将范围与字符框中的字符组合使用，工具会保留两者的并集。

### 可以上传哪些字体文件？

支持带 TrueType 或 CFF 轮廓的 TTF 和 OTF 文件，以及 WOFF 和 WOFF2 网页字体；每个文件最多 10 MiB，解压后最多 30 MiB。不支持字体集合（TTC）和 CFF2 可变字体。你可以一次上传多个字体，每个字体都会使用相同设置进行子集化。

### 可以选择哪些输出格式？

“与输入相同”会返回你上传的容器格式。选择 TTF 或 OTF 会输出未压缩字体：TrueType 轮廓输出为 TTF，CFF 轮廓输出为 OTF。WOFF 和 WOFF2 会压缩结果以供网页使用，通常 WOFF2 文件最小。

### 字距调整、连字和其他 OpenType 功能会保留吗？

不会。GSUB、GPOS、GDEF 和 kern 表引用的字形 ID 会在子集化过程中发生变化，因此这些表会被移除，以免指向错误的字形。使用子集字体排版时，每个字形都会采用其默认前进宽度，不会应用字偶间距调整或连字替换。如果需要在精简后的字体中保留这些功能，请使用支持功能感知的工具保留相关字形，或直接提供完整字体。

### 子集化可变字体后会发生什么？

结果是默认实例下的静态字体，也就是字体设计者选定的起始位置。fvar 和 gvar 等变化表不会被复制，因此各个轴都会消失。子集化之前，可以使用 Font Info 查看可变字体的默认值。

### 为什么我的字体被拒绝了？

某些字体会在 OS/2 表的 fsType 字段中设置禁止子集化标志，工具会遵守这一许可限制。无法解析的字体、字体集合和 CFF2 字体也会被拒绝，并显示相应消息。尝试之前，可以使用 Font Info 查看字体的嵌入权限。

### 如果字体中没有我需要的任何字符呢？

工具会停止并显示消息，而不会返回空字体。只要请求的字符中至少有一个存在，字体不包含的字符就会被静默跳过。Font Glyph Viewer 会列出字体映射的所有字符和范围，你可以先用它检查字符覆盖范围。

### 子集字体会保留字形名称吗？字体会被保存吗？

字形名称会被丢弃，因为与大多数网页字体工具一样，子集化会写入 3 版 post 表以缩小文件。字体只会在本次请求期间于内存中处理，并在返回结果后立即丢弃。字体及其字符信息都不会被保存。

在这里投放广告？

[给我们发邮件](mailto:hi@dennn.is?subject=%E5%9C%A8%20OneClick%20Pro%20%E4%B8%8A%E6%8A%95%E6%94%BE%E5%B9%BF%E5%91%8A)

[广告 适用于 WordPress 的智能体就绪型插件套件。](https://sleekwp.com/?ref=oneclickpro)
