本文介绍如何使用线上工具 https://lab.quizzman.com/jck/。若想了解产品概念,可参阅〈Quizzman JCK Font Engine 是什么?〉;工具介绍请参阅 about-jck。
开始之前
- 开启:
https://lab.quizzman.com/jck/
(Glyph Synthesis Lab,字形合成实验室)
- 检查 API 是否正常:
https://lab.quizzman.com/api/jck/health
预期回传:
"status":"ok"
- 公开使用者可直接:
- 预览(Preview) - 合成字形(Synthesize)
若需:
- 储存 Project - 建立字型(Build Font)
通常需要登入 Quizzman ID,并具有相应权限。
介面组成
主要包含以下几个区域:
- Composer/IDS(IDS 编辑器)
输入或选择 IDS(Ideographic Description Sequence,汉字描述序列)运算子,例如 ⿰、⿱、⿲、⿳,並配置各个部件。
- Slot Controls(区块控制)
调整:
- 比例(Ratio) - 水平/垂直缩放(Scale) - 部件间距(Gap)
- SVG Preview(SVG 即时预览)
即时显示合成字形,同时提供 Quality Score(品质评分)。
- Project(专案)
管理已建立字形,可批次建置并下载 ZIP。
第一步:建立 IDS 字形
- 选择适合的 IDS 结构。
例如:
左右结构:
⿰
上下结构:
⿱
- 将各部件放入对应 Slot。
例如:
- 左
- 右
- 上
- 下
- SVG Preview 将立即更新。
- 观察:
- Quality Score
- 是否重叠(Overlap)
- 是否失衡
- 是否缺少 Coverage
建议依序调整:
Ratio → Scale → Gap
不要一次把所有参数调到极限,以免字形变形。
第二步:微调版面
每个 Slot 都可调整:
- 空间比例(Ratio)
- 水平/垂直缩放(Scale)
- 元件距离(Gap)
目标是:
- 一般阅读大小清楚
- 放大检视仍保持平衡
- 各部件不互相碰撞
第三步:加入 Project
当预览满意后:
- 将字形加入 Project。
- 重复建立其他字形。
- 在 Project 页面快速检查整批结果。
例如:
- 一课教材
- 一本字典
- 一组汉字资料
皆可集中管理。
第四步:Build 并汇出字型
可输出:
- OTF(OpenType Font,OpenType 字型)
- TTF(TrueType Font,TrueType 字型)
- WOFF2(Web Open Font Format 2,Web 字型格式)
流程如下:
- 选择输出格式。
- 执行 Build(若需要权限,请先登入)。
- 下载 ZIP。
ZIP 通常包含:
- Font
- Manifest(字元、Code Point、IDS 等资讯)
之后可于:
- 网站
- App
- 编辑器
测试字型是否正常。
若字形异常,可比对 Manifest 与 IDS。
Base Font Merge
JCK Font Engine 可与既有字型合并,例如:
- Nom Na Tong
- LXGW WenKai
使新生成的 Glyph(字形)与既有 CJK 字型风格保持一致。
可依不同专案选择:
- 汉喃字型
- 现代 CJK 字型
等不同 Profile。
第五步:API 整合
公开 API 包括:
| 功能 | Endpoint | |------|----------| | Health | GET /api/jck/health | | Catalog | GET /api/jck/catalog | | Synthesize | POST /api/jck/... |
完整 API 前缀:
https://lab.quizzman.com/api/jck/
常见整合流程:
- 批次建立字型
- 产生 WOFF2
- 部署至网站
或:
先产生 SVG Preview,
确认后再批次 Build Font。
常见问题
无法 Build?
Build 与 Project 属于登入功能。
请先登入 Quizzman ID,再重新开启 /jck/。
网站仍显示 tofu(□)?
请确认:
font-family是否设定正确- WOFF2 是否已部署
- Manifest 是否包含对应 Unicode Code Point
IDS 没错,但字形不好看?
通常可重新调整:
- Ratio
- Scale
- Gap
若 Quality Score 偏低,
通常代表:
- 元件碰撞(Collision)
- 版面失衡
「约 87,720 个字元」代表什么?
这代表目前 Catalog 已汇入约 87,720 个字元。
并不代表每次 Build 都会输出全部字型。
建置完成检查清单
- [ ] Health API 回传
ok - [ ] SVG Preview 在不同字级均正常
- [ ] Project 已包含所有需要的字形
- [ ] ZIP 包含 Font 与 Manifest
- [ ] 已于浏览器或目标 App 完成测试
相关连结
JCK Font Engine
https://lab.quizzman.com/jck/
About JCK
https://lab.quizzman.com/tool/about-jck
产品介绍
https://wiki.quizzman.com/wiki/quizzman-jck-font-engine-la-gi-tong-hop-glyph-han-nom-tu-ids