Akita National College of Technology Yamamoto's Laboratory
ホーム研究内容コンピューター講義ノート学内限定
 
 
 
 
 
 
 
 
コンピューターLaTeX文書作成 → 図

目次

  1. 図の作成
  2. LaTeXへの取り込み
  3. PSfragによる文字の変換

図の作成

お絵かきとなると,Linuxはつらい.いろいろと試したが,使いやすいものがないので,今は windows を使っている.文章は Linux ,図は Windows というわけである.Microsoft Visio を使うことが多く,2次元の図であれば,必要な機能はそろっている.特に,テンプレート(ステンシルと言うらしい)が充実しており,短時間でそれなりのものができる.

しかし,Visio を使ったお絵かきにも問題がある.まともな EPS ファイルができない.そこで,つぎに示す2つの方法で,EPS ファイルを作成している.Linuxへのファイル転送まで含めると,かなりの手間であるが,今のところ,これがベストと思っている.Samba によるファイル共有がないと 2つの OS を同時に使うのは大変である.

2つの方法を比べると,AdobeのPSプリンタードライバーを使う方がきれいな図ができる.とくに文字を回転させたとき,WMF2EPSはキザギザになってしまう.

WMF2EPSを使う方法

WMF2EPS とGhostscript で, EPS ファイルを作ることができる.次のような手順である.

  1. 印刷から,プリンターとして WMF2EPS を選択して,ファイルへ出力する.これで, PS ファイルができあがる.
  2. 次に PS ファイルを Ghostscript で開き,メニューの File → PS to EPS を選択して,EPS ファイルに変換する.

PSプリンタードライバーを使う方法

ここに書いてある方法で,Adobeのポストスクリプトプリンターのドライバーをインストールする.後の操作は,WMF2EPSと同じ.

LaTeXへの取り込み

EPSファイルをLaTeX文書に貼り付けるときは,次のように書く.

\begin{figure}[位置指定(Hやhbtpなど)]
 \begin{center}
  \includegraphics[keepaspectratio, scale=スケール(普通は1.0)]
  {ファイルの指定(先頭に./を付けない)}
  \caption{図の説明}
  \label{ラベル名}
 \end{center}
\end{figure}

図を並べて表示させるときには,tabular 環境をつかい minipage に並べる.minipage 内に図を入れることにより,碁盤の目のように並べることができる.

\begin{center}
 \begin{figure}[H]
  \begin{tabular}{cc}
   %---- 最初の図 ---------------------------
   \begin{minipage}[t]{0.45\hsize}
    \begin{center}
     \includegraphics[keepaspectratio, scale=縮尺]{ファイル1}
     \caption{キャプション1}
     \label{ラベル1}
    \end{center}
   \end{minipage} &
   %---- 2番目の図 --------------------------
   \begin{minipage}[t]{0.45\hsize}
    \begin{center}
     \includegraphics[keepaspectratio, scale=縮尺]{ファイル2}
     \caption{キャプション2}
     \label{ラベル2}
    \end{center}
    %---- 図はここまで ----------------------
   \end{minipage}
  \end{tabular}
 \end{figure}
\end{center}

PSfragによる文字の変換

はじめに

PSfragを使えば,ポストスクリプトで書かれた図中の文字列を変換できる.LaTeXコマンドを使った文字を図に挿入することが可能となる.美しい図を作成するためには,ぜひとも使いたい機能である.

ただし,pxdvi や dvipdfmx が対応していない—という問題もある.PSfragを使うならば,dvi ファイルを PS ファイルに変換して,ghostscript を使うことになる.

インストール

スタイルファイル

  1. ファイルをダウンロードする.例えば,ここから.
  2. ダウンロードしたファイルを解凍する.
  3. # tar -zxvf psfrag.tar.gz
         

    次のようなファイルができる.

    00Contents    announce.txt    pfgguide.ps    psfrag.dtx    readme.sem    testfig.eps    00readme.txt    example.eps    pfgguide.tex    psfrag.ins    readme.xfg

  4. 必要なファイルの作成
  5. # platex psfrag.ins

    以下のファイルができる.

    psfrag.pro    psfrag.sty    psfrag.log

  6. psfrag.styをパスの通ったディレクトリーへコピー (スタイルファイルの追加)
  7. # cp psfrag.sty /usr/share/texmf/ptex/my_style
  8. ファイル名データベースのリフレッシュ
  9. # mktexlsr

dviout for Windows

  1. ここに書いてある.私の場合,きちんと動作しなかった.原因が分かったら,アップロードする.

cjkps2pdf.pl

cjkps2pdf.plは,ポストスクリプトからpdfを作る.ここから,ダウンロードしてPATHの通っているディレクトリーにコピーすればインストールできる.

使い方は,次の通り.dvioutで文字化けが生じた場合に,pdfを印刷すればきちんと出力できる.

  1. dviファイルを作成する.
  2. $ platex hoge.tex
  3. ポストスクリプトファイルを作成する.
  4. $ pdvips hoge.dvi
  5. pdfを作成する.
  6. $ cjkps2pdf.pl hoge.ps

注意

Fedora core 5の pxdvi は,PSfragに対応していないらしく,「PSfrag replacements」と表示される.Windows の dviout for Windows は対応しているらしいが,私の場合設定ができていない.設定ができていないと,Fedora と同じように,「PSfrag replacements」と表示される.これでは,困るので,postscript に変換(pdvips hogehoge.dvi)して,Ghostscript でプリントアウトしている.

文章を web で公開するとき,dviファイルは html と pdf に変換する必要があるだろう.latex2htmlは PSfrag に対応しているようで問題ない.それに対して,dvipdfmx はダメである.他のプログラムで,pdf を作成する必要がある.ps2pdf はフォントが汚い.cjkps2pdf.plを使うことにより,比較的きれいな pdf ができあがる.

使い方

プリアンブルに,以下のように記述する.

\usepackage[dvips]{graphicx,psfrag}

そして,ポストスクリプト内の変更したい文字列について,その指定を行う.

\psfrag{変更前文字列}{変更後文字列}

具体的には,次のように書く.すると,その下の図のように,それぞれの文字列が変わる.このソースから分かるように,LaTeXのコマンドが使える.

\begin{figure}[hbtp]
 \begin{center}
  \psfrag{pi}{{\LARGE  $\pi$}}
  \psfrag{-pi}{{\LARGE $-\pi$}}
  \psfrag{equation}{$\displaystyle \frac{4}{\pi}\sum_{k=1}^{100}
      \frac{\sin(2k-1)x}{2k-1}$}
  \includegraphics[keepaspectratio, scale=1.0]{rect_wave.eps}
  \label{fig:rect_S_10}
 \end{center}
\end{figure}

オプション

オプション付きで PSfrag を使う場合は,次のように書く.詳細は,pfgguideを見よ.

psfrag{tag}[posn][psposn][scale][rot]{LaTeX text}
tag PSファイルの文字列.この文字列を置換する.
posn LaTeXの参照ポイント.{t,b,B} (top, bottom, baseline)と{l,r} (left, right)がある.デフォルトは,[Bl]となっている.
psposn PSのテキストの参照ポイント.デフォルトは,[Bl]となっている.
scale 縮尺.デフォルトは,1である.
rot 回転の角度.単位は度[deg]で,デフォルトは 0 である.
LaTeX text tag を,この LaTeX テキストに置き換える.

参考


last update:2009/03/03 16:04:33