inkscapeでLaTeX数式を使う

Tgifとその問題

Linuxを触り始めて15年ほどになります。Linux上でのお絵かきツールはほとんどTgifを使ってきました。

Tgifはお絵かきツールとしては軽量で、描画機能的にはほどほどです。それでも、LaTeXの数式を埋め込んで使えたり、epsファイルがインポートできたりして、LaTeXユーザーとしては大変重宝してきました。

歴史が長いTgifはutf-8対応が遅れているようで、日本語の入力に問題があります。localeがeucならば大丈夫なのですが、私の環境も数年前からutf-8に移行してしまっており、日本語入力せずにTgifを使っている状態を続けていました。

Inkscape

そこで、ようやく Inkscapeの検討を始めました。これは日本語の入力は問題がないことは分かっていますので、今回はLaTeXの数式が使えるか、を検討しました。Inkscape のversionは0.48、OSはGNU/Linux (Debian unstable)です。

TeX Wiki Inkscape にはエクステンションの紹介があります。EqTeXSvgというのあるのですが、どうやら数式の新規挿入はできても編集ができないようです。そこで、後で数式が編集可能な textextを試してみました。

開発版のtextext のSourceからtextext.pyをもらってきます。私はtetext.inxは0.4.4のものを使っています。開発版のものは試していません。これらをconfig/inkscape/extensions/に置きました。

“Converter:”はいくつかの中から選ぶことができます。”pstoedit”や”Inkscape”でも変換可能ですが微妙に字体が崩れる場合があるようです。私の環境では”Pdf2Svg”が意図した通りの出力になりました(pdf2svgをインストールする必要があります)。ちなみに”Text:”はいきなり数式、たとえば

\[
ax^2 + b x + c = 0
\]

のように入力できます。( \begin{document}, \end{document}\documentclassなどはtetext.pyの中で設定されています。)

“Preamble file:”にはプリアンブルで設定する内容(packageなどの読み込みなど)のファイルを指定できます。私は

\usepackage{amstext,amsgen,amsbsy,amsmath,amsxtra,amssymb}

という中身のファイルを、同じconfig/inkscape/extensions/に置いています。