如何使用Fontforge的命令行将字形(通过其Unicode编码)导出为SVG?
我还需要指定字体大小并保留其在字体中具有的原始边距。
也许您已经找到了答案,但我必须使用最新版本的FontForge进行此操作。这个命令的旧答案是:
fontforge -lang=ff -c 'Open($1); SelectWorthOutputting(); foreach Export("svg"); endloop;' font.ttf
在Windows10中,从命令提示符运行可能无法正常工作(我认为这是权限问题),但您可以尝试一下。一个快速的解决方法是通过GUI执行脚本来完成。
运行FontForge(对于安装在Program Files(x86)目录中的Windows10,您可能需要右键单击“run_fontforge.exe” ->以管理员身份运行)。
打开要导出的字体。
转到文件>执行脚本
SelectWorthOutputting(); foreach Export("svg"); endloop;
它将保存到FontForge文件夹(其中包含run_fontforge.exe)。
在Windows操作系统上(已在win10上测试)
这是从批处理文件内部获取的:
c:\Programs\FontForge\bin\fontforge.exe -lang=ff -c "Open($1); SelectWorthOutputting(); foreach Export('%%e_%%f_%%n_%%u.eps'); endloop;" %1
这是直接在命令行上执行的:
c:\Programs\FontForge\bin\fontforge.exe -lang=ff -c "Open($1); SelectWorthOutputting(); foreach Export('%e_%f_%n_%u.eps'); endloop;" font-file.ttf
注意 - 颜色不会被导出。我不知道它是否未实现或者是一个错误。
Export("svg")
,而是使用Export("/the/path/for/saving/glyph.svg")
。 - StudentFF
**单选按钮,并粘贴代码:foreach Export("/myDestinationFolder/%n-%e.svg"); endloop;
以导出文件名为A-65.svg
的文件。 - ashleedawg