この問題は xfig を UTF-8 環境で動作させている場合に生じ、 ja_JP.UTF-8.ps を その名前でインストールすることで改善できるかも知れません。 しかし、UTF-8 での使用は他にも問題を起こすことがありますので、 LANG=ja_JP.eucJP /usr/bin/xfig -international のように EUC で動作させた方が無難です。
A: この問題は少々やっかいであり、残念ながら私の知識の範囲では ちゃんとお答えすることができません。
この原因としては、LANG の指定が正しくない、xfig を -international オプションを付けずに起動した、入力メソッドが動作していないなどと いった単純なものも考えられますが、多くの場合はそれ程簡単なものでは ないでしょう。
xfig 3.2 は日本語の入力を Xlib を介して行なうようになっているため、 少なくとも Xlib の国際化機能が有効となっており、かつ入力メソッドと Xlib とが接続できることが必要であり、さもなくば xfig 上で日本語の 入力を行なうことができない状態となります。 他のアプリケーションで日本語の入力を行なえるとしても、この条件が 満たされているとは限らない (Xlib を介さずに入力メソッドと接続する ようになっているアプリケーションも多い) ことにも注意して下さい。
X11R6 への移行を検討して下さい。 xfig 3.2 は日本語 (国際化テキスト) の入力のために X11R5 の仕様に 含まれている XIM プログラミングインターフェースを用いているの ですが、残念ながら X11R5 の実装の多くではこの機能を使って日本語 の入力を行なうことは容易ではない (できない?) ようです。
なお、Solaris 2 の OpenWindows や CDE の上での動作は確認されています。
X11R6 のものの代わりに、Solaris の標準のライブラリを使って xfig をコンパイルし、標準の入力メソッド (htt や ATOK) を使って入力を 行なうようにしてみて下さい。
実際にこの構成で使われている方も多いようですが、環境によっては うまく動作しない場合もあるようです。
次のような項目は、試して見る価値があるかもしれません。
IRIX 6.3 では、xfig を gcc でコンパイルした場合にはうまくいかず、 標準の cc で -N32 -mips3 を指定してコンパイルしたところ動作する ようになったことがあるようです。
A: 環境によっては、デフォルトの設定のままでは日本語のフォントの スケーリングのためにかなりの時間を要することがあるようです。
これを避けるためには、リソース・ファイル (app-defaults/Fig) で フォントをより具体的に指定して、指定したフォント (スケーリングの必要のないもの) をロードさせるようにして下さい。
フォントの指定の方法は、マニュアルの 「国際化」を参照して下さい。
A: xfig では、日本語入力モードに切り替えるためのキーは 使用している入力メソッドに依存します。 kinput2 の場合には、これはデフォルトでは Control-O、もしくは Shift-SPACE となっており、 必要であれば
Kinput2*ConversionStartKeys: \ Shift<Key>space \n\ Shift<Key>o \n\ Ctrl<Key>space \n\ Ctrl<Key>Kanji
のようなリソースによって変更することができる筈です。
A: デフォルトでのフォントの指定はかなり緩いものとしているため、 環境によっては望ましくないフォントが選択される可能性があります。 そのような場合には、 「国際化機能を有効とした場合に xfig の起動が極端に遅くなる」 の場合と同様にフォントを明示的に指定して下さい。
また、xfig 3.2 は、欧文フォントについては可能であれば X サーバー の機能を用いてスケーリングしたものを用いて表示する (従って、スケーラブルなフォントが使用可能であれば 大きい文字もきれいに表示できる) ようになっていますが、 日本語を含んだテキストについては特定のサイズ (デフォルトでは 16 ドット) の フォントを単純に拡大/縮小したものを用いるようにしているため、 日本語のテキストはあまりきれいには表示できません。 これが気になる場合には、Fig.normalFontSet、 及び Fig.boldFontSet で大きなフォントを指定してみて下さい。
フォントの指定の方法は、マニュアルの 「国際化」を参照して下さい。
A: この原因としては、次のようなものが考えられます:
この場合には“fig2dev: illegal option - j”のような警告が出力される筈ですので、 マニュアルの「国際化」や 「インストール」 を参照して、再コンパイルを行なって下さい。
システムによっては、LANG として japanese ではなく ja_JP.EUC、ja_JP.eucJP などと指定する必要があるかも知れません。 LANG を ja_JP.SJIS とした場合などでも xfig 3.2 上で日本語の入力や表示を行なうことは可能 (一部、正常な処理を行なえなくなる部分もある) ですが、 その状態では PostScript での出力を正常に行なうことはできません。
この場合には“fig2dev: can't open file: /usr/local/lib/fig2dev/japanese.ps” のような警告が出力されます。 transfig 3.2.3 ではこのファイルは自動的に作成される筈です。
fig2dev 3.2.3 はデフォルトでは Ryumin-Light-EUC-H と GothicBBB-Medium-EUC-H、 もしくは HeiseiMin-W3 と HeiseiKakuGo-W5 のいずれかを搭載したプリンタで 印刷できるような出力を生成します。 もしそれ以外のフォントを使用する必要がある場合には、 フォントの指定の変更 が必要となります。
また、fig2dev の出力を GhostScript で正常に扱えないというのであれば、 その GhostScript の設定に問題がある可能性もあります。 GhostScript (少なくとも Version 5.x) は、 設定によってはコンポジット・フォントを使った場合に正常な出力を行なえなくなる (その状態でも、コンポジット・フォントを使わなければ日本語も正しく出力できる) ことがあるようです。
GIF での出力 (export) を行なうためには、 GhostScript (ppmraw ドライバが組み込まれたもの) と、 netpbm パッケージに含まれている ppmquant、及び ppmtogif コマンドが必要となります。 他のフォーマットのいくつかについても、 netpbm パッケージの所定のコマンドが必要となります。
GIF に関連する特許 の関係から、GIF のイメージを取り込むためのコードは xfig 3.2.3 で取り除かれました。 これ以降の xfig では、GIF のイメージの取り込みを行なうためには netpbm パッケージの giftopnm、及び ppmtopcx コマンドが必要となります。
コンパイルの際の指定によっては、 JPEG や XPM のイメージも取り込めない可能性があります。 また、EPS ファイルを取り込むためには、 pbmraw、及び pcx256 ドライバの組み込まれた GhostScript が必要となります。
A: フォントとして Times-Roman、もしくは Times-Bold を選択した時に 日本語のテキストを取り扱える (Latin-1 キャラクタ[1] は扱えなくなる) こと、及び fig2dev の呼び出しに際して -j オプションを指定する ようになっていることを除き、標準の xfig とほぼ完全に互換となって います。
fig ファイルのフォーマットは一切変更していませんので、日本語を 含まない fig ファイルについては完全な互換性があります。 また、日本語を含んだ fig ファイルを標準の xfig で読み込んだ場合 には日本語が Latin-1 キャラクタに化けてしまいますが、それ以外 には特に問題はありません。
逆に、標準の xfig で作成した Latin-1 キャラクタ (Times-Roman、 もしくは Times-Bold のフォントの) を含んだ fig ファイルを 日本語 xfig で読み込んだ場合には、そのテキストを日本語として 表示しようとするため奇妙なことになります。 そのような場合には、そのテキストのフォントを Times-Roman、 及び Times-Bold 以外のものに変更して下さい。
なお、I18N を指定してコンパイルされた xfig も、-international も `Fig.international: true' も指定されていない場合、あるいは LANG が英語を示すもの (`C' などを含む) となっている場合には、 国際化機能は有効とならず、標準の xfig と同じ動作となります。
[1]ここで、「Latin-1 キャラクタ」は、 Latin-1 文字セットに含まれる ASCII 以外の文字 (主にヨーロッパで使われるアクセント符号付きの文字など) のことを示しています。
A: 基本的には、その図が日本語を含んでいなければ大丈夫です。 ただ、その図に日本語が1文字でも含まれている場合には xfig の 出力した PostScript コードを非日本語 PostScript プリンタで 印刷することはできなくなりますので、心配な場合には xfig を 国際化機能を有効とせずに起動して、Export や Print を行なって 下さい。
日本語を含んだ図を非日本語 PostScript プリンタで印刷したい 場合には、GhostScript を使用することができるかも知れません。
A: 図を GIF などのフォーマットで export すれば多くの環境で容易 に読み込むことができるようになりますが、 この方法では図の分解能が固定されたものとなってしまいます。
GhostScript (gswin/gsview?) などを用いれば、PostScript で export した図を MS-Windows 上で表示することが可能となります。
A: 多分ありませんが、次のようなものが使用できるかも知れません。 私はいずれについても試したことがありませんので、 これらを試されたことのある方、 あるいはこれ以外のものに関する情報をお持ちの方などは、 是非情報をお寄せ下さい。
Using FIG with MicroSoft Windows も参照して下さい。
A: LaTeX picture などのフォーマットで export して LaTeX 文書に 貼り付ければ、その図は LaTeX で処理されますので、テキストは 本文と同じフォントで出力されますし、LaTeX の機能を用いて数式 などを書くことも可能です。
Combind PostScript/LaTeX を用いれば、 指定されたテキスト (Special フラグがセットされているもの) を LaTeX で、 それ以外の部分を PostScript (EPSF) で出力し、 LaTeX 文書に貼り付ける段階でそれらを合成することができます。 この方法を用いた場合には、Special フラグがセットされたテキスト は本文と同じフォントで出力されますし、複雑な数式も LaTeX の 機能の範囲内できれいに書くことができます。 また、図のそれ以外の部分は PostScript で出力されますので、 複雑な曲線などもちゃんと出力されます。 なお、この機能を使用するためには LaTeX 2e と epsfig.sty が必要です。 (→ 出力例)
A: figencode を試して下さい。 これは、fig ファイル内の日本語のエンコーディングの、 現在のロケールへの変換を試みます。 変換が行なわれた場合、それらのファイルは変換後のもので上書きされます。 古いファイルは .bak を付けた名前で残すようにしてはありますが、 事前にコピーを取っておくことをお薦めします。
A: xfig は多くの人々 の協力によって開発され、現在も改良が続けられています。 現在は、主要部分については Brian Smith が、 国際化機能については私が 中心となってメンテナンスを行なっています。
xfig のコードへのインテグレートは Brian Smith が行なっていますが、 誰でも改良のためのコードを提供することができ、 実際にそのような形で提供されたコードが多数取り込まれています。
A: xfig のソースは、ftp.x.org やそのミラー、 及び任意の CTAN サイトから入手することができますので、 近くのサイトから ftp して下さい。
国内では、例えば次のような場所に置いてあると思います。
一部のプラットホームについては、 コンパイル済みのパッケージ の入手も可能です。
A: 国際化機能を除く部分のバグ・レポートは、 xfig-bugs@epb1.lbl.gov で受け付けています。 ですが、日本の方は VEF00200@nifty.com (T.Sato) へ送って下されば結構です。 ただし、FreeBSD や Debian GNU/Linux などのパッケージを使っている方は、 そのシステムでの方針に従うようにして下さい。
質問は、fj.comp.x11 へポストするか、 あるいは VEF00200@nifty.com (T.Sato) へメールして下さい。 意見や要望なども歓迎します。