如何从 otf 字体为控制台制作 psf 字体?

如何从 otf 字体为控制台制作 psf 字体?

我想使用Inconsolata字体在 tty 控制台中,但我需要psf为此生成一种字体。

我发现有两个工具应该可以工作,otf2bdf但是bdf2psf每次我尝试使用第二个工具时,我都会得到:

/usr/bin/bdf2psf: Inconsolata12.bdf: the width is not integer number.

答案1

我实际上正在尝试解决这个同样的问题。我通过阅读不久前发生的这个线程电子邮件交流来解决这个问题。访问这里

我还需要尝试一下。如果我让它工作,我会报告。

编辑:我能够创建 PSF 字体,但尚未尝试将其用作 TTY 字体。我相信这就是问题的含义。这是我创建字体的方式(准直接从链接复制)。

  1. 将 OTF 转换为 BDF

    otf2bdf -r 72 -p 12 -c C /usr/share/fonts/truetype/incon...a/inconsolata.otf |
        sed -e "s/AVERAGE_WIDTH.*/AVERAGE_WIDTH 80/" > inconsolata-12.bdf
    

    (需要 sed 调用,因为 bdf2psf 健全性检查 AVERAGE_WIDTH 属性而不是字体边界框,或检查它实际使用的字形的 DWIDTH)

  2. 将 BDF 文件转换为 PSF 文件:

    bdf2psf inconsolata-12.bdf /usr/share/bdf2psf/standard.equivalents \
      /usr/share/bdf2psf/required.set+/usr/share/bdf2psf/useful.set 256 inconsolata-12.psf
    

就是这样。

相关内容