フォント2

ということで、GTK+では gdk->pango->xft/xlib という流れでフォント関係の処理が行われるようだ。Qtでは直接 xft/xlib を使っているのかな?まあよく分からんが、とにかくどちらを使おうともフォントの設定に関しては共通だと思っていいみたい。

http://pc.2ch.net/test/read.cgi/linux/994758481/より

265 名前: login:Penguin 投稿日: 02/06/03 01:38 id:jpSphJ7W
>>264
TraditionalなXアプリ(XlibとかXtとか)でTrueTypeを扱うには
fonts.dirを書いて(これが大変)やれば、ほかのフォントと
同じようにXLFD

  • shinonome-mincho-medium-r-normal--16-150-75-75-c-160-jisx0208.1990-0

とかで扱えるようになる。
大きさが変わっても同じフォントでいけるところが
ビットマップフォントと違う点。

367 名前: login:Penguin 投稿日: 02/12/29 23:57 id:IaG5XSfP
>>364
>固定幅フォントが間延び
TTcapならfonts.dirで
jisx0206.1976とiso8859/asciiなどのエントリに"bw=0.5:"
を追加するといいかも。その場合そのエントリが
"プロポーショナル(...0-0-p-0...)"でなく
"等幅(...0-0-c-0...)"になってる必要がある。
あと、"eb=y:"を指定するとちょっとだけ見た目がよくなるらしい。

709 名前: しったか 投稿日: 03/07/12 23:15 id:U8mKiU47
xfs/xfs-xttはいわゆる"フォントサーバ"で

素のxfsはXF86Configでいうところの"Load freetype"相当の機能しかない。

xfs-xtt はxfsの拡張版で xttで使う"TTcap"の書式の"fonts.dir"が読める。
XF86Configでいうところの"Load xtt"相当

個人的にはxttを使わないと読めたものではないフォント表示になると思うが
xttを使うとXの動作が不安定になる、という説もある。

RedHatは8(psyche)の時点では、デフォルトでは"xtt"は使ってなかった。
現在はどうなのか不明。
DebianVineはデフォルトでxttを使うようになっている。

Xftはバージョン4.1.0以降のXFree86で採用されている。
従来の体系とは全く別のなにか。freetype2をつかう。
4.2.xまではXft1を使っていて
設定ファイルが"/etc/fonts.conf"。キャッシュをつくるコマンドが"xftcache"

4.3.x以降、または4.3.xからバックポートされたものはXft2/fontconfigを使っていて
設定ファイルが"/etc/fonts/fonts.conf"。キャッシュをつくるのは"fc-cache/fc-list"

Gnome2やMozillaなどは"RenderExtension"のないXサーバ(Xvncなど)
でもアンチエイリアスのフォント表示ができるけど
qt/kdeのアプリケーションでアンチエイリアスのフォント表示をするには
"RenderExtension"が必要。

710 名前: しったか 投稿日: 03/07/12 23:19 id:U8mKiU47
...まちがえた

4.2.xまではXft1を使っていて

  • 設定ファイルが"/etc/fonts.conf"。
  1. 設定ファイルが"/etc/X11/XftConfig

711 名前: しったか上塗り(Not 709) 投稿日: 03/07/13 00:08 id:rRC2zC2M
機構的には、x-tt/xfs(xfs-xtt)は、フォントの描画をサーバ側で
Xft,Xft2はクライアント側で行うところが異なる。

だからXftを使うアプリは自前でfreetypeを抱え込まないといけない
フォントの設定もx-tt,xftとは別系統となる。

713 名前: login:Penguin 投稿日: 03/07/13 09:59 id:Cbbu1Wb8

XF86-4 系の XLFD なフォントハンドラに限って説明する.

> 個人的にはxttを使わないと読めたものではないフォント表示になると思うが
これは XFree86-4.2.1までの話.XFree86-4.3では Load "freetype"
でも埋め込みbitmapが読めるようになっている.

> xttを使うとXの動作が不安定になる、という説もある。
これも XFree86-4.2.1までの話.XF86-4.3ではほとんど修正済.
XF86-4.2.1までX-TTはバグだらけのまま放置された(XFree86へパッチ
を送る人が何人かいたが,XF86プロジェクトはそれらを完全に無視した)
ため,多くのユーザが頻発するXのクラッシュに悩まされた.

X-TTのメンテはAfter X-TTでやっているので詳細はそちらへ.
XFree86-4.2系のバグ修正済libxtt.aバイナリもおいてある.

xfsft は XFree86 に標準でついているフォントサーバ.
TrueTypeフォントも扱える.機能的には Load "freetype"
と同等で X-TT の拡張書式は使えない.

xfs-xtt は XFree86-4系では Debian だけ(だと思う)が提供している.
これは Debian の独自パッチによるもの.

714 名前: login:Penguin 投稿日: 03/07/13 10:00 id:Cbbu1Wb8
▼xfs を使うか XF86Config で Load "hoge" か
これはその人の趣味.どちらがイイとは言えないと思う.
よくわからない人は XF86Config で Load "xtt" か Load "freetype"
にすればよい.

▼Load "xtt" か Load "freetype" か
XLFDでTrueTypeな日本語フォント,unicodeフォントを使うなら,
X-TTでないと話にならない."freetype" では X-TTで使えるプロポーショ
ナルフォント展開速度アップ,自動イタリック生成,自動太文字生成
など日本語フォントで必須の機能が使えない.さらに,使う人は少ない
かもしれないがプロポーショナルなunicodeを使う場合はX-TT 1.4系が
有利(Load "freetype"より数十倍高速化できる).
TrueType でなくて,OpenType を使いたいなら,XFree86-4.3以降の
Load "freetype" しかない.Load "xtt" は TrueType しか読めない.
X-TTの新版が待たれる.
ただし,XF86-4.2.1までのX-TTには大量のバグが残っているので,
After X-TTの用意しているパッチをあててXをビルドするか,修正バイナリ
モジュールを使う事.Xばりばり落ちても知らんぞ.
また,XF86-4.3以降の Load "freetype" では omega-serif-truetype
などを使った場合に表示されないあるいはクラッシュするという報告がある.
どのフォントハンドラでもそうだが,フォントハンドラを変更したり,
フォントをインストールしたら,必ず表示テストをしてから,作業を開始すること.
Xft2 をメインで使うので,XLFDなんて用はないという人は,どっちでも
好きな方を使えばよい.

2chは情報の宝庫ですなあ。

RedHat8.0では(?)xfsを動かしてるとfonts.dirを書き換えられるらしい。おそろしや。まあ使ってないからいいけどね。
xtt,xft1, xft2,fontconfig,freetype などの関係がいまいち理解不足。特にfreetypeの位置付けが分からん。