XFIG Users Manual

印刷、及びエクスポート

Fig ファイルの Export や Print のために、 xfig は Fig ファイルを望みの出力フォーマットに変換するための ポスト・プロセッサである fig2dev を呼び出します。 Export に際しては、PostScript、EPS、LaTeX、METAFONT や、 GIF、JPEG などのビットマップ・フォーマットを含む、 いくつものフォーマットがサポートされています。 Export の章の Language の説明を参照して下さい。

これは、xfig とともに、fig2dev を インストールしておかなければならないことを意味します。 fig2devtransfig パッケージの一部であり、 あなたが xfig を見付けた場所から入手できる筈です。 詳細については、xfig の入手とインストール を参照して下さい。


印刷

File メニューPrint... (あるいはアクセラレータ Meta-P) は、 図を PostScript プリンタへ出力するための機能を提供します。 出力をファイルに格納したい場合には Export を使用します。

[Print Panel]

Magnification
図の出力に際しての拡大率を、% で指定します。 デフォルトは 100% ですが、 Fig.magnification リソースによって変更することもできます。

Fit to Page
このボタンをクリックすると、 Paper Size で設定された用紙に 少なくとも 1/2 インチの余裕を持って図が収まるように、 Magnification を自動的に設定します。

Orientation
出力のオリエンテーション (方向) を指定します。 Landscape は用紙を横長に、 Portrait は用紙を縦長に使用するようにします。 デフォルトのオリエンテーションは図のオリエンテーション (これは View メニューPortrait/Landscape によって変更できる) と同一となります。

Justification
図の左端を用紙の端に合わせる (Flush Left) か、 図を用紙の中央に出力するようにする (Centered) かを選択します。

Paper Size
用紙の大きさを選択します。

用紙の大きさとしては以下のものが使用可能です。

Pages
Multiple を選択すると、 図が Paper Size で選択された用紙よりも大きい場合に、 図を複数のページに分割して印刷するようになります。 この機能は、印刷を行なった後でそれらの紙を貼り合わせる (貼り合わせを容易にするために xfig は図の一部がオーバーラップするように出力します) ことによって、用紙よりも大きい図を出力することを可能とします。

Single を選択した場合にはこの機能は使用されず、 用紙からはみ出した部分は単に失われます。

Background
出力する図の背景の色を設定します。 デフォルトは白です。

Printer
出力先のプリンタを指定します。 このフィールドが空の場合には、 出力は標準プリンタへ送られます。

このデフォルト値は、リソース Fig*printer*string、 もしくは環境変数 $PRINTER で指定されたものとなります。

システムがプリンタを定義するために /etc/printcap を用いているならば、 この右側にメニューが置かれます。

Print Job Params
ここで指定された文字列は、 lpr (System V システムにおいては lp) の実行に際して オプションとして渡されます。 文字列の中に %f が含まれている場合、 それ (2回以上書いても構わない) は図の名前に置き換えられます。

デフォルトではこれは空ですが、必要であればリソース Fig*job-params*string を用いて設定することができます。

Figures in batch
ここには、 印刷のためのバッチ・ファイルに格納されている図の個数が表示されます。 図は Print FIGURE to Batch を用いて バッチ・ファイルに入れることができ、 それらの図は Print BATCH to Printer によって 1つのジョブとしてプリンタへ出力することができます。

Dismiss
このボタンをクリックすると Print パネルが閉じられます。 アクセラレータ Meta-C も同じ意味を持ちます。

Print all layers/Export only active New
図全体 (全てのレイヤ) を印刷するか、 Depth パネルでアクティブにされている レイヤのみを印刷するかを選ぶことができます。

Print FIGURE / BATCH to Printer
このボタンをクリックすると、 バッチ・ファイルに図が格納されている場合にはそれらの図が、 さもなくば現在の図が、プリンタへ出力されます。 アクセラレータ Meta-P も同じ意味を持ちます。

このボタンのラベルは、現在の図が印刷されるのか、 もしくはバッチ・ファイル内の図が印刷されるのかに応じて、 Print FIGURE to Printer、 もしくは Print BATCH to Printer のいずれかとなります。

プリンタへの出力に際して、xfig は、まず fig2dev プログラム を用いて図を PostScript に変換した上で、 その結果を lpr (System V システムにおいては lp) に 渡します。 lpr (もしくは lp) の実行に際しては、 PostScript Printer フィールドで指定されたプリンタ名と Print Job Params フィールドで指定されたオプションが コマンド行オプションとして渡されます。

Print FIGURE to Batch
このボタンをクリックすると、 現在の図がバッチ・ファイルに追加されます。 アクセラレータ Meta-B も同じ意味を持ちます。

バッチ・ファイルに格納された図は、 後で Print BATCH to Printer が実行されたときにプリンタに出力されます。 この機能は、 複数の図を一度にプリンタへ出力するために用いることができます。

Clear Batch
このボタンをクリックすると、 バッチ・ファイルの内容が消去されます。 アクセラレータ Meta-X も同じ意味を持ちます。 バッチ・ファイルの図は、 Print BATCH to Printer がクリックされた後には自動的に消去されます。


エクスポート

File メニューExport... (あるいはアクセラレータ Meta-X) は、 図を PostScript、GIF、JPEG、HP-GL などの 種々のフォーマットでファイルに格納するための機能を提供します。 これは、xfig で作成した図を他のアプリケーション (例えば LaTeX や FrameMaker など) で読み込みたい場合に用いることができます。

xfig を LaTeX とともに使用するためのヒントについては LaTeX と Xfig を参照して下さい。

図を PostScript プリンタへ出力するためには Print を使用して下さい。

[Export Panel]

LanguageGIF である場合には、 どの色を透明とするかを選択するメニューが現れます。

[Export GIF]

LanguageJPEG (JFIF) である場合には、 ``quality factor'' を設定するためのフィールドが現れます。

[Export JPEG]

Magnification
図の出力に際しての拡大率を、% で指定します。 デフォルトは 100% ですが、 Fig.magnification リソースによって変更することもできます。

Fit to Page
このボタンをクリックすると、 Paper Size で設定された用紙に 少なくとも 1/2 インチの余裕を持って図が収まるように、 Magnification を自動的に設定します。 これは、Language として PostScript を選択している場合に限って有効となります。

Paper Size
用紙の大きさを選択します。 使用可能な Paper Size については、 Print パネル での説明を参照して下さい。 これは、Language として PostScript を選択している場合に限って有効となります。

Orientation
出力のオリエンテーション (方向) を指定します。 Landscape は用紙を横長に、 Portrait は用紙を縦長に使用するようにします。 デフォルトのオリエンテーションは図のオリエンテーション (これは View メニューPortrait/Landscape によって変更できる) と同一となります。

Justification
図の左端を用紙の端に合わせる (Flush Left) か、 図を用紙の中央に出力するようにする (Centered) かを選択します。 これは、Language として PostScript を選択している場合に限って有効となります。

Pages
Multiple を選択すると、 図が Paper Size で選択された用紙よりも大きい場合に、 図を複数のページに分割して出力するようになります。 Single を選択した場合にはこの機能は使用されません。 これは、Language として PostScript を選択している場合に限って有効となります。

Export Offset
エクスポートに際して、 図はここで設定された距離だけ右、もしくは下へシフトして出力されます。 負の値を指定することにより、 図を左、もしくは上へシフトさせることも可能です。 距離の単位は、InchesCentimeters、及び Fig Units (version 3.x では 1/1200 インチ) から選択することができます。

Language
図をエクスポートするフォーマット (言語) を選択します。 デフォルトは Encapsulated PostScript ですが、 Fig.exportLanguage リソースによって変更することもできます。

以下のフォーマットが使用可能です。

ベクタ・フォーマット:

ビットマップ・フォーマット:

LaTeX フォーマットのバリエーションとして、 標準の picture 環境以外に、epiceepic、 及び eepicemu マクロを使用することもできます。 Combined PostScript/LaTeX を用いると、図のテキストの部分を LaTeX で、 それ以外の部分を PostScript で出力することができますが、 これは特に図に複雑な数式が含まれている場合 (TEXT FLAGS も参照) に有用です。

xfig で作成することのできるすべての図を、 すべてのフォーマットにおいて完全に出力できるわけではありません。 例えば、取り込まれたイメージは IBMGL でのエクスポートに際しては出力されません。 PostScript でのエクスポートに際しては xfig のほとんどすべての機能が使用可能であり、 またかなり高品質の出力を生成することができます。

xfig と共に入手可能な TransFig パッケージの一部である fig2dev プログラムが、 Fig フォーマットからの実際の変換の処理を行ないます。

GIF や JPEG などのビットマップ形式でのエクスポートを行なうためには、 Ghostscript、 及び netpbm パッケージ が必要となります。

Smooth
Language が ビットマップ・フォーマットのいずれかである場合には Smooth というラベルの付けられたボタンが現れます。 これは、フォントの描画品質を改善するために (`-S 2' オプションを用いて) fig2devGhostscript がイメージを2倍の大きさで生成させるようにさせ、 その結果を pnmscale によって本来の大きさに縮小しますが、 これは隣り合ったピクセルの色の平均を取ることによって イメージを滑らかにします。

Border Margin
PostScript、Encapsulated PostScript、HTML image map、 及びビットマップ・フォーマットのいずれか (例えば、GIF、JPEG など) でのエクスポートに際して、 図の周囲にここで指定した幅の余白を設けることができます。 余白の大きさの単位は、ピクセル、もしくは 1/80インチです。

Background
出力する図の背景の色を設定します。 デフォルトは白です。

Transparent Color
GIF フォーマットでのエクスポートに際して、 いずれかの色を ``透明'' であるものとして設定することができます。 Transparent GIF に対応した GIF ビューア (例えば Netscape Navigator など) での表示に際しては、その色は表示されず、 代わりにその色があった場所にはビューアの背景が現れるようになります。 このメニュー・ボタンは、 GIF フォーマットでのエクスポートに際してのみ表示されます。

デフォルトは None です。

Export all layers/Export only active New
図全体 (全てのレイヤ) をエクスポートするか、 Depth パネルでアクティブにされている レイヤのみをエクスポートするかを選ぶことができます。

Default Filename
Output Filename でファイル名が指定されなかった場合には、 出力はここに表示されているファイルへ書き込まれます。

このファイル名は、デフォルトでは図のファイル名に 出力のフォーマットに対応する拡張子を付け加えたものとなっていますが、 Output Filename でファイル名を指定して エクスポートを行なった場合にはそのファイル名に変更されます。

Output Filename
出力を書き込むファイルを指定します。 このフィールドが空の場合には、 Default Filename フィールドのファイル名が 出力先のファイル名として用いられます。

Output Filename フィールドのファイル名は、 Alternatives リストのファイル名をクリックするか、 もしくはキーボードから直接入力することによって変更することができます。 ファイル名を入力した後に return をタイプすると、 Export ボタンをクリックした場合と同様に そのファイルへのエクスポートが行なわれます。

Alternatives
ここには現在のディレクトリの中のファイルの一覧 (Filename Mask に一致するもの) が表示されており、 その中からエクスポート先のファイルを選択することができます。

このリストの中のファイル名をマウスボタン1でクリックすると、 そのファイル名が Output Filename フィールドにコピーされます。 また、このリストの中のファイル名をマウスボタン1でダブル・クリックすると、 Export ボタンをクリックした場合と同様に そのファイルへのエスポートが行なわれます。 既に存在しているファイルへのエクスポートを行なった場合には そのファイルに格納されていた情報は失われることに注意して下さい。

Filename Mask
ここで指定されたパターンに一致する名前のファイルのみが Alternatives リストに含められます。 パターンは UNIX のシェルで用いられるものと同様のものであり、 ``*'' や ``?'' などの メタ・キャラクタを用いることができます。

このフィールドで return をタイプすると、 Rescan ボタンがクリックされた場合と同様に 現在のディレクトリがスキャンされます。 この文字列は、Language の選択に応じて設定されます

Current Dir
これは現在のディレクトリを示しており、 Alternatives リストには このディレクトリの中のファイルが表示されます。

この内容は、Direcotries リストの ディレクトリ名をクリックするか、 もしくはキーボードから直接入力することによって変更することができます。 ディレクトリ名を入力した後に return をタイプすると、 Rescan ボタンをクリックした場合と同様に そのディレクトリの中のファイルがスキャンされ、 Alternatives リストの内容が更新されます。

Directories
ここには現在のディレクトリの中のディレクトリの一覧が表示されており、 このリストのいずれかの項目をマウスボタン1でクリックすると そのディレクトリへの移動が行なわれます。 通常はここには隠しディレクトリは表示されませんが、 これは Show Hidden ボタンによって切り替えることができます。

``..'' は親のディレクトリを示しています。 親ディレクトリへの移動は、Alternatives リスト、 もしくは Directories リストの上で マウスボタン3をクリックすることによって行なうこともできます。

Home
このボタンをクリックすると、 ユーザーのホーム・ディレクトリへ移動します。

Show Hidden
このボタンをクリックすると、 隠しディレクトリ (名前が ``.'' で始まるディレクトリ) を 表示する状態と表示しない状態とが交互に切り替えられます。 通常は、隠しディレクトリは表示されないようになっています。

Rescan
このボタンをクリックすると、 現在のディレクトリの中のファイルがスキャンされ、 Alternatives リストの内容が更新されます。 アクセラレータ Meta-R も同じ意味を持ちます。

Cancel
このボタンをクリックすると Export パネルが閉じられます。 アクセラレータ Meta-C も同じ意味を持ちます。

Export
このボタンをクリックすると、 Output Filename フィールドで ファイル名が指定されている場合にはそのファイルへの、 さもなくば Default Filename で示されているファイルへの エクスポートが行なわれます。 アクセラレータ Meta-E も同じ意味を持ちます。

Default Filename とは異なる、 既に存在するファイルへのエクスポートを行なおうとした場合には、 エクスポートを行なうかどうかを確認するための確認ウィンドウが開かれます。 また、Default Filename とは異なるファイルへの エクスポートを行なった場合には、 そのファイル名が Default Filename に設定されます。


LaTeX と Xfig

ここで、xfig と LaTeX を使用するための いくつかの有用なヒントを示しておきます。

この解説は、Eric Masson (ericm@kirk.ee.mcgill.ca) によって書かれた文書に基づくものです。

xfig の図を LaTeX ファイルに取り込む方法

xfig の起動に際して、次のようなコマンドを用います:
  xfig -specialtext -latexfonts -startlatexFont default

もし全ての図を Special フラグLaTeX フォント を選択して開始したいのであれば、.Xresources ファイルか あなたが使っているリソース・ファイルで次のように指定します:

  Fig.latexfonts: true
  Fig.specialtext: true

xfig が生成でき、LaTeX が読むことのできる、 いくつかのフォーマットがあります。 ここでは3つのケースのみをカバーします:

  1. 直接 LaTeX 形式で出力する
  2. Encapsulated PostScript (EPS) で出力し、それを LaTeX で取り込む
  3. 図の一部を PostScript で、一部を LaTeX で出力し、 それらを文書の上で重ね合わせる

これらの方法にはそれぞれの利点があり、同程度に容易に扱うことができます。 方法 (A) の利点は、全てが TeX 形式に含まれており、 DVI ファイルが必要な情報全てを保持することです。 (B) では出力に際して PostScript の全ての機能とフォントを使用できます。 (C) では PostScript の描画機能と、 LaTeX のテキストのタイプセット機能を用いることができます。

LaTeX 文書のプリアンブル (\begin{document} よりも前の部分) に、次の行を置きます:

        \input{psfig}

プリアンプルは次のようなものとなるかも知れません:

  \documentstyle[12pt,bezier,amstex]{article}  % include bezier curves
  \renewcommand\baselinestretch{1.0}           % single space
  \pagestyle{empty}                            % no headers and page numbers
  \oddsidemargin -10 true pt      % Left margin on odd-numbered pages.
  \evensidemargin 10 true pt      % Left margin on even-numbered pages.
  \marginparwidth 0.75 true in    % Width of marginal notes.
  \oddsidemargin  0 true in       % Note that \oddsidemargin=\evensidemargin
  \evensidemargin 0 true in
  \topmargin -0.75 true in        % Nominal distance from top of page to top of
  \textheight 9.5 true in         % Height of text (including footnotes and figures)
  \textwidth 6.375 true in        % Width of text line.
  \parindent=0pt                  % Do not indent paragraphs
  \parskip=0.15 true in

  \input{psfig}           % Capability to place postscript drawings


  \begin{document}
  \end{document}

Type A ― 直接 LaTeX 形式で出力する

描画能力の点では、これは最も非力です。 LaTeX では、いくつかの特定の角度の線のみを描画することができます。 線に矢印が付いている場合、この制限はさらに厳しくなります。 楕円、スプラインなどの、いくつかの機能はサポートされていません。 (xfigbezier などの LaTeX マクロ・パッケージによる利点を用いていません。)

この方法で線を描画する場合には、 xfig 上での線の角度を 適切なものに制限するようにしなければなりません。 さもなくば、図を LaTeX フォーマットでエクスポートした際に、 xfig はそれを LaTeX が扱える最も近い角度で近似し、 通常は望ましくない結果が生じます。

このモードではテキストに LaTeX のコマンドを含めることができ、 LaTeX に取り込まれた際にそのコマンドは適切に解釈されます。 例えば:

        $\int_0^9 f(x) dx$
は関数 f(x) の 0 から 9 の積分となります。 LaTeX ファイルを生成するためには、xfigFile メニュー から Export... を選択し、 エクスポートする Language として LaTeX picture を選択します。 これによって .latex というサフィックスを持つファイルを生成し、 直接 LaTeX 文書に取り込むことができます。

例えば、次のコードはファイル yourfile.latex を 直接 LaTeX 文書に取り込みます:

  \begin{figure}[htbp]
  \begin{center}

  \input{yourfile.latex} 

  \caption{The caption on your figure}
  \label{figure:yourreferencename}
  \end{center}
  \end{figure}

Type B ― Encapsulated PostScript での出力

この方法では図の描画についての制限はありません。 ただし、このフォーマットにおいては LaTeX のコマンドは使用できません。 しかし、このフォーマットが選択された場合には 多数の PostScript の全てが使用可能となります。

図を描き終ったならば、xfigFile メニュー から Export... を選択し、 エクスポートする Language として Encapsulated PostScript を選択します。 これによって、次のような方法によって LaTeX 文書に取り込むことができる、 .eps というサフィックスを持つファイルを生成することができます。

  \begin{figure}[htbp]
  \begin{center}
    \psfig{file=yourfile.eps}
  \end{center}
  \caption{Your caption}
  \label{figure:yourreference}
  \end{figure}

注意: 環境によってはこの方法は使用できないかも知れません。 また、この方法で生成される DVI ファイルは ポータブルではないものとなることがあります。

Type C ― Postscript/LaTeX の組み合わせ

この方法ではどのような線や曲線を使うこともできます。 また、LaTeX のコマンドの使用も許され、 かつ PostScript フォントを使用することもできます。 従って、テキストの中に
        $\int_0^9 f(x) dx$
のように入力すれば、それは LaTeX で処理されます。 LaTeX で出力したいテキストについては Special フラグ を ON にし、 PostScript で出力したいテキストについては OFF にする必要があることに注意して下さい。

この方法を用いる場合には、 File メニュー から Export... を選択し、 エクスポートする Language として Combined PostScript/LaTeX (both part) を選択します。 これによって、次のような方法によって LaTeX 文書に取り込むことができる .pstex_t というサフィックスを持つファイルと、 PostScript のコードを含む .pstex というサフィックスを持つファイル を生成することができます。 .pstex_t ファイルは自動的に .pstex ファイルを取り込むので、 これを明示的に TeX ファイルに含める必要はありません。 図を取り込むためには、次のようなものを用います:

  \begin{figure}[htbp]
  \begin{center}

  \input{yourfigure.pstex_t}

  \caption{Your figure}
  \label{figure:example}
  \end{center}
  \end{figure}

注意: xfig が生成した .pstex_t ファイルを 編集したいと思うことがあるかも知れません。 それは .pstex ファイルを完全なパスで参照することがありますが、 これはそれらのファイルを他のディレクトリに動かした場合に問題を生じます。 個人的には、完全なパス指定を削除し、 ファイル名のみを残しておくことを好んでいます。

補足

Fig ファイルに Encapsulated PostScript ファイルを 取り込むことができます。 これは、他のプログラムの出力に書き込みをしたい時に有用です。 例えば、MATLAB の図を取り込んで、 興味のあるポイントをテキスト、線、円などで示すことができます。 Version 2.1.7 以降の xfig は、 図の中の PostScript の図を表示するための Ghostscript へのフックを含んでいます。

もし .ps ファイルしか持っていないならば、 それを Encapsulated PostScript に変換するために Ghostscript の ps2epsi を用いることができるでしょう。

必要であれば、 pstoedit を用いれば、 PostScript を Fig ファイルに変換することができるかも知れません。


pstex_t での図の大きさの変更

From Stephen Eglen (stephene@cogs.susx.ac.uk)

図を

  \input{file.psttext_t}
によって取り込みたいのであれば、図の大きさを指定する方法はありません。

これに対する、2つの解決方法があります:

  1. 最初から xfig で正しい大きさで図を作成する。 あるいは、図をエクスポートする際に、Export パネルMagnification での設定を変更することによって図の大きさを変更する。 いずれの方法でも、LaTeX 文書上での図の大きさが気に入らなかった場合には xfig に戻らなければならない。

  2. \scalebox、あるいは \resizebox を用いて、 LaTeX に図の大きさを変更させる。 これはグラフィック・パッケージからのテキストや図をスケーリングするための 一般的な機能です。

           \scalebox{factor}{object}
    
    は、任意の比率でオブジェクトをスケーリングします。 比率は単純な数値 (1よりも小さければ縮小、1よりも大きければ拡大) です。 オブジェクトは、通常はいくつかのテキストやグラフィックです。

    例えば:

           \scalebox{2}{ \input{file.pstex_t} }
    
    は、ドライバに依存して、図を2倍に拡大します。 ビットマップ・フォントをスケーリングすると醜い結果が得られるので避けること。

           \resizebox{width}{ht} {stuff}
    
    は "stuff" を width × ht の大きさにリサイズします。 パラメータとして "!" を用いるとボックスのアスペクト比が保存されます。 例えば:
           \resizebox{5cm}{!}{fat cat} 
    
    は "fat cat" の幅を 5cm に、高さを適切に設定します。 (Lamport の本の 129ページより)


HTML イメージ・マップの生成

Export パネルLanguage として HTML Image Map を選択してエクスポートを行なうことにより、 HTML 3.2 のイメージ・マップ (クリッカブル・マップ) を生成することが可能です。

この機能を使用する場合には、クリックできるようにしたいオブジェクトに、 Edit パネルComments で、

HREF="url" ALT="string"

のような指定を行なっておくことが必要となります。 ここで、url はリンク先の URL、 string は イメージを扱わないブラウザのための代替文字列 (ALT アトリビュートは HTML 3.2 では必須となっている) です。 string は、xfig がイメージ・マップと共に生成する 代替テキスト・リンクのラベルとしても用いられます。

TEXT オブジェクトをリンクのために用いることはできません。 CIRCLE、ELLIPSE、SPLINE、及び ARC は多角形で近似されます。 POLYLINE や OPEN SPLINE などの開いたオブジェクトは 閉じられているものとして扱われます。 ARC-BOX は BOX と同じように扱われます。


[ Contents | Introduction | Credits ]