如何让Emacs从文件中加载字体?

5
为了使我的emacs设置更加便携,我想通过指定一个文件而不是字体名称来设置当前字体,即“加载~/config/myfont.ttf并使用大小12”。在我的.emacs中有没有这样做的方法?我找到的所有说明都假设字体已经安装在系统上。我正在Linux上使用XFT支持,因此Linux特定的黑客可以,但我更喜欢适用于所有目标的东西。
更新:为了明确起见,我正在使用一种在Windows / OS X / Linux上不是标准的字体。我不仅仅是要根据平台设置不同的字体,而是要指定我拥有的特定字体文件(TTF在Windows和Linux上可用,如果在Mac上不可用,我将获取文件的另一个版本,但我仍然希望通过文件而不是名称指定字体)。
1个回答

3
很抱歉,你不能这样做。
不同平台上的Emacs使用不同的窗口工具包,它们都可以处理其字体。我不认为你可以在任何平台上的Emacs中指定字体文件名 - 它并不是这样工作的。
至于如何找到字体:
  • 在Linux上,您可以使用XFT对用户特定字体配置文件的支持,通常为~/.fonts.conf(但请检查/etc/fonts/font.conf以确保),以添加您放置字体的任何目录。

  • 在Mac上,您可以将字体添加到~/Library/Fonts中。TTF在Mac上也很好用。

  • 在Windows上,我想您只需将其添加到系统字体目录即可。

从那里开始,您可以告诉Emacs(通过自定义或其他方式)使用您的字体。您会发现每个平台的命名方案都不同(不确定Windows看起来像什么),但如果需要,自定义应该能够帮助您解决此问题 - 如果需要,请为每台机器保留单独的自定义文件。
...因此,基本上您的便携式Emacs设置必须包含不止一个Emacs配置文件(鉴于您正在携带字体文件,它已经做到了)。

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