目次

LaTeXへの画像貼りこみ

ExcelやPowerPointで作った図・グラフをEPS化してLaTeXに貼りこむ手順には結構罠があるので、解説します。

たぶん色んな流儀があるんだと思いますが、僕なりの方法を解説するということで。Windowsを想定しています。


Excelでグラフを作る

適当にExcelでグラフを作ります。

WMF2EPSを導入

WMF2EPSを導入します。ここでも見ながら設定してください。

WMF2EPSを起動すると、こんな画面が立ち上がります。

WMF2EPSにグラフを取り込む

Excelで作ったグラフを選択して、Ctrl+Cでクリップボードにコピーします。

そのあとWMF2EPSでCtrl+Vを押すと、こんな画面が出てくるのでPaste EMFをクリックしてください。

そしたらEMFファイルを保存するダイアログが出るので、適当な場所に保存してください。

取り込んだグラフをEPSにする

そしたら、画像に示してあるボタンを押してください。

さっきEMFファイルを保存したのと同じ場所に、EPSファイルが出現します。

これでおしまい

かと思いきや、おしまいではありません

PDFを生成するのに使っているソフトがdvipdfmxの場合には画像がズレます。こんな風に。

どうやら、EPSのBoundingBoxが(0, 0)から始まっていないとズレてしまうようです。

EPSファイルをテキストエディタで開いてBoundingBoxを

%%BoundingBox: 56 56 535 344

から、

%%BoundingBox: 0 0 535 344

に修正すると一応ズレずに表示されるんですが、

EPSの左下に余白が増えてしまうので、図が右上に寄ってしまって間の抜けた感じになります。

というわけで、増えてしまった余白を消します。

Epstoolを導入

Epstoolを導入しましょう。

公式サイトからDLはできなくなっていますが、オープンソースのソフトを配布しているサイトなどからDLできますので、ぐぐって探してください。

DLしたらzipを解凍し、解凍先のbinディレクトリにPATHが通っている状態にします。

よくわからない人はC:\Windows\System32に解凍したフォルダをフォルダごと移してください。

トリミング用のバッチファイルを作成

ここに書かれているバッチファイルを作成します。

メモ帳などのテキストエディタを立ち上げて、

@echo off
echo Adjusting EPS File...
epstool --copy --bbox %1 "%~dpn1_mod.eps"
echo Done
pause

これをコピペして、拡張子がbatになるようなファイル名で保存します。

ちなみに僕はtrim.batにしています。

ドラッグ&ドロップでトリミング

さっき作成したバッチファイルに、EPSファイルをドラッグ&ドロップします。

こんな感じの出力が出れば成功です。

上手く行ってないっぽいなーという人は、epstoolにPATHが通ってないと思いますので、再起動するなりググるなりしてみましょう。

すると、EPSファイルが元あった位置に、(元のEPSファイル名)_mod.epsというファイルが出現します。

元のEPSファイル名がhoge.epsならhoge_mod.epsという具合ですね。

これをTeXに貼りこんでみましょう。

お疲れ様でした

ちゃんと表示されるかと思います。表示されなかった場合は他の原因があるかと思いますので、色々調べてみてください。