有没有办法在 Illustrator SVG 中设置后备字体系列?

平面设计 adobe-illustrator 墨景 svg 批量处理
2022-01-06 10:48:36

我正在尝试设置一个操作来创建通用的包含文本的 SVG 文件,这些文件可以在包括 Wikimedia Commons 在内的各个地方使用。唯一的问题是,Wikimedia Commons 仅支持一小部分无版权字体:其中最普遍的是人们不太可能拥有的 DejaVu 和 Liberation 等字体(除非它们在 Linux 上)。

建议就像 Web 的旧时代一样,在 SVG 中使用备用字体系列例如,对于带有标准无衬线文本的东西,您可能会使用font-family: Liberation Sans, Helvetica, Arial, sans-serif- Wikimedia 不能使用 Arial 或 Helvetica,而 Liberation Sans 是他们支持的字体,这两者的字母大小、间距和样式几乎相同,所以你的布局不会破坏任何一种方式。

这将是完美的,但 SVG 文件来自 Illustrator,它没有任何明显的功能:它似乎只是一种严格的字体。

有什么方法可以强制 Illustrator 输出带有字体系列的 SVG,font-family="Liberation Sans, Helvetica, Arial, sans-serif"而不是像font-family="'Helvetica'"


对于我的特殊情况,有数百个这样的过程,这是我设置为客户操作的过程,然后由对非标准软件的访问权限有限的员工进行自我管理,所以我试图避免非插画步骤如果可能的话,比如编辑 SVG 源代码。

非常欢迎基于Inkscape或(更好的)在线 SVG 编辑器等其他程序的答案,特别是如果它们可以与像 Illustrator 的动作批处理这样的东西一起使用(但这不是必需的)。

1个回答

在这里留下“最后的手段”方法。不理想,因为它涉及到代码,似乎需要访问代码编辑器。理想的方法是使用标准设计软件,在这种软件中更难意外破坏。


警告:由于 Illustrator CS6 中存在一个可笑的 Adob​​e 错误,如果您的计算机上未安装其中一个或多个字体的多种字体,将导致 Illustrator CS6 无法打开 SVG,并出现以下错误 - 即使列表中有较早的字体是安装。

由于未知错误,操作无法完成 [CANT]

像网络浏览器、SVG 编辑器等专业制作的(非 Adob​​e)软件可以很好地处理它,这纯粹是 CS6 中的一个错误,Adobe 没有兴趣修复它。


但是,如果有人处于类似的位置并且可以使用代码和正则表达式,这里有一个基于使用Sublime Text的示例步骤集(大多数代码编辑器具有类似的功能):

  • Find > Find in Files,然后按下正则表达式按钮
  • 把它放在“查找:”中font-family=".*?"(假设使用了双引号)
  • 在“位置:”中选择您的文件夹
  • 把你想要的东西放在“替换:”中(例如font-family="Liberation Sans, Helvetica, Arial, sans-serif"
  • 运行它,然后文件 > 全部保存