コンソール用の OTF フォントから PSF フォントを作成するにはどうすればよいでしょうか?

コンソール用の OTF フォントから PSF フォントを作成するにはどうすればよいでしょうか?

私は使いたいインコンソラータフォントtty コンソールで、psfそのためにフォントを生成する必要があります。

動作するはずのツールが 2 つあることがわかりましたが、otf2bdf2bdf2psf番目のツールを使用しようとすると、常に次のエラーが発生します。

/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
    

    (bdf2psf はフォント境界ボックスではなく AVERAGE_WIDTH プロパティの妥当性チェックを行うため、または実際に使用するグリフの DWIDTH をチェックするため、sed の呼び出しが必要です)

  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
    

それでおしまい。

関連情報