Illustrator などのソフトウェアできれいな数式を作るのって,大変ですよね。 TeX, LaTeX を使えば簡単にきれいな数式ができます。
TeX で無指定で使われるフォントは,本文は Computer Modern Roman 10pt (cmr10),数式は Computer Modern Math Italic 10pt (cmmi10) です。 これらは(PostScript アウトラインデータ形式の)OpenType フォント,TrueType フォント,Type 1 フォントのそれぞれの形式で配布されていますので,これらを他のアプリケーションで使うことができます。 もちろん Illustrator でも使えます。
Computer Modern フォントの OpenType 形式が CTAN:fonts/cm/ps-type1/bakoma/otf/ から,Latin Modern フォントの OpenType 形式が CTAN:fonts/lm/fonts/opentype/public/lm/ から入手できます。
TrueType 形式の Computer Modern フォントの一つである BaKoMa フォントは,例えば CTAN:fonts/cm/ps-type1/bakoma/ttf/ から入手できます。 Type 1 フォント形式の一つである PFB 形式のフォントは TeX に標準で入っています。 $TEXMF/fonts/type1/{bluesky,bakoma}/*.pfb を検索してください。
複雑な数式は LaTeX を使ってタイプセットし,EPS などの形式でインポートするとよいでしょう。
TeX の数式をクリック一つで PDF/EPS/SVG/PNG/JPEG 形式などの画像ファイルに変換するツールとして KLatexFormula あるいは TeX2img があります。 コマンドラインを使いたくない人は,このツールで EPS ファイルを生成し,InDesign や Illustrator に「配置」するのがお手軽でしょう。 この方法は EPS ファイルの文字をアウトライン化してくれるので,数式用フォントを OS にインストールしなくても文字化けの心配がありません。
例えば次の数式を作ってみましょう。

お好きなテキストエディタに次のように打ち込んでください(Linux でも macOS でも Microsoft Windows でも何でもかまいません)。
\documentclass{article}
\pagestyle{empty}
\begin{document}
\[ \int_{0}^{\infty} \frac{\sin x}{\sqrt{x}} dx = \sqrt{\frac{\pi}{2}} \]
\end{document}
これを例えば “testeq.tex” というファイル名で保存します。
LaTeX がインストールしてあるとして,次のようにコマンドを打ちます(あるいはマウスでこれに相当する操作をします)。
$ latex testeq.tex $ dvips -E testeq.dvi -o testeq.eps
これで
testeq.eps という EPS ファイルができます。
ここで “-E” は EPS 形式で保存するオプションです。
これを忘れると EPS でない PostScript 形式になってしまいます。
この方法は(文字をアウトライン化しないので)テキストを保持した状態の EPS ファイルを出力します。
上で作った EPS ファイルをそのまま InDesign 2.0 に「配置」すると,次のようになります。

上の例では,LaTeX のデフォルトのフォント (Computer Modern) を使いました。 「数式フォントの比較」のページに,LaTeX で簡単に使えるいくつかの数式フォントを比較しています。
InDesign で数式を扱う場合は Latex to InDesign や latex.insert が便利です。
【追記】 Illustrator CS の環境設定で「リンクされたEPSに低解像度の表示用画像(プレビュー)を使用」のチェックを外してリンク配置すれば,EPS でも問題なく文字が表示されました。 PDF でもリンク配置なら問題ありません。macOS のプレビューを使えば PDF を範囲指定してクロップできます。
![]() | ![]() |
| Illustrator 10.0.3 に配置したところ。箱しか見えない。 | Illustrator から保存した EPS。 |
EPS を作るところまでは上と同じです。 ただ,この EPS をそのまま Illustrator に[ファイル]→[配置...](「配置」ダイアログボックスの「リンク」チェックボックスをオフにした状態で)すると,「所在不明のフォントは,初期設定のフォントで代用されます。」というメッセージが出て,文字化けします。
別の方法も後で書きますが,簡単かつ確実な方法は,「配置」ダイアログボックスの「リンク」チェックボックスをオンにすることです。 dvips の出力する EPS にはプレビュー画像が附いていませんので,配置してもただの箱に見えます。 これでも PostScript デバイス(PS プリンタや Adobe Acrobat Distiller)に出力すれば,きれいに出ます。 また,Illustrator から EPS で保存しても大丈夫です(保存時に「配置した画像を含む」チェックボックスをオンにします)。
EPS にプレビューを付けておけば,配置したときにプレビューを見ることができますので便利です。 GSview の [Edit] → [Add EPS Preview] でプレビューが付けられます。
この方法では Illustrator から直接 PDF で保存すると文字化けしますので,PDF 化するならいったん EPS で保存してから Adobe Acrobat Distiller で処理してください。
箱じゃ不安,あるいは Illustrator の中で数式を編集したい,という場合には次のようにします。 ただし,Illustrator のフォントリストにたくさんのフォントが追加されてしまいますのでご注意ください。
あらかじめ $TEXMF\fonts\type1\ フォルダー(例えば C:\texlive\2024\texmf-dist\fonts\type1\)をフォルダーごと "C:\Program Files\Common Files\Adobe\Fonts\" 以下のフォルダーにコピーまたはリンクしておきます(Thanks: 長さん qa:20350,角藤さん qa:20353)。 こうすると,TeX で使う多数の Type 1 フォントを Windows に登録せずに Adobe 製品で使うことができます。 Illustrator から直接 PDF で保存しても大丈夫です。
mathpazo,newtx,newpx 等のパッケージを使った場合は,dvips に PostScript Level 2 での基本35書体をダウンロードするオプションを付けます(TeX Live なら “-Pdownload35”)。
(この項については内山さんからご教示をいただきました。)
macOS でも,TeX からは UNIX や Windows と同じ Type 1 (PFB) フォントが使えますが,一般のアプリケーションからは使えません。 http://www.botik.ru/~znamensk/CTAN-2002/fonts/cm/ps-type1/bluesky/ から cmps-oztex.hqx または cmps-textures.hqx をダウンロードしてお使いください(フォントについては両者の中身は同じようです)。 スクリーンフォントも必要です(→ MacでフォントをAdobeのアプリが認識しない)。
インストールの場所は,Adobe 製品だけから使うなら /Library/"Application Support"/Adobe/Fonts/ 以下ですが,macOS では次の場所のいずれかに入れるのがいいかもしれません。 macOS では次の順にフォントを探してくれます(→ 「[Mac OS]OS Xにおけるフォント(font)ファイルの保存場所3ヶ所とその意味について|およびインストール方法」,「macOS のフォントの保存場所はどこですか?」)。
私は ~/Library/Fonts/ の中に一つフォルダを作って,その中にまとめて入れました(macOS 10.2 以降で可能)。
ただ,Mac 版 Illustrator 10.0.3 では PDF で保存すると一部の文字が化けます。 “\[ \Gamma - \gamma \]” で実験してみてください(“$\Gamma$” や “$-$” は化けやすいことで有名)。 Windows 版なら大丈夫なのに残念です。 Mac 版でも,Illustrator から EPS で保存したものは大丈夫です。 PDF にしたければ EPS で保存して Adobe Acrobat Distiller で変換すればいいでしょう。
念のため TrueType 形式の Computer Modern フォント(BaKoMa フォント:CTAN:fonts/cm/ps-type1/bakoma/ttf/)でも試してみました。 「テキストエディット」では使えましたが,Illustrator ではフォントリストには出るけれども表示できません。
この方法は Microsoft Windows でしか使えません。また,あらかじめ Windows のシステムに BaKoMa の Computer Modern TrueType フォントなどをインストールしておく必要があります。
dviout(2002年10月9日以降のもの)では次のようにして EMF 形式でクリップボードにコピーできます。 まず [Display] → [Region] → [On](ショートカットは “Ctrl + [”)にして,Shift を押しながら左クリックで矩形領域の左上隅,やはり Shift を押しながら右クリックで右下隅を指定します。 これで [File] → [Save as image] → [EMF in clipboard](ショートカットは “Alt + (F, S, E)”)すると,クリップボードにコピーされます。 これで Illustrator などの EMF 形式を理解するソフトに貼り付ければ OK です。
また,pstoedit を GSview と同じところ(標準では "C:\Program Files\Ghostgum\pstoedit\")にインストールしておけば,GSview から [Edit] → [Convert to vector format...] で WMF や EMF に変換できます。
TeX2img は EMF 形式のファイルを出力することができます。 また,Windows 版に付属の pdfiumdraw (TeX2img が内部から利用している)を使い
> pdfiumdraw --emf input.pdf
とすることで,input.pdf を EMF へと変換することもできます。
Ghostscript の eps2write デバイスを使ってアウトラインを取る方法もあります(→ qa:20472)。 eps2write は gs9.14 以降で追加されたデバイスなので,お使いのバージョンが gs9.14 より古い場合は以下 epswrite と読み替えてください.
まず,次のように充分大きいサイズで式を作ります (jsclasses なら 簡単にできます)。 文字が小さいとアウトラインではなくビットマップ化されてしまいます。
\documentclass[uplatex,dvips,30pt]{jsarticle}
\pagestyle{empty}
\begin{document}
\[ \int_{0}^{\infty} \frac{\sin x}{\sqrt{x}} dx = \sqrt{\frac{\pi}{2}} \]
\end{document}
次のコマンドを順に打ち込みます(Unix-like OS の場合)。
$ uplatex testeq.tex $ dvips -E testeq.dvi -o testeq.eps $ eps2eps testeq.eps testeq2.eps
この eps2eps は Ghostscript で eps2write デバイスを使うシェルスクリプトです。 Microsoft Windows ならおそらく次に相当します(さらに正確には “-dDEVICEWIDTH=250000 -dDEVICEHEIGHT=250000” というオプションも含んでいます)。
>rungs -dSAFER -q -dBATCH -dNOPAUSE -sDEVICE=eps2write -sOutputFile=testeq2.eps testeq.eps
これでアウトラインが取れます。日本語も大丈夫です。 できた testeq2.eps の %%BoundingBox: 行がなぜか変なので,元の testeq.eps の %%BoundingBox: 行と置き換えます。 これで testeq2.eps はフォントを含まないアウトラインだけの EPS になり,Mac でも Windows でも Illustrator などに安全に配置できます。
jsclasses を使う方法以外に,\scalebox で数式を拡大する方法もあります。 この場合には 次の例のように数式を $\displaystyle ...$ で書くといいでしょう。
\documentclass[dvips]{article}
\pagestyle{empty}
\usepackage{graphicx}
\begin{document}
\scalebox{3}{$\displaystyle
\int_0^\infty \frac{\sin x}{\sqrt{x}} dx = \sqrt{\frac{\pi}{2}}$}
\end{document}
別解として,dvips に “-x 3000” のようなオプションを与えれば3倍に拡大されます。
[2006年7月3日 追記] 次のようにすれば,充分大きいサイズで式を作る必要もなく,%%BoundingBox: 行も変にならないようです(→ qa:43337)。
>rungs -dSAFER -q -dBATCH -dNOPAUSE -sDEVICE=eps2write -dEPSCrop -r9600 -sOutputFile=testeq2.eps testeq.eps
端が欠ける場合は “-dEPSCrop” を外せばいいようです。
なお,お手軽ツール TeX2img も eps2write デバイスを使用して文字をアウトライン化しています。 ほかにも,TeX2img は便利な画像変換ノウハウを多く備えていますので,(たとえ TeX2img を使わないとしても,Windows/Mac 以外でも)この画像変換スキームは参考になることでしょう。
LibreOffice/Apache OpenOffice Math は OLE に対応しています。
LaTeX Equation Editor (for Windows) に OLE 機能を追加したものが LaTeX Equation Editor (LaTeX EE) です。 本来は MiKTeX を必要とするソフトウェアですが,MiKTeX の texify.exe の代わりに TeX Live の uplatex.exe を指定すれば MiKTeX がなくても動作します。 PNG 形式での貼りつけになるので拡大・縮小に弱く,数式の背景色が透過されず白地のままであるという注意点があります。
プレゼンツールを参照してください。