読者です 読者をやめる 読者になる 読者になる

InkscapeでLaTeX用の図を書く

最近、Adobe製品やMicrosoft製品からの解脱を目指して、可能な限りGimpInkscapeLibreOfficeなどを使用しています。その中で、Inkscapeの画像出力オプションに「LaTeX用のPDFを作る」という機能があったので試してみました。

まず適当な図を作ります。普通にPDFとして別名保存すると、以下のようなファイルができます。保存時にフォントのアウトライン化なども指定できるので、作図したとおりの見た目が保持されています。



このファイルをLaTeX\includegraphics{hoge.pdf}としても良いのですが、図中のフォントがLaTeXの標準フォントと異なるのが気になる場合があります。例えば図だけTimesやPalatinoで作り、本文は文字部分はComputer Modernだと、微妙に違和感があります。

それを解決しようというのがInkscapeの「PDF+LaTeX」オプションです。別名保存しようとすると以下のような画面が出てきますが、赤く囲った部分がそのオプションを指定する部分です。




このオプションを指定してPDF保存すると、文字部分が省かれたPDFファイル(hoge.pdf)と、そのファイルを読み込んで上に文字を重ねて書くLaTeXソース(hoge.pdf_tex)が出力されます。このソースファイルを自分の文書中で\input{}してやれば図と文字を重ねた状態になります。

\documentclass[a4paper]{jsarticle}
\usepackage[dvipdfmx]{graphicx}
\usepackage{color}
\begin{document}

\begin{figure}
  \input{hoge.pdf_tex}
  \caption{図です。}
\end{figure}

\end{document}

出力は以下のようになりました。




文字の位置がずれる、文字のエフェクト(今回はぼかし)が取れる、文字がすべて前景に来てしまうなど、様々な問題はあるものの、フォントはComputer Modernが使われているのが分かります。位置やフォント種類を変更したければ、hoge.pdf_texの中身を編集すればOK。

フォント不一致の悩みが解決されるので、学術論文の中に入れる単純なダイアグラムを書くにはぴったりです。