OpenMotifのフォントの使用について

OpenMotifのフォントの使用について

私は、ユーザーインターフェイスがMotif 2.2(私の考えではOpenMotifだと思う)に依存するCアプリケーションを持っています。問題は次のとおりです。

  • フォントが変です。
  • 時には(CentOSのバージョンに応じて)デフォルトのUIに太字/斜体で表示されません。
  • フォントの選択 ポップアップで使用可能なフォントのリストも、オペレーティングシステムにインストールされているフォントによって厳密に制限されます。
  • さらに、フォント選択ポップアップで使用可能なフォントのリストは、プログラムがリモートXセッション(ssh -X)で実行されるのかローカルKDEウィンドウマネージャで実行されているのかによって異なります。

私は以下のことを読んでいますhttps://www.freebsd.org/doc/handbook/x-fonts.htmlしかし、私はこのような行動を理解できません。

つまり、どうすればいいですか?

  • 私のプログラムで利用可能なフォントの完全なリストを取得します(リモートXセッションとローカルウィンドウマネージャを介して実行されます)。
  • 一貫した太字/斜体の動作を維持します。
  • もっと良いフォント(おそらくエイリアスを含む)がありますが、これはマイナーな問題です。

答え1

以前のバージョンのMotifは、XFT(ベクトルフォント)をサポートせず、ビットマップフォントのみをサポートしていました。特定のサイズまたはスタイル(イタリック体、太字)のビットマップフォントがない場合は表示されません。

可能であれば、XFTアンチエイリアシングフォントをサポートするMotif 2.3に切り替える必要があります。

https://sourceforge.net/projects/motif/

プロジェクトでXFTフォントを使用する方法については、次の手順を実行します。とても簡単です。ソースコードを変更する必要はなく、リソースファイルのみが必要です。

http://www.motifzone.net/files/documents/Fonts_UTF-8_WhitePaperv6.pdf

https://sourceforge.net/p/cdesktopenv/wiki/FontsWithXFT/

XFTフォントレンダラーの最大の利点の1つは、フォント選択がより強力であることです。特定のフォントがインストールされていない場合は、同様のフォントを選択し、常に特定のフォントを表示します。指定されたフォントがシステムにインストールされていない場合、コアXフォントプロトコルは完全に失敗します。

関連情報