转换TTF / OTF字体以SVG命令行工具(Command-line tool for conve

2019-07-02 16:51发布

有谁知道一个命令行工具,都将TTF和OTF字体转换为SVG字体?

Answer 1:

您可以使用fontforge或蜡染从命令行执行此操作。

随着fontforge(见脚本文件 ):

#!/usr/bin/fontforge
Open($1)
Generate($1:r + ".svg")

保存上面convert2svgfont.pe文件,然后调用如下:

convert2svgfont.pe myfont.ttf

蜡染看到这个文件 ,安装,然后调用为:

java -jar batik-ttf2svg.jar myfont.ttf -o myfont.svg


Answer 2:

通过@Erik前面给出的fontforge配方不再起作用 - fontforge已经切换到Python脚本。

下面是如何转换的字体从PFA到SVG在命令行上 - 这也将工作的优良TTF等:

fontforge -c 'import fontforge;fontforge.open("/usr/share/fonts/X11/Type1/NachlieliCLM-Bold.pfa").generate("NachlieliCLM-Bold.svg")'


Answer 3:

这个答案的蜡染部分也是过时的,因为蜡染使用过时的字形元素给你一个SVG输出。

如果您在nasa.ttf例如运行最新版本的蜡染

java -jar batik-ttf2svg-1.10.jar nasa.ttf -o myfont.svg

你得到一个输出看起来是这样的

<font horiz-adv-x="1045" ><font-face
font-family="Nasa"
units-per-em="2048"
panose-1="2 11 5 0 0 0 0 0 0 0"
ascent="1507"
descent="-393"
alphabetic="0" />

....接着表示字体字形每太多的代码

对付这种方式是在回答代表在HTML中使用SVG字形标记 -把字形为符号和翻转它们。

至于为什么在字体上的X轴翻转是指规范的被取代部分https://www.w3.org/TR/SVG11/fonts.html#SVGFontsOverview

不像在SVG,其中初始坐标系统具有y轴向下指向标准图形(见初始坐标系),为SVG字体的设计网格,与初始沿坐标系的字形,具有y轴朝上与公认的行业惯例对许多流行的字体格式的一致性。



文章来源: Command-line tool for converting TTF/OTF fonts to SVG