从现有字体制作新字体

3
我在寻找另一个问题的解决方案时(Inkscape中如何拉伸文本并将其固定到路径上),我想知道是否可以轻松且可编程地从一个字体制作出另一个字体。以具体的例子来说,我能够从FreeSerif字体中获取双倍高度,并生成另一个字体,称之为FreeSkinnySerif吗?(这样我就可以在Inkscape中使用FreeSkinnySerif并获得我想要的效果。)
2个回答

1
我不知道有没有脚本解决方案,但你尝试过Inkscape内置的SVG字体编辑器吗?
文本->SVG字体编辑器。
我猜你可以编写一个Python脚本来使用它,但仅仅使用Inkscape工具可能会更快。 这里有一个教程。

谢谢John,看起来很有前途(至少如果你只需要几个字形——如果是整个字体,那将是一项艰苦的工作)。我正在使用Inkscape 0.47,但它对我来说根本不起作用:我点击“从选择中获取曲线”,什么也没有发生;没有错误消息,什么也没有出现。我在预览文本中有字形。我尝试了路径|联合步骤。(这不是你的问题,我可以在视频中看到它应该能工作!) - Darren Cook
将字母转换为路径,然后使用节点选择工具选择路径中的所有节点。 然后点击从选择获取曲线。 - John
谢谢,但我认为我已经这样做了。我已经完成了路径|对象转路径。我正在使用“通过节点编辑路径”工具。在底部它说“在2个子路径中选择了23个节点中的23个”。在字体编辑器中,我点击字形1,点击“从选择中获取曲线...”,但什么也没有发生;没有错误消息,但没有预览。(如果我没有选择字形,我会得到一个错误消息,如果我没有选择对象,我会得到一个错误消息...) - Darren Cook
1
啊哈!只是预览出了问题。我保存了SVG文件,使用在线网站将其转换为TTF,现在我有了一种字体!我安装了它,并可以在Inkscape中使用它来包装路径!(基线信息完全错误,所以看起来很糟糕;我想知道这是否是预览不起作用的原因?) - Darren Cook

1

谢谢。我已将此标记为正确答案,因为它正是我希望了解的工具类型。在GUI中,加载FreeSerif(来自/usr/share/fonts/truetype/freefont),ctrl-A选择全部,右键单击,转换,缩放,将X设置为50%。保存为。(我遇到了安装/查看/使用字体的问题,所以可能无法正常工作,但我会继续尝试。) - Darren Cook
不要使用“另存为”。请使用“文件|生成字体”。我还需要进入“元素|字体信息”,更改名称并将em大小更改为2的幂。验证会出现其他投诉,但我忽略了它们。我将我的新字体移动到~/.fonts,然后运行sudo fc-cache -fv ~/.fonts/。然后我就可以在Inkscape(例如)中使用我的新字体了。 - Darren Cook

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接