• 検索結果がありません。

第 8 章 図表の組版 141

8.2 図

なんといっても

L

A

TEX

では画像に関する多くの処理をデバイスドライバに頼るしかな いので,自分の使おうとしているデバイスドライバがどのような画像処理に対応している のかを知っておきましょう.

PDF

を作成したいならば

Dvipdfmx

PostScript

ならば

dvips

を使うと良いでしょう.

図の挿入に関しての方法は大きく分けて

2

通りあります.

1

つはペイントソフトなどで 書いた画像をそのまま取り込む方法, もう

1

つは

L

A

TEX

picture

環境で図を直接書 く方法です.

2

つ目の方法の詳しいことは『

L

A

TEX

コンパニオン』

[29]

と『

L

A

TEX

グラ フィックスコンパニオン』

[30]

を参照してください.一般的な図の取り込み方としては別 のソフトウェアで

Encapsulated PostScript

EPS

)形式で画像を保存し,それをgraphicx パッケージで読み込むのではないかと思われます.商用のソフトウェアであれば大抵 で

EPS

出力をサポートしています.現在確認できているだけも,

Photoshop

Illustrator

Gnuplot

Mathematica

Matlab

などがあります.そのほかにも汎用

CAD

ソフトなども 対応しているようです.

Unix

OS

の場合

L

A

TEX

と相性が良いと思われるのは

Tgif

好き好き

L

A

TEX 2ε 8.2

8

Ngraph

でしょう.それらを

Windows

環境にインストールするには少々骨の折れる作業で

すが,

Cygwin

上の

XFree86

で日本語のフォントや

Canna

などを一緒にインストールす

るとできるそうです.

8.2.1 EPS 画像の張り込み

EPS

とは

Encapsulated PostScript

の略で

Adobe

社の開発したページ記述言語で,

Post-Script

にプレビュー用の情報を付加したファイル形式です.単一ページでベクトル画像を

保存するのに良く使われる増す.

EPS

形式の画像の場合は

dvips

を使うとファイル形式の 変換を必要とせずにそのまま

PS

ファイルに取り込むこともできます.

Dvipdfmx

などは

1

Ghostscript

pdfwrite

を使って

EPS

から

PDF

に変換した

PDF

ファイルを取り込み ます.

L

A

TEX

での基本的な

EPS

画像の扱い方を説明します.

1.

各アプリケーションで

EPS

保存オプションをモノクローム

256

色(

8

ビット),

PostScript

レベル

2

などに設定してから保存します.フォントはアウトライン化

(ベクトル化)できる場合は行います.カラー印刷する場合はカラーで構いません が容量は大きくなります.

2.

文書のプリアンブルでgraphicxパッケージを使うことを宣言します.

\usepackage[デバイスドライバ]{graphicx}

PS

形式の文書を出力するならば,

dvips

を指定します.

PDF

を作成したいときは

Dvipdfmx

を使うために

dvipdfm

を指定します.

3.

図を挿入したい場所に

\includegraphics

命令を使ってファイル名を示します.

\includegraphics[設定]{ファイル}

仮引数には表

8.6

などのオプションが使えます.

8.6 graphicxパッケージで使える主なオプション

設定項目名 説明 値

width=

hi 出力する図の幅を指定します 長さ,

100mm

など

height=

h高さi 出力する図の高さを指定します 長さ,

100mm

など

angle=

h角度i 反時計回りの回転角度を指定します

0

<<

360 scale=

h数値i 図の拡大・縮小率を指定します

0

<

例 え ば

Ghostscript

の 下 に は

examples

と い う デ ィ レ ク ト リ が あ り ま す .そ こ に

golfer.eps

という

EPS

画像があります.この

EPS

画像ファイル

golfer.eps

L

A

TEX

の文書に張り込むには

golfer.eps

L

A

TEX

の原稿のあるディレクトリにコピーして

\usepackage[]{graphicx}

をプリアンブルに書きます.そして

document

環境の中で

\includegraphics[width=5cm]{golfer.eps}

とします.これを

platex

でタイプセットし,整形された

DVI

ファイルhfilei

.dvi

をプレ ビューアで見ることができます.

上記の操作が問題なくできるでしょうか.基本的に

L

A

TEX

で既存の画像を張り込むと きは

L

A

TEX

に標準で含まれているgraphicxパッケージを使うことになると思われます.

既存の

JPG

BMP

EPS

などの画像は

L

A

TEX

の力ではどうしようもありありません.

それらの画像に関してはデバイスドライバに一任しています.そのため取り込むことので きる画像はデバイスドライバに依存します.それでも画像の張り込みに関してはgraphicx パッケージという統合的な方法が提供されています.このパッケージを使うことによって 任意のデバイスドライバに合わせたコマンドを記述しなくても良いように工夫がされてい ます.

まずこのgraphicxを使うためにプリアンブルに以下の

1

行を追加します.

\usepackage{graphicx}

このとき使用するデバイスドライバが重要で最終的に

PostScript

形式か,

DVI

形式か,そ れとも

PDF

形式が必要なのかによってオプションを変えます.

Windows

で印刷すること も考えるならば最終的に

PDF

形式にすると良いのかもしれません.そうするとデバイス ドライバは

Dvipdfmx

を使うことになるでしょうから,

Dvipdfmx

の場合は

\usepackage[dvipdfm]{graphicx}

とします.

Dvipdfmx

の場合もgraphicxにおいては

dvipdfm

と同じ設定になりますから

dvipdfmx

と書いてはいけません.

Unix

OS

ならば

PostScript

のほうが良いでしょうから

\usepackage[dvips]{graphicx}

とします.

dvipsk

であろうが

pdvips

だろうが

dvips

オプションを使います.他には

xdvi

dviout

も指定できます.

dviout

の場合は

dviout

がインストールされているフォルダの

GRAPHIC/LATEX2E/dviout.def

というファイルを

$TEXMF/tex/latex/graphics/

にコ ピーしてください.

手持ちの画像の形式を判断して使用するデバイスドライバを考えるのが良いでしょう.

標準的に指定できるデバイスは

dvips xdvi dvipdf dvipdfm pdftex dvipsone dviwindo emtex dviwin pctexps pctexwin pctexhp pctex32 truetex tcidvi vtex oztex textures

などです.デバイスドライバによっては graphicx 用の独自の設定ファイル hドライ バi

.def

が含まれていることもあるので確認してください.

既存の画像は基本的に

\includegraphics

命令で読み込みます.

\includegraphics[

h設定i

]{

hファイル名i

}

好き好き

L

A

TEX 2ε 8.2

8

Windows

の方で手持ちの画像のほとんどがビットマップで存在するならば

dviout

をデ

バイスドライバに選択すれば良いでしょう.

EPS

画像が多いならば

1

EPS

から

PDF

変換してから

Dvipdfmx

を使うのが良いと思われます.

Unix

OS

ならば手持ちの画像

EPS

に変換して

dvips

を使うことになるでしょう.試しにご自分の持っている画像h ファイルihデバイスiで取り込めるのかを試してみください.

\documentclass{jarticle}

\usepackage[デバイス]{graphicx}

\begin{document}

\includegraphics{ファイル}

\end{document}

dviout

の場合

EPS

画像を取り込むときは

Ghostscript

にて

EPS

PDF

に変換してから画 像を表示しますから

dviout

Ghostscript

に関する設定を適切に行ってください.図

8.1

のように画像が張り込まれているでしょうか.画像によってはページをはみ出したりして いる場合があるでしょうし,表示が大きすぎる場合があるでしょう.その場合は取り込み に関する設定をします.

,

-2 -1 0 1 2

-1 0 1 2

8.1 画像を取り込んだ例

height=

h高さi 単位付きで画像の高さを指定します.

totalheight=

h総合的な高さi 単位付きで画像の総合的な高さを指定します.

width=

hi 単位付きで画像の幅を指定します.

scale=

h数値i 画像の拡大率を指定します.

angle=

h角度i 反時計回りに画像を回転する角度を指定します.

bb=

h画像の位置情報i 画像のどの領域を使うべきかを指定します.

‘bb=0 0 640 480’

とすると原点を

(0,

0)として縦横

‘640

×

480’

の領域を使うようにします.

noclip

画像用に使うべき領域を元の画像がはみ出している場合に画像を切り抜かない

ようにします.

clip

画像が確保された領域よりも大きい場合は切り抜きします.

draft

実際に画像を張り込まずに画像が占有するだろう領域を枠による代替表示にな

り,ファイル名も表示します.

keepaspectratio

拡大縮小したときに縦横比を保存するようにします.graphicxパッ ケージの標準では保存されます.

レポートや論文などで図には図見出しを付けて中央揃えにするのが望ましいと思われま すので

\begin{figure}[htbp]

\begin{center}

\includegraphics[width=10cm]{images/file.eps}

\caption{図見出し}\label{fig:samplefig}

\end{center}

\end{figure}

のように使うことになるでしょう.ただし,これを毎回書くのは面倒なので次のような図 用の

myfig

命令を作成します.

\newcommand{myfig}[4][width=.8\textwidth]{%

\begin{figure}[htbp]%

\centering\includegraphics[#1]{#2}%

\caption{#3}\label{fig:#4}%

\end{figure}}

このように定義しておけば次のように使えます.

以上の考察から図~\ref{fig:sample}のような 図が得られる.

\myfig[width=100pt,clip]{images/file.eps}{図の張り込みの例}{sample}

浮動体の図は

DVI

ファイルに出力されるときに思いもよらない場所まで旅をしますの で,思い通りの場所に図を出力できなくても気にしないでください.そもそも図表に対し て「上記の図はなんちゃら」とか「下記の図はなんちゃら」という表現は間違いで,全て の図表は「図

3.1

はなんちゃら」のように番号で参照します.ですから本来は図や表がど のような場所に旅立っても困らないはずです.

図などを反時計回りに

90°

回転させることがあるでしょう.その場合は

\rotatebox

命 令を使います.他にも便利な命令があります.

\rotatebox[

h設定i

]{

h角度i

}

要素

これは

\includegraphics

の任意引数に

‘angle’

を使ったことと同じです.

\rotatebox

は図に限らずあらゆる要素を回転します.h設定iの項目には以下のようなものがあり ます.

origin=

hラベルi 要素を回転するための原点を指定します.左

‘l’

,右

‘r’

,中央

‘c’

,上

‘t’

,下部

‘b’

が指定できます.

x=

h長さi x方向の原点の位置を直接h長さiを指定します.

y=

h長さi y方向の原点の位置を直接h長さiを指定します.