フォントの設定[fonts.dir]について

パピーを名犬にするための技、テクニック

モデレータ: 暇人, YoN, nyu

返信する
miyaro
記事: 6
登録日時: 13/04/11(木) 02:23

フォントの設定[fonts.dir]について

投稿記事 by miyaro »

Puppy-431JP2012をHDにFrugalインストールして使い始めました。
Linuxについても勉強し始めた段階です。そこでpuppyのフォントの管理についてどなたか教えて下さい。

例えば[TTF]フォントを追加する場合は[/usr/share/fonts/default/TTF]配下にコピーするだけでOKのようですね。また[TTC]や[OTF]も大丈夫なようですね。

では、[fonts.dir]や[fonts.scale]を使って明示的に詳細を設定する事はできないのですか?

上記の[/usr/share/fonts/default/TTF]には[fonts.dir]や[fonts.scale]が存在していますが新たに追加したフォントを追加記載しても反映されないようです。

なぜこような事を尋ねるのかというと、例えばダイナフォントの「平成ゴシック」を追加インストールしたとすれば、文字の送り幅が3種類(DF,DFP,DFG)と文字の太さが4種類(W3,W5,W7,W9)で12種類の「平成ゴシック.ttf」がフォントビューワーで確認できます。これはWindowsでも同じことです。しかしAdobe Illustratorのようなアプリでは「DF平成ゴシック」というフォントファミリーの中に4種類(W3,W5,W7,W9)のスタイルという表示になります。(TTCapは無視される?)同様にDFP,DFGもあります。つまりフォントファミリーは「DF平成ゴシック」「DFP平成ゴシック」「DFG平成ゴシック」の3つの表記ですみます。デザインワークがしやすいように表記していると思われます。

しかし、InkScapeでは、フォントビューワーと同じ表記です。(12種類のFファミリー)
私はWindous上で実験的に「平成ゴシック」のTTCファイルを分解加工して、デザインソフト以外(たとえばメモ張など)のフォント選択画面上でも3つのフォントファミリーの中にそれぞれ4種類のスタイル(斜体が加わりますが)という表記になるようにしました。

ところがWindous上では問題ない、この加工済み「平成ゴシック」がpuppy上では、うまく認識されていないようです。(3ファミリーの中にそれぞれ4スタイルにはなるが‥。そもそも他の日本語フォントも怪しいです)

そこで下記サイトを参照しました。
http://www.momonga-linux.org/docs/TTF-H ... ips-weight

このサイトの「5.1. Weight に関する Tips」が私のやりたい事です。この[fonts.dir]の編集は、ややこしそうですがLinuxの良さも感じます。ココにあるように family を同じにして Weight 別にフォントファイルを指定したいのです。

そのための[fonts.dir]を有効にするやり方がわかりません。どなたか教えて下さい。
長文を書きましたが、要点はそこです。
アバター
シノバー
記事: 3139
登録日時: 09/03/21(土) 00:05
連絡する:

Re: フォントの設定[fonts.dir]について

投稿記事 by シノバー »

Linuxにおけるフォントの扱いについて詳しくありませんが、私の知っていることだけ。

[fonts.dir]や[fonts.scale]を更新するコマンドは mkfontdir と mkfontscale です。新しいフォントを /usr/share/fonts/default/TTF に置いたとすると、次のようなコマンドを実行すれば更新されます。最後の fc-cache はフォントキャッシュの更新です。

コード: 全て選択

# cd /usr/share/fonts/default/TTF
# mkfontscale
# mkfontdir
# fc-cache -f
[fonts.dir]や[fonts.scale]の変更は、アプリがこれを参照していなければ影響を与えません。
じっさいに[fonts.dir]や[fonts.scale]を参照するのは一部のアプリだそうです。どのアプリが参照するのか、しないのか、私は知りません。

Linuxでフォントを管理するものとして、あと /etc/fonts/fonts.conf があります。これのカスタマイズは local.conf を編集することになります。これも影響するアプリと影響しないアプリがあるようです。影響するアプリのほうが数が多そうです。

フォントビューアーに2つあります。xfontsel と gfontsel 。
前者には[fonts.dir]か[fonts.scale]が反映してるようにも見え、後者が fonts.conf を反映してる物なのかなあ。と、ぼんやり思うのですが、詳細は知りません。
The bar master, Shino's Bar
http://shinobar.net/
miyaro
記事: 6
登録日時: 13/04/11(木) 02:23

Re: フォントの設定[fonts.dir]について

投稿記事 by miyaro »

シノバー さんが書きました: [fonts.dir]や[fonts.scale]を更新するコマンドは mkfontdir と mkfontscale です。新しいフォントを /usr/share/fonts/default/TTF に置いたとすると、次のようなコマンドを実行すれば更新されます。最後の fc-cache はフォントキャッシュの更新です。

コード: 全て選択

# cd /usr/share/fonts/default/TTF
# mkfontscale
# mkfontdir
# fc-cache -f
迅速なお返事を有難うございます。そうです。これです!似たようなコマンドを打っていましたが、少し違っていたようです。
やってみたら[fonts.dir]と[fonts.scale]が作られました。ということは、puppyだけが何か特殊な仕組みになっているわけではないのですね?
シノバー さんが書きました: [fonts.dir]や[fonts.scale]の変更は、アプリがこれを参照していなければ影響を与えません。
じっさいに[fonts.dir]や[fonts.scale]を参照するのは一部のアプリだそうです。どのアプリが参照するのか、しないのか、私は知りません。

Linuxでフォントを管理するものとして、あと /etc/fonts/fonts.conf があります。これのカスタマイズは local.conf を編集することになります。これも影響するアプリと影響しないアプリがあるようです。影響するアプリのほうが数が多そうです。
つまりアプリ上の問題なんですね。ディストリビューションかウインドウマネージャーの問題だと思っていました。これはちょっとがっかりです。
[fonts.dir]や[fonts.scale]を参照するのが一部のアプリだけだとしたら、お手上げのような気がします。それに[fonts.conf]の方は設定の内容がまた違っているようですね。フォントの追加(特に日本語)は難しいですね!好き勝手にはいかないものなんですね。知りませんでした。
シノバー さんが書きました: フォントビューアーに2つあります。xfontsel と gfontsel 。
前者には[fonts.dir]か[fonts.scale]が反映してるようにも見え、後者が fonts.conf を反映してる物なのかなあ。と、ぼんやり思うのですが、詳細は知りません。
ん~。xfontsel は元から入っているフォントしか出てきませんでした。とにかく、あきらめずに色々と試してみます。
今回のアドバイスはとても助かりました!
アバター
シノバー
記事: 3139
登録日時: 09/03/21(土) 00:05
連絡する:

Re: フォントの設定[fonts.dir]について

投稿記事 by シノバー »

miyaro さんが書きました:似たようなコマンドを打っていましたが、少し違っていたようです。
頭のほうを覚えていたら、たとえば 「mkfont」あたりまで端末で打って、[TAB]キーを押せば

コード: 全て選択

# mkfont (ここでTABキー)
mkfontdir    mkfontscale 

のように、候補が出てきます。
The bar master, Shino's Bar
http://shinobar.net/
miyaro
記事: 6
登録日時: 13/04/11(木) 02:23

Re: フォントの設定[fonts.dir]について

投稿記事 by miyaro »

有難うございます。
[# ttmkfdir > fonts.dir] とか [# mkttfdir] とかやってました。そしたら [command not found] と返されました。

それからフォントマネージャを試してみようと思います。
Fonty Python とか FontMatrix というのがあるみたいですね。

まあその前に[fonts.dir]を正しく記述できるようになりたいです。そうすると xfontsel にも表示されると思います。結局のところ、puppy も gfontsel も正しく機能しているんですね!
やることいっぱいありそうです。継続して報告させてください。
miyaro
記事: 6
登録日時: 13/04/11(木) 02:23

Re: フォントの設定[fonts.dir]について

投稿記事 by miyaro »

色々やってみました。
まず xfontsel に表示させる手順はフォントファイルの
置いてあるフォルダ[/usr/share/fonts/default/TTF/IPA-MONA/]から端末を起動して

# mkfontscale
# mkfontdir

をやっておいて fonts.scale と fonts.dir を作成する。そして

# xset fp+ /usr/share/fonts/default/TTF/IPA-MONA/
# xset fp rehash

これでパスが通るみたいですね。

# xset q

これでフォントパスを確認する。それから

# xfontsel
で良いのですが何か表示上?のエラーがあるので

# LC_ALL=C xfontsel

で表示されます。ただこのままだとX再起動後にフォントパスがリセットされるので
[/etc/X11/xorg.conf]にフォントパスを追加記載する。先に追加記載してからXリセット
でも良いと思う。

この[xorg.conf]にフォントパスを追加記載するということが、ずっと分かりませんでした。
[/etc/fonts/fonts.conf]に記載されているパスは、この fonts.dir を参照するアプリには
関係ないわけですね。それと
[/usr/share/fonts/default/TTF/] にパスが通っていても、その配下の
[/usr/share/fonts/default/TTF/IPA-MONA/] までは読んでくれない。分かりませんでした。
その点、[xorg.conf]と[fonts.conf]は、性質が違いますね。

---------------------------------------------------------------------------------------------------------------

うだうだと書きましたが、分からない事だらけで苦労しました。勉強にもなりましたが
結局のところ、[fonts.dir] を参照するアプリは、ほっとんどないようで、あまり実りのある
結果とは言えません…。
それとフォントマネージャとして Fonty Python とか FontMatrix を導入しようかとも
思いましたが、うっとおしそうなのでやめます。

それから inkscape はフォントの表示がおかしいですね。これに惑わされたようです。
これがアプリの問題でありシステム全体の問題ではないと…。
inkscape は Lite の方が安定しているのかな?
アバター
シノバー
記事: 3139
登録日時: 09/03/21(土) 00:05
連絡する:

Re: フォントの設定[fonts.dir]について

投稿記事 by シノバー »

miyaro さんが書きました:inkscape はフォントの表示がおかしいですね。
inkscape と abiword におけるフォントの扱いが、ほかの Gtkアプリとは異なっているようです。それ以上のことは私にはよく分かりません。
The bar master, Shino's Bar
http://shinobar.net/
返信する