如何将TTF自定义字形转为SVG?FontForge无法显示该字体字形
自定义TTF字体在FontForge无显示问题及转SVG方案
一、字形位置说明
你提到的这款netrunner.ttf,所有自定义字形都存在**Unicode私人使用区域(PUA,U+E000至U+F8FF)**里。FontForge默认不加载这个区域的字形,所以打开后看不到内容,但FontDrop会正常解析PUA的字形数据,这就是两边显示差异的原因。
二、FontForge中访问PUA字形的步骤
- 打开FontForge并加载字体后,按
Ctrl+G(或点击菜单栏「View」→「Goto」) - 在弹出的输入框里直接输入PUA范围内的码位,比如
U+E000,就能定位到对应字形 - 要是想一次性显示所有PUA字形,可在「View」菜单里勾选「Show All Glyphs」,或者在「Font Info」的字形设置里调整显示规则
三、批量转SVG的两种可行方法
方法1:FontForge脚本批量导出
写一个简单的FontForge脚本(命名为export-svg.pe),内容如下:
Open($1) SelectAll() Export("*.svg")
然后在命令行执行:
fontforge -script export-svg.pe netrunner.ttf
执行后会自动把所有可见字形(含PUA内的)导出为单独的SVG文件。
方法2:利用FontDrop导出
既然你能在FontDrop里查看轮廓,单个字形直接选中后点击导出就能存为SVG;如果要批量,FontDrop支持批量导出PUA字形的SVG,找到界面上的批量导出按钮操作即可。
内容的提问来源于stack exchange,提问作者Taako
相关产品推荐
相关产品推荐

