[ubuntu-jp:3523] Re: NattyにおけるEvinceの問題

Koji Otani sho @ bbr.jp
2011年 4月 25日 (月) 07:52:13 UTC


大谷です。
ありがとございます。

From: Mitsuya Shibata <mty.shibata @ gmail.com>
Subject: [ubuntu-jp:3515] Re: NattyにおけるEvinceの問題
Date: Sun, 24 Apr 2011 00:54:51 +0900
Message-ID: <BANLkTin6yfM8KFDQ6qsvYzivs84Z1JhZhQ @ mail.gmail.com>

mty.shibata> 大谷さん、
mty.shibata> 
mty.shibata> 2011年4月21日14:27 Koji Otani <sho @ bbr.jp>:
mty.shibata> > 単純に、fontconfigのlangタグで行おうと思っています。つまり、
mty.shibata> > jaを含んでいたら日本語OKということです。今回の場合は、その裏
mty.shibata> > 「jaを含んでなければ、日本語だめ」という使い方ですが。
mty.shibata> 
mty.shibata> 印刷についての追記と修正案の提案ありがとうございます。せっかくなんで自分の
mty.shibata> 方で把握している情報も出しておきます。
mty.shibata> 
mty.shibata> popplerは、PDFファイル内部のCID情報を見て、"Adobe-Japan1"だったらFC_LANGに
mty.shibata> "ja"を設定してfontconfigに渡す処理は既に行われているようです(popplerの
mty.shibata> poppler/GlobalParams.ccのbuildFcPattern())。
mty.shibata> 
mty.shibata> それでも、DejaVuがサジェストされるのは、69-language-selector-ja-jp.confで
mty.shibata> 「binding="strong"として」DejaVuがTakao「より前に」記述されているためです。
mty.shibata> 
mty.shibata> - binding="strong"と指定された場合のfamilyのスコアはFC_LANGより優先されます
mty.shibata>   => /usr/share/doc/fontconfig/fontconfig-user.txt.gz
mty.shibata> - DejaVuがTakaoより前にあるため、DejaVuの方がTakaoよりスコアが低くなります
mty.shibata>   => 低い方が優先度は高くなります
mty.shibata> 
mty.shibata> そのため、69-language-selector-ja-jp.confを今の設定のままで、Evinceの文字
mty.shibata> 化けを回避したいなら、popplerが表示したいグリフのリストを作ってFC_CHARSETを
mty.shibata> 設定する「大幅な変更」しかないと自分は考えていました(FC_CHARSETのスコアは、
mty.shibata> strongなFC_FAMILYよりも優先されます)。

なるほど。確かに、グリフのリストを作成するのは、そのために、一回、PDFの内容を
なめないといけないので、「大幅な変更」+「速度の低下」になりますね。

私の提案では、パターンの条件ではなく。fontconfigから返ってきたリストの
フォントに対して改めてlangタグを検査しようというものです。これで
DejaVuを選択対象外にします。
これなら、
poppler/GlobalParams.ccだけの簡単な変更ですみます。



ubuntu-jp メーリングリストの案内