汉字字形 SVG 库整理

  整理了汉字字形 SVG,包括甲骨、金文、篆书、隶书,加上楷、行、草、宋、黑等十个书体层,十四万个字形,每字一个 SVG 文件。

  资源都来自于网上,版权分类整理了下,上传到了 GitHub。

预览

  https://zhouyongh.github.io/hanzi-glyphs-svg/

  每个字都做了记录:出自哪片甲骨、哪件铜器、哪部书的哪一篇;六个现代书体层,则记到字体与版本。

有什么

书体 字形 许可
甲骨文 11,416(另 1,203 个轮廓) CC0 / CC BY 4.0
金文 8,290 CC0
篆书 10,591 CC0
隶书 11,947 CC0
楷书 6,763 OFL 1.1
行书 6,763 OFL 1.1
草书 6,763 OFL 1.1
宋体·简 27,797 OFL 1.1
宋体·繁 17,665 OFL 1.1
黑体·港 31,598 OFL 1.1

文件名就是键

  古文字没有 Unicode 码位,一字多形是常态,文件名不能按现代字取。金文、隶书用条目号------一个现代字在不同器物、不同时代各一条;篆书用它自己的区块码位(U+3D000 起);现代书体层才用现代字码位。

  可以用 index.csv 反查:现代字、码位、出处作品、编号、时代、文件名、sha256。

  引用某个字形,按索引解析,不要硬编文件名------层里增删字形,编号会整体重排。

分层许可

  CC BY 4.0 只有甲骨 JGW 那 1,203 条(连同派生轮廓),上游要求署名;汉典各层是 CC0;六个现代书体层从 OFL 字体提取轮廓,按 OFL 1.1 分发。文档、索引、代码、浏览页这些仓库自己的,CC0,随意分发。

  三种许可混在一个仓库里,靠目录与 LICENSE-DATA 说清;逐条许可见每条出处记录的 license 字段。

出处与机检

  出处写在 glyphs/provenance/<书体>.jsonl,一行一条,一个文件一条。一层一个文件,整层能一起加、一起移。

  python src/verify_provenance.py 做机检:sha256 对账、索引三账、许可白名单,任何一条不符就以退出码 1 结束。CI 每次推送都跑。

小结

感谢

  感谢各个网站的耐心整理。汉典(zdic.net)把甲骨、金文、小篆、隶书一个字一个字录下来、一笔一笔矢量化,并以 CC0 释出,这套库的古文字部分大多来自那里。

  感谢甲骨 JGW 数据集的作者 Li, Qing-sheng 与 Bian, Yu-lin,把 1,203 个甲骨文字做成了可计算的矢量数据。

  感谢六个现代书体背后的字体项目:Ma Shan Zheng、Zhi Mang Xing、Liu Jian Mao Cao、Noto Serif SC 与 TC、Chiron Hei HK。OFL 让这些轮廓可以被提取、再分发。

  感谢 Unicode 的篆书区块与 SealSources.txt、OpenCC 的篆书反查表、fontTools:码位与工具都是现成的。

  也感谢更早的人:《甲骨文合集》《殷周金文集成》的编纂者,历代拓本、摹本的制作者,两千年里传抄、刊刻《说文》的人。是他们的一笔一笔,将拓片留到了现在;这些人很多都没留下名字。

  希望汉字兴盛,文脉绵长。

相关推荐
喵喵虫6 天前
汉字笔顺笔画元数据导出 JSON
小程序·json·元数据·汉字·笔顺·笔画
学术 学术 Fun18 天前
Cricut 笔绘、烫金和划线如何制作单线 SVG
svg·矢量图·cricut
学术 学术 Fun20 天前
激光切割、雕刻还是划线:上机前先选对 SVG 结构
svg·矢量图·激光切割
睡后收入21 天前
激光切割、雕刻还是划线:上机前先选对 SVG 结构
svg
一马平川的大草原2 个月前
如何实现SVG转Mermaid图
python·svg·格式转换·mermaid
学传打活2 个月前
【边打字.边学昆仑正义文化】_进阶篇5 宇宙星系的运转(续3)
微信公众平台·1024程序员节·汉字·昆仑正义文化
Highcharts.js2 个月前
Highcharts 渲染方式解析:SVG 默认渲染与 Boost 模块的 WebGL 加速,以及它与其他可视化库的不同
svg·webgl·可视化·canvas·highcharts·渲染方式
Highcharts.js2 个月前
Highcharts 双 Y 轴分组错位柱状图・代码详解
svg·可视化·demo·highcharts·双y轴·数据示例
学传打活2 个月前
【边打字.边学昆仑正义文化】_进阶篇5 宇宙星系的运转(续1)
微信公众平台·1024程序员节·汉字·昆仑正义文化