
Ubuntu日本語フォーラム

ログインしていません。
Redhat系からubuntu に移ってきました。
Qt で「IPAフォント」を使うためには、フォント名をどういう指定にすればよいでしょうか?
例えば、ms gothic, Helvetica という名前のことです。
オフライン
Ubuntu上ではGNOMEを利用しているのでしょうか。もしKDE(Kubuntu)を利用されているのであればコントロールセンターから変更できるはずです。
GNOME上でのQtアプリケーションが使うフォントが問題なのであればSystem->Preferences->Qt3 Configurationを開いてFontタブから設定できます(設定後はFileメニューから保存して下さい)。Qt3 Configurationが存在しない場合はUniverseレポジトリからqt3-qtconfigパッケージを導入すればよかったと思います。
http://packages.ubuntu.com/edgy/x11/qt3-qtconfig
qt4-qtconfigの方が必要かもしれません。自分が使うQtアプリケーションはLyXだけなのでよく分かりませんが。
オフライン
Qt アプリで指定するフォントです。(実際は、PyQtですが)
qt3-config をインストールしてみます。
オフライン
qt3-qtconfig をインストールしてみました。(synaptic から見えないので、直接ダウンロード)
使い方もよく分らず、そのままです。
いくつか調べてみました。
1.PC-Xサーバ(ASTEC-X)から接続しています。日本語が見えないのは、
Xフォントサーバ(ubuntuでは何に相当するか不明)が動いていないので
ubuntu のフォントを参照できない。
2.IPAファオントは確かにインストール済み(/usr/share/fonts/truetype/ipa)だが、
xfontsel でみると、見えていない。
3.Qt のデフォルト・フォントは Helvetica になっている。これは日本語は表示できない。
Fixed を指定しても文字化けする。
お手上げ状態です。取りあえず、日本語が見えれば、開発作業を続けらるのですが。。。
フォント周りはあまり分っていないので、フリーズ状態です。
オフライン
ubuntu Linux をインストールしたホスト側とPC-Xサーバ側で、
$ xlsfonts -fn '*-fixed-*'
$ xfd -fn '*-fixed-*'
と実行してみると、両方とも(ホスト、PC-Xサーバ)日本語は表示できています。
ということは、Qt側の問題になります。
オフライン
kubuntuユーザです。
只今Dapper(KDE3.5.5)環境ですので、Edgyではどうなっているか帰宅してからでないとわかんないのと、ASTEC-X環境は持ってないのですが。
普通に下記のようなサンプルは動きます。
#!/usr/bin/python
# -*- coding: utf8 -*-
import sys
from qt import *
class HelloWidget(QWidget):
def __init__(self, *args):
apply(QWidget.__init__, (self,) + args)
la = QLabel(self.tr("漢字出ます"), self)
la.setFont(QFont("Helvetica", 16, QFont.Normal))
cmda = QPushButton("Bye", self)
self.setMinimumSize(200,100)
self.setMaximumSize(200,100)
la.setGeometry(40,20,320,30)
cmda.setGeometry(80,60,40,30)
self.connect(cmda, SIGNAL("clicked()"), self.close)
a = QApplication(sys.argv)
a.setDefaultCodec(QTextCodec.codecForName("utf8"))
w = HelloWidget()
a.setMainWidget(w)
w.show()
a.exec_loop()
# end.# とかいいながらPyQtを使ったプログラムはこれまでまじめに書いたことはなかったりして;-P
オフライン
サンプル、ありがとうございます。
このサンプルを実行すると、□□□□□と表示されます。
la.setFont(QFont("Helvetica", 16, QFont.Normal))
の行の Helvetica → Fixed に変更すると、漢字出□□ となります。
ubuntu をインストールしたPCでも同じです。
かなとカタカナの表示ができないようです。記号は大丈夫でした。
オフライン
> .ubuntu をインストールしたPCでも同じです。
ということは、確かにコード的には上で問題ないはずですので環境依存の問題ということかと。
おつかいの環境はubuntuで、Kubuntuではないですよね。
それからKDEやQtのアプリケーションは何か入れられてますか?それらの動作はどうでしょうか?
ちなみに、私の環境ではxfontselで -ipamona-uigothic....という風に指定すると当該フォントが見えます。
1. fontconfigの再設定
$ sudo dpkg-reconfigure fontconfig
などを実行して(選択肢は、ヒンティング=「ネイティブ」、サブピクセル=「自動」、ビットマップフォント有効=「いいえ」)みる。
2. 必要ライブラリ類のチェック
$ dpkg --list | grep libqt
あたりで沢山出てくると思うのですが、これが極端に少なかったりしませんか。
参考までに私のところに入っているlibqt*なパッケージをさらしておきます(全部いるとは限らないとは思いますが)。
ii libqt-perl 3.008-1.4 Perl bindings for the Qt library ii libqt0-ruby1.8 3.5.2-0ubuntu2 Qt bindings for Ruby ii libqt3-compat-headers 3.3.6-1ubuntu6.1 Qt 1.x and 2.x compatibility includes ii libqt3-headers 3.3.6-1ubuntu6.1 Qt3 header files ii libqt3-i18n 3.3.6-1ubuntu6.1 i18n files for Qt3 library ii libqt3-java 3.5.2-0ubuntu2 Java bindings for Qt ii libqt3-jni 3.5.2-0ubuntu2 Java bindings for Qt ( Native libraries ) ii libqt3-mt 3.3.6-1ubuntu6.1 Qt GUI Library (Threaded runtime version), V ii libqt3-mt-dev 3.3.6-1ubuntu6.1 Qt development files (Threaded) ii libqt3-mt-ibase 3.3.4-8ubuntu5immodule1mp1 InterBase/FireBird database driver for Qt3 ( ii libqt3-mt-mysql 3.3.6-1ubuntu6.1 MySQL database driver for Qt3 (Threaded) ii libqt3-mt-odbc 3.3.6-1ubuntu6.1 ODBC database driver for Qt3 (Threaded) ii libqt3-mt-psql 3.3.6-1ubuntu6.1 PostgreSQL database driver for Qt3 (Threaded ii libqt3-mt-sqlite 3.3.6-1ubuntu6.1 SQLite database driver for Qt3 (Threaded) ii libqt3c102 3.3.4-3 Qt GUI Library, Version 3 ii libqt3c102-ibase 3.3.4-3 InterBase/FireBird database driver for Qt3 ii libqt4-core 4.1.2-1ubuntu1.1 Qt 4 core non-GUI functionality runtime libr ii libqt4-debug 4.1.2-1ubuntu1.1 Qt 4 debugging runtime libraries ii libqt4-designer 4.0.0-3ubuntu1 Qt 4 Designer libraries ii libqt4-gui 4.1.2-1ubuntu1.1 Qt 4 core GUI functionality runtime library ii libqt4-qt3support 4.1.2-1ubuntu1.1 Qt 3 compatibility library for Qt 4 ii libqt4-sql 4.1.2-1ubuntu1.1 Qt 4 SQL database module
RedHatやFedoraあたりだと最初からKDE/Qtなアプリがいくつも入っていてこのあたりは組み込まれているのかも知れません。
なおubuntuからKDE関係を追加してKubuntu相当にした経験はありますが、ubuntuでQtアプリを動かした経験はまだないです....
最後の編集者: gmax (2007-03-13 17:59:49)
オフライン
使っているのは、ubuntu です。Qt、KDEアプリは何も入れていません。
Qt-3.3.7 をソースからインストールしたので、環境が設定されていないように見えます。
xfontsel で ipamona は見えません。
パッケージをインストールしてみます。
オフライン
よく考えてみればkatagiriさんにはPyQtのサンプルなんて不要でしたね:-)
特に3.3.7である必要がなければパッケージで入れられるのが正解のような気がします。
可能性としてはQtをビルドした際に開発用のパッケージが一部欠落していて、一部機能に蓋がされた形でできあがってしまったということも考えられなくはないのですが(昔KDE+Qtを自前でパッケージにしたときには、それが原因でgifが扱えないQtが出来てしまったりということがありました)、そもそもipaフォントがインストールされているのにQtとは関係のないxfontselで見えないというあたりもなんだか怪しい...
IPAフォントもパッケージから入れられていますよね(念のため)。
帰宅後Edgyでも先のサンプルを実行してみました。問題なく表示されます。私のKubuntu Edgy環境でインストールされているQt関係のパッケージは以下の通りでした。
$ dpkg --list | grep qt3 ii libavahi-qt3-1 0.6.13-2ubuntu2.4 Avahi QT3 integration library ii libqt3-mt 3.3.6-3ubuntu3 Qt GUI Library (Threaded runtime version), V ii libqt4-qt3support 4.2.0-1ubuntu6 Qt 3 compatibility library for Qt 4 ii python-qt3 3.16-1.2ubuntu1 Qt3 bindings for Python
これだけで動いています。
オフライン
gmaxさん、フォローありがとうございます。
IPAフォントは、インストール済みでした(ubuntu-ja-6.10)。
qt3 関連のライブラリをインストールしてみました。(synaptic)
下記のパッケージが、「取得に失敗」、「サイズが適合しません」でインストール出来ませんでした。
libxft-dev
libfontconfig1-dev
libxi-dev etc.
何かが原因で環境がうまく設定できていないようです。
システムの再インストールで解決するなら、トライしてみる価値がありますが。
原因がはっきりしない現状では、踏み切れません。試行錯誤でここまで10日、1~2日
必要でしょうから。
再トライは原因が掴めてからでしょうね。
オフライン
katagiri による投稿:
下記のパッケージが、「取得に失敗」、「サイズが適合しません」でインストール出来ませんでした。
libxft-dev
libfontconfig1-dev
libxi-dev etc.
一部パッケージリポジトリを提供するサーバが止まっているらしいという話が昨日あたりありましたが、そのせいでしょうかね。
現時点ではおつかいのEdgy環境に必要パッケージを入れてQtの他のアプリケーションが動く状態にしていただくのが正解でしょうね。
お待ちしておきます。
# VMWareなどの仮想化環境をお持ちでしたら、そこに新しくテスト環境を作るという手もあるにはありますが...
オフライン
午後になって、試しに synaptic を動かしてパッケージをインストールしてみました。
qt をソースから再インストール、PyQtもリビルドしました。
その結果、日本語が表示出来るようになりました。
やはり環境設定の問題でした。
ただし、
(1) xfontsel で IPAフォントが見えていません。
(2) PC-Xサーバ側でも ubuntu のフォントが参照できる Xフォントサーバーが動いていない。
ここで、もう一度 synaptic で調べたら xfs がインストールできる状態になっていました。
昨日までみえてなかったような。。。。
オフライン
横レス失礼します〜
わたしの環境では−
フォントフォルダ "/usr/share/fonts/"の下に, "ipamona"というフォルダを作って,
ipag-mona.ttf, ipagp-mona.ttf, ipam-mona.ttf, ipamp-mona.ttf, ipagui-mona.ttf
以上, 5種類のフォントファイルを入れるだけで,
"apt-get install qtconfig" でインストールした,
"Qt3 Configuration" の "fonts" タブの "Default Font"-"Family:" ドロップダウンリストに,
IPAMonaGothic, IPAMonaMincho, IPAMonaPGothic, IPAMonaPMincho, IPAMonaUIGothic
と,出てきています.
参考にしたのは,
"日経Linux" 2006年6月号 "基礎講座 オフィス・ソフトの新定番 OpenOffice.org に乗り換えよう"
128-129ページ コラム記事 "フォントの置換とIPAモナーフォントの使い方"
です.
このコラム記事の前半(128ページ側)に, "IPAモナーフォント"の入手の仕方と導入フォルダ
("/usr/share/fonts/")との記載があります.
…今確認してたら, Ubuntu についての記載がありました〜, 以下は抜粋です.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(中略) これをシステムのフォント・ディレクトリ (例えばUbuntuのGNOME環境で
あれば, /usr/share/fonts)に移動すれば, IPAモナーフォントをデスクトップ環境や
アプリケーションで使えるようになります.
$ sudo mv fonts/*.ttf /usr/share/fonts/ [Enter]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
IPAモナ−フォントの入手は,
"IPAモナーフォントの配布ページ"
"http://www.geocities.jp/ipa_mona/opfc-ModuleHP-1.1.1_withIPAMonaFonts-1.0.3.tar.gz"
から, OpenPrintingSystem用HP Vector Driverの付属物として入手出来ます.
(↑このへんもコラム記事に書かれています.)
必要なのはこの中のフォントファイルのみです.
ファイルを展開して, けっこう深いフォルダに格納されています.探してみて下さい.
コラム記事の内容としては, このあとOpenOffice.orgで, MSゴシックやMS明朝の
指定されているドキュメントを開くために, 代替フォント設定を行うという内容でした.
Ubuntuのバージョンは, 6.06 と 6.10 で同様に使用出来ましたので, ほかの方の
環境でも再現されるのではないかと思います.
参考になりますでしょうか?
でわ〜
最後の編集者: youre (2007-03-15 13:49:58)
オフライン