背景
draw.io 是一款简洁、高效的画图工具,但其默认可选字体较为有限:
如果你想在图表中使用自己喜欢的字体(如第三方中文字体),往往会发现列表里压根找不到。要解决这一问题,必须先了解:draw.io 依赖本地字体库。你本机安装了哪些字体,它才能识别哪些字体。
一、本地字体库:文本软件的字体从哪里来?
在一台电脑或手机上,大多数应用(Word、Pages、TextEdit、Sublime Text、VSCode、浏览器、PS 等)默认都会从“本地字体库”加载字体,而不是自己携带字体文件。原因在于:
- 字体体积通常较大
- 商业字体有授权成本
- 系统统一管理可避免重复安装和冲突
以 MacOS 为例,本地字体主要来自三个目录(按优先级排序):
当前用户字体库(优先级最高)
~/Library/Fonts特点:
- 当前用户独享
- 同名字体会覆盖全局字体和系统字体
- 自己安装的字体一般会安装到这个里
全局字体库(优先级次于用户字体)
/Library/Fonts特点:
- 所有用户均可使用
- 安装时需要管理员权限
- 同名字体会覆盖系统字体
系统字体库(优先级最低)
/System/Library/Fonts特点:
- 默认内置了一些字体,
- 受SIP保护,无法手动往这个字体库安装新的字体
- 应用在用户字体库和全局字体库都找不到某字体时,才会加载这里的字体
下图就是系统字体库自带的部分字体,每个字体文件后缀为.ttf,在图中可以看到有些字体库的体积可以达到数百MB:
在Windows中,字体目录一般为C:\Windows\Fonts
二、如何在电脑中安装字体?
除了电脑中自带的字体,如果想安装其他字体,可以先下载对应字体文件,一般是以.ttf后缀结尾的文件。安装一般有两种方式:
方式1:把文件直接复制到字体库的目录即可,在MacOS中,一般是放到用户字体库~/Library/Fonts。
方式2(推荐):双击字体文件,根据提示,即可安装到本地,就跟我们平时安装软件一样,在MacOS中,字体会安装到用户字体库~/Library/Fonts。
这里列几个常用的免费/商用字体资源:
- 站长之家:https://font.chinaz.com/
- 字体天下:https://www.fonts.net.cn/
- 汉字形体:https://justfont.com/
- 方正字库: https://www.foundertype.com/
- Adobe Fonts:https://fonts.adobe.com/
- Google Fonts:https://fonts.google.com/
- Github上也有很多比如:https://github.com/lxgw/LxgwWenKai
三、在 draw.io 中添加自定义字体
前提:你必须已在本机安装了对应的字体。
draw.io 仅能调用本地字体,无法直接加载未安装的字体文件。
配置自定义字体步骤
打开 draw.io
在菜单栏依次点击:【其他】 → 【配置】
在弹出的 JSON 配置中加入你想新增的字体名称:
{ "customFonts": [ "华文仿宋", "华文宋体", "汉仪文润宋韵", "瑞美加张清平硬笔楷书", "听说巷尾樱花盛开", "礼品卉自由理想体" ] }点击【应用】之后,重启draw.io就可以看到已经可以选择新增的字体了:
注意:配置中字体的名称不是字体文件(以.ttf后缀结尾的文件)的名称,而是字体的名称,这个名称可以在字体册中看到:
也可以在文件的简介(右键-显示简介)中看到,比如我下载了一个名为“lipinhuiziyoulixiangti.ttf”的字体文件,实际上字体名称为“礼品卉自由理想体”:
总结
要在 draw.io 中添加自定义字体,核心流程是:
1 . 先在本机安装字体
2 . 在配置中加入字体名称
3 . 重启 draw.io 生效
draw.io 不会独立管理字体,它只读取系统字体库,因此只要理解本地字体加载机制,就能顺利添加任意第三方字体。