Mac OS Xにはアップルが実装したいろいろなコマンドラインツールが入っていますが、このページで紹介するpstopdfもその一つです。pstopdfはPS to PDFという意味で、早い話がPostScriptファイル(EPS等)をPDFに変換するプログラムです。なお、これは10.3になってから加わったコマンドで、10.2.x以前には含まれていません。

 使い方はシンプルで、「pstopdf PDFにしたいPostScriptファイル」です。では、さっそくやってみましょう。

Last login: Sat Mar 27 22:31:53 on ttyp1
Welcome to Darwin!
PowerBookG4:~ hiro$ cd terminaltest
PowerBookG4:~/terminaltest hiro$ ls -al
total 1112
drwxr-xr-x   6 hiro  hiro     204 27  3 22:35 .
drwxr-xr-x  32 hiro  hiro    1088 21  3 21:16 ..
-rwxr--r--   1 hiro  hiro    6148 27  3 22:34 .DS_Store
-rw-r--r--   1 hiro  hiro  167936 27  3 22:31 osx.indd
-rw-r--r--   1 hiro  hiro  207408 27  3 22:30 osxWithFont.eps
-rw-r--r--   1 hiro  hiro  183280 27  3 22:30 osxWithOutFont.eps

 実験に使うのはosxWithFont.epsとosxWithOutFont.epsです。これは、InDesign CSで作成した下記のような内容のデータをEPSに書き出したものです。

OS X 急進派、Be more Unix

 これをそれぞれPDFにしてみます。

PowerBookG4:~/terminaltest hiro$ pstopdf osxWithFont.eps
PowerBookG4:~/terminaltest hiro$ pstopdf osxWithOutFont.eps
KozMinStd-Regular-90pv-RKSJ-H not found, using Courier.
Vespasian-Plain not found, using Courier.
PowerBookG4:~/terminaltest hiro$ ls -al
total 1152
drwxr-xr-x   8 hiro  hiro     272 27  3 22:37 .
drwxr-xr-x  32 hiro  hiro    1088 21  3 21:16 ..
-rwxr--r--   1 hiro  hiro    6148 27  3 22:34 .DS_Store
-rw-r--r--   1 hiro  hiro  167936 27  3 22:31 osx.indd
-rw-r--r--   1 hiro  hiro  207408 27  3 22:30 osxWithFont.eps
-rw-r--r--   1 hiro  hiro    9001 27  3 22:36 osxWithFont.pdf
-rw-r--r--   1 hiro  hiro  183280 27  3 22:30 osxWithOutFont.eps
-rw-r--r--   1 hiro  hiro    5811 27  3 22:37 osxWithOutFont.pdf

 PDFファイルはできているようですが、osxWithOutFont.epsの変換では、何やら文句を言われていますね。開いてみると、、、

osxWithFont.pdfosxWithOutFont.pdf
ちゃんと読める 文字化けしまくり

 ファイル名で私が元のEPSにどういう差をつけたのかお分かりかと思いますが、osxWithFont.epsはフォントのサブセットも含んだ状態でEPSに書き出し、osxWithOutFont.epsはフォントを含めずに書き出したものです。
 下部に配置してあるCochinフォントの部分はどちらでも変換できていますが、同じ欧文フォントでも中段のVespasianで書いたXは置き換えられてしまっています。それから、上段の小塚明朝も全滅ですね。というわけで、一部の欧文フォントをのぞき、フォントを含めない状態で書き出してしまうと、このように文字化けしてしまうようですね。

 このタイプのコマンドではよくあることですが、pstopdfも出力ファイルのファイル名を指定しておくことができます。その場合「pstopdf PostScriptファイル -o PDFのファイル名」という順番で記述します。

PowerBookG4:~/terminaltest hiro$ pstopdf osxWithFont.eps -o osxRadicalist.pdf
PowerBookG4:~/terminaltest hiro$ ls -al
total 1176
drwxr-xr-x   9 hiro  hiro     306 27  3 23:18 .
drwxr-xr-x  32 hiro  hiro    1088 21  3 21:16 ..
-rwxr--r--   1 hiro  hiro    6148 27  3 22:34 .DS_Store
-rw-r--r--   1 hiro  hiro  167936 27  3 22:31 osx.indd
-rw-r--r--   1 hiro  hiro    9001 27  3 23:18 osxRadicalist.pdf
-rw-r--r--   1 hiro  hiro  207408 27  3 22:30 osxWithFont.eps
-rw-r--r--   1 hiro  hiro    9001 27  3 22:36 osxWithFont.pdf
-rw-r--r--   1 hiro  hiro  183280 27  3 22:30 osxWithOutFont.eps
-rw-r--r--   1 hiro  hiro    5811 27  3 22:37 osxWithOutFont.pdf