WATAPEDIA
--
LaTeX
-- 図の挿入
Last updated Jan. 5, 2014
Home
Return
PDFを表示
記事が表示されない場合は,ブラウザが非対応です.
上のPDFを表示をクリックしてください.
comp -MYPEDIA TEX- 図の挿入 1 概要 TEX 文書に挿入できる図の形式は出力ソフトに依存します.ここでは,DVI ファ イルでは dviout を,PDF ファイルには dvipdfmx を出力ソフトとして使うものとし て話を進めます.PDF 化には,一度 dviout に出力してから,ニコニコマークで PDF に変換するという方法を取っています. 2 図を挿入 2.1 EPS ファイルの挿入 TEX で出力する画像ファイルの標準的な形式は EPS 形式です.EPS は DVI でも PDF でも出力することができます. ファイルサイズの問題などがなければ,他のファイル形式の画像も EPS 形式に変 換してから挿入すれば操作が統一できて覚えやすい.フリーソフトの EPS-conv を 使えば,BMP,JPEG,PNG,GIF,MAG 形式を EPS 形式に変換することができ ます.また,EPS の画像を描くフリーソフトとして,EPS-draw,Inkscape などもあ ります. EPSの画像を挿入するには,次のように記述します.プリアンブルにあるgraphicx パッケージのオプションは dviout と dvipdfmx ともに使える EPS 形式では指定しな くても出力できます. 例は,文書ファイルと同じフォルダに EPS ファイルがある場合だが,ファイル名 の部分には相対参照や絶対参照による指定も可能. EPS ファイルの挿入 \usepackage{graphicx,color} \begin{document} \includegraphics{name.eps} 1 TEX 一覧へ . . comp -MYPEDIA TEX- 2.2 BMP ファイルの挿入 BMP 形式の画像は PDF,DVI ともに出力することができますが,graphicx パッ ケージにそれぞれ dvipdfmx か dviout のオプションを指定しなければならないため, 同時に出力することはできません. BMP ファイルを挿入する際には includegraphics コマンドにバウンディングボッ クスを指定しなければなりません.指定方法は [bb=0 0 横ピクセル数 縦ピクセル 数] です. BMP 形式の画像を出力するには次のように記述します. BMP ファイルの挿入 PDF で出力する場合 \usepackage[dvipdfmx]{graphicx,color} \begin{document} \includegraphics[bb=0 0 600 450]{name.bmp} DVI で出力する場合 \usepackage[dviout]{graphicx,color} \begin{document} \includegraphics[bb=0 0 600 450]{name.bmp} 2.3 JPEG,PNG,PDF ファイルの挿入 JPEG,PNG,PDF ファイルについては PDF で出力することができます.一方, DVI では出力することができないので,空白が表示されます. これらの形式を扱う際には graphicx と color パッケージのオプションに dvipdfmx を指定しておく必要があります.また,BMP 形式同様バウンディングボックスを指 定する必要があります. 挿入方法は以下の通り. JPEG,PNG,PDF ファイルの挿入 \usepackage[dvipdfmx]{graphicx,color} \begin{document} \includegraphics[bb=0 0 600 450]{name.jpg} 2 TEX 一覧へ . . comp -MYPEDIA TEX- 2.4 バウンディングボックスの省略 バウンディングボックスの指定は非常に面倒です.mediabb というパッケージを 使うことで,PDF 出力の場合のみですが,バウンディングボックスの記述を省略す ることができます. mediabb は標準では入っていない場合が多いと思うので,mediabb.sty というファ イルを落とし,/usr/local/share/texmf/tex/latex/misc の中などに入れておく必要が あります. バウンディングボックスの省略 \usepackage{mediabb} \begin{document} \includegraphics{name.pdf} ただし,PDF などは画像のサイズが A4 になってしまっている場合などが多いた め,加工ソフトで事前に画像のサイズを指定しておく必要があります.PDF の加工 が可能なフリーソフトは Inkscape などがあります.Mac であれば,プレビューで PDF を開いてトリミングしたい部分を選択,切り取りを実行して保存しておき,次 のように記述することで簡単に画像サイズを指定することができます.ただしこれ は,切り取った部分以外を表示しないようにしているだけなので,実際に画像サイ ズを変更しているわけではありません. PDF のトリミング \usepackage{mediabb} \begin{document} \includegraphics[mediaboxonly=/CropBox,clip]{name.pdf} PDF を最終出力とするのであれば,画像を PDF として用意することにしても良 いでしょう.一般に EPS に比べ PDF の方がサイズが小さい上に,DVI から PDF へ の変換時に要する時間も少なく済みます. 2.5 エクセルグラフなどをベクター画像として出力 エクセルで作成したグラフなどは,通常画像としてエクスポートするとラスタ画像 になってしまうため,拡大するとギザギザになってしまいきれいに出力できません. この問題を解決するためには,グラフなどをベクター形式で出力する必要があり ます.ここでは PDF で出力する方法を紹介します.仮想プリンタを使うなどの方法 3 TEX 一覧へ . . comp -MYPEDIA TEX- で,直接 EPS を出力する方法もありますが,少し面倒なためここでは紹介しません. もし EPS での出力が良ければ,画像加工のソフトなどを使って PDF から EPS に変 換することもできます. Mac の場合,標準で PDF の出力に対応しているので簡単にできます.エクセル のグラフの例に取ると,グラフを選択,ファイルからプリントを押し,プリンタの 選択画面で左下の PDF ボタンから PDF として保存を実行します.Windows では同 様の機能を有するソフトとして,PrimoPDF などを導入することで同じことができ ます. ベクター画像のエクセルグラフ PDF(ベクター画像) での出力 タイトル 0 0. 1 0. 2 0. 3 0. 4 0. 5 0. 6 0. 7 0. 8 0. 9 1 0 1 2 3 4 5 6 系列名a 系列名b JPEG(ラスタ画像) での出力 拡大すると違いがはっきりと見て取れます. この方法ならば,印刷可能でありさえすればすべての画像を PDF として出力する ことができます. PDF を加工できるソフトがあれば,これらをさらに加工することもできます. フリーソフトでは Inkscape などが有名です.タイトルなどに日本語を含む場合, 4 TEX 一覧へ . . comp -MYPEDIA TEX- Inkscape に取り込む際にエラーが出たり,文字化けしてしまうことがありますが, これはエクセルグラフを作った段階で MSP ゴシックなどの代わりに,Arial Unicode MS やフリーフォントの M+などのフォントを指定しておくことで回避できます. 3 文書内に組み込む 3.1 図の自動配置 includegraphics で挿入した画像は文字として扱われ,そのまま記述すると文章の 途中に割り込んでしまいます.独立した図として扱うには figure 環境に入れておく 必要があります.こうすることで caption コマンドでキャプション (図番号と説明文) を入れることができ,相互参照も可能になります. [!hbt] は図を挿入する位置の指定です. hはその場所(here), bはページ下(bottom), t はページ上 (top),p は別ページ (page) に出力可能であることを示します.!を入 れることで挿入されやすい設定になります. centering コマンドで中央寄せしておかないとキャプションとの位置が合わなく なってしまうので注意が必要です.また,図のキャプションは下に付けるのが決まり で,ラベルは fig:などと付けておくと図のラベルであることがわかるので便利です. 次に例を示します. 図の自動配置 \begin{figure}[!hbt] \centering \caption{図の説明} \label{fig:ラベル} \includegraphics{name.eps} \end{figure} 3.2 図を固定配置 3.1 の自動配置では,なるべく無理のない配置になるように TEX がスコアを算出 して配置を自動に決めています.そのため,[!h] と指定しても必ずその場所に出力さ れるとは限りません. どうしてもその場所に出力したい場合は float パッケージを使います.この指定は 図だけでなく,表を配置する際の table 環境にも使うことができます. 使い方は以下の通り. 5 TEX 一覧へ . . comp -MYPEDIA TEX- 図の固定配置 \usepackage{float} \begin{document} \begin{figure}[H] \centering \caption{図の説明} \label{fig:ラベル} \includegraphics{name.eps} \end{figure} 3.3 図を並べて表示 複数の図を並べて表示するのは includegraphics を figure 環境内で複数書くだけで すが,それぞれにキャプションをつけると横に並べることができません.キャプショ ン付きの図を複数並べるのは,それぞれの図を minipage 環境に入れておくことで実 現できます. 図を並べてそれぞれにキャプションをつける \begin{figure} \centering \begin{minipage}{6cm} \includegraphics[width=5cm]{name1.eps} \caption{キャプション 1} \end{minipage} \begin{minipage}{4cm} \includegraphics[width=3cm]{name2.eps} \caption{キャプション 2} \end{minipage} \end{figure} また,図 1(a) などのように,多段に図番号を付けたい場合は,subfigure パッケー ジが便利です. 6 TEX 一覧へ . . comp -MYPEDIA TEX- subfigure パッケージを使って多段に図番号を付ける \usepackage{subfigure} \begin{document} \begin{figure} \centering \subfigure[キャプション (a)]{ \includegraphics{name1-a.eps} \label{fig:ラベル (a)} } \subfigure[キャプション (b)]{ \includegraphics{name1-b.eps} \label{fig:ラベル (b)} } \caption{全体キャプション} \label{fig:全体ラベル} \end{figure} 3.4 カラムと図の配置 論文など 2カラム (2段組み)以上の文章内で図を1カラムで表示したい場合,figure 環境にアスタリスクを付けて,figure*としておくと 1 カラムで表示してくれます.前 述の図を並べて表示する方法と組み合わせることで,複数の図をきれいにページ上 部にまとめることができます. ただし,図を表示する位置のオプションは,ページ上部 t と独立ページ p 以外で はうまく表示できないようです. 7 TEX 一覧へ . . comp -MYPEDIA TEX- 図を 1 カラムで表示 \begin{figure*}[tp] \centering \begin{minipage}{6cm} \includegraphics[width=5cm]{name1.eps} \caption{キャプション 1} \end{minipage} \begin{minipage}{4cm} \includegraphics[width=3cm]{name2.eps} \caption{キャプション 2} \end{minipage} \end{figure*} 4 表示の調整 4.1 サイズの指定 画像のサイズを指定するには,includegraphics コマンドで次のように指定します. 様々なサイズの指定法 幅を 5cm に指定 (縦横比は保持) \includegraphics[width=5cm]{name.eps} 幅を行の長さの 50%に指定 \includegraphics[width=0.5\linewidth]{name.eps} 幅を 5cm,高さを 3cm に指定 (縦横比は比保持) \includegraphics[width=5cm,height=3cm]{name.eps} 元画像の 30%のサイズに指定 \includegraphics[scale=0.3]{name.eps} 4.2 図の回転 angle で回転角を指定すれば図を自由に回転することができます. originで回転中心を指定します.値はc(中心),tl(左上),tr(右上),bl(左下),br(右 下) のどれかで,デフォルトは bl です. 8 TEX 一覧へ . . comp -MYPEDIA TEX- なお,width などと同時に指定する場合は指定した順番に適応されるので,記述 する順番によって出力が異なります. 以下に例を示します. 左上を中心に 45 度回転 \includegraphics[angle=45,origin=tl]{name.eps} 4.3 トリミング トリミングは画像ファイルの段階で行っておくのが理想ですが,viewport または trim を使うことで TEX 側でトリミングを指定することもできます. viewportではバウンディングボックスの左下を0 0とした場合の座標で[viewport= 左 下 右 上]と指定します. trimでは上下左右から切り落とす長さをそれぞれ[trim= 左 下 右 上] の形で指定します. ちなみに clip は指定領域外を表示しないための設定で,これを指定しないと切り 落とした部分も文章などに重ねて表示されてしまいます. EPS のバウンディングボックスの情報はファイルをメモ帳などで開き,Bounding- Box: 50 50 410 302 のような記述を探すか,GSview などで開いて点線で囲まれた 部分の座標を読み取ることでわかります.GSview の点線が表示されないときは,メ ニューの options の Show Bounding Box にチェ ックを入れることで表示されるよう になります. トリミングの情報は文書があるフォルダの pbm という拡張子のファイルに書き込 まれます.トリミングの指定をしていないのにトリミングされてしまうなどのトラ ブルは,一度このファイルを削除してコンパイルしなおすことで解決することがあ ります. トリミング 座標 (0,30) から (200,250) までの範囲のみ表示 \includegraphics[viewport=0 30 300 250,clip]{name.eps} 下から 1cm,右から 2cm,上から 3cm カットした画像を表示 \includegraphics[trim=0cm 1cm 2cm 3cm,clip]{name.eps} 9 TEX 一覧へ . . comp -MYPEDIA TEX- 4.4 画像に文字など重ねる overpic パッケージなどを使うと,includegraphics で挿入した画像の上に文字や, その他の画像などを重ねることができます.画像の上にさらに画像を重ねることも できます. 指定は次の通り.put の座標はデフォルトでは,画像の長辺を 100 として指定し ます. 画像に文字を重ねる 座標が定まったらオプションの grid は消しておきます. \usepackage{overpic} \begin{document} \begin{overpic}[width=5cm,grid]{name.eps} \put(50,15){重ねるもの 1} \put(20,40){重ねるもの 2} \end{overpic} 0 10 20 30 40 50 60 70 80 90 100 0 10 20 30 40 50 60 70 80 90 100 0 10 20 30 40 50 60 70 0 10 20 30 40 50 60 70 重ねるもの 1 重ねるもの 2 10 TEX 一覧へ . .