第4版のできるまで

印刷時のトラブル?

(準備中。以下は書きかけです)

まず,本書を開かれると,章見出しや節見出しが前回よりさらにかっこよくなっていることに気付かれたと思います。前回もそうですが,すばらしいスタイルファイルを作ってくださったのは編集部のTeXnician,須藤さんです。どうもありがとうございます。

本書は原稿(TeXファイル)をすべてUTF-8で準備し,Subversion で原稿のバージョン管理を行いました。 編集側でもWindows環境でSubversionを使っていただきました。 Subversionと親和性の高いUTF-8で統一できたのは,pTeXのUTF-8対応パッチが出て,W32TeXでも対応していただいたおかげです。

私の作業はすべて,私の身の回りにあるいろいろなMacで行いました。 Subversionを使ったので原稿の同期をとるのは簡単です。 原稿は Carbon Emacs で書きました。 pTeXはteTeX 3.0 + ptetex3をソースからmakeしたものです。 私の使った環境(Carbon Emacs以外)をそのまま本書付録CD-ROMに収めてあります。

CD-ROMにMac OS X版として収めた Ghostscript 8.54 のgs_pdfwr.psは30--33行目がコメントアウトされており,すべてのフォントを埋め込むようになっています。dvips/dvipdfmxのmapファイルもすべてのフォントを埋め込むように設定してあります。

実は,本書でも解説しているPDF/X-1aで入稿してみようと思っていた時期もあり,最初のうちはどちらでも出力できるように準備していたのですが,編集部も私もdvipdfmxを利用してトラブルなくイメージセッター出力できた実績がたくさんあるので,より確実なdvips→Distiller→PDF/X-1aではなく,オープンソースソフトだけで完結するdvipdfmx→PDF 1.4を選びました。

図版の扱い方については,本書で詳しく述べましたが,EPSは本書付録にも収めたGhostscript 8.54のps2pdfであらかじめPDFに変換し,PNGは ImageMagick のconvertで convert foo.png -type Grayscale foo-gray.png のようにしてグレースケールに変換し,dvipdfmxで最終的なPDFに組み込みました。前回はPhotoshopでグレースケールのEPSにしたのですが,今回は少し冒険をして大部分のビットマップ図の変換にオープンソースのImageMagickを使いました。しかも,EPSやPDFにせずに,PNGのままdvipdfmxでPDF化しました。

実をいうと,編集部に作っていただいたWindows Vistaのスクリーンショットは,編集部でPhotoshopでグレースケール化していただいたものが二つだけあります。これらは私のところのプリフライトで警告が出たのですが,Photoshopだから大丈夫だろうということで,時間もなかったのでそのままにしてしまいました。その一つがp.13の図です。グレースケールのはずが……^^;。でも,かえってかっこよくなったので,そのままにしてあります。ImageMagickのidentify -verboseコマンドで調べてみると,Gray以外にAlpha Channelが入ってしまっています。

例によって,印刷所への入稿の日ぎりぎりまで作業を続けるという編集部泣かせのことをしてしまいました。最終的なPDFをSubversionにコミットして授業に出かけたのですが,その後で奥付などに直しが入ってしまい,編集部のWindows環境で作り直したPDFを印刷所に渡しました。編集部もこういう作業に慣れているのですが,今回は手違いでTimesなど基本フォントが埋め込まれていないものが印刷所に渡ったようで,印刷所から「フォントが埋め込まれていない」という連絡が来てしまいました。結局は私の作ったPDFで出力し,直しの部分だけ後で差し換えることになりました。フォントについては細心の注意が必要です。

フォントについては,前回とあまり代わり映えがしない出来になってしまいましたが,Palatino(Palladio)は新しいメトリックを使ってあります。実は,最初はp.207で解説しているURW Garamondを使うつもりでいたのですが,Palatinoに比べて細かいデザインやメトリックに問題がある部分が気になってきたので,結局Palatinoに戻してしまいました。

多言語処理を扱った付録Jについては,旧版の永田先生の原稿を栗山さん,稲垣さん,安田さんに大改定していただいたのですが,珍しいフォントを多用しており,私の環境(CD-ROMに収めたMac OS X版)で処理できないものはフォントを埋め込んだPDFの図版を著者に用意していただき,\includegraphics{...} で取り込みました。ところがp.385の右欄外のウイグル文字については,Mac OS Xのプレビューで開くとときどき化けて表示されることがあり,フォントに何かの問題があることが疑われました。時間もなくそのまま入稿したところ,案の定,化けてしまいました。これは著者にIllustratorでアウトライン作成していただいたものに差し換えて切り抜けました(私のところでもTeX Wikiの TeXの数式をDTPソフトに にある方法でGhostscriptでアウトライン化の実験をしてみましたが,これも使えそうです)。

付録Jについては,もう一つ問題がありました。p.377のCJK字体の図の外枠ぎりぎりにBoundingBoxが設定されており,しかもclipオプションが付いていました。プレビュー環境では表示誤差のため外枠が見えたので気付かなかったのですが,印刷所の出力環境では左縦線だけ飛んでしまいました。このページはclipを外したものと差し換えました。

CD-ROMの準備

用意したバイナリはMac OS X 10.4上でPPC用はgcc version 3.3 20030304 (Apple Computer, Inc. build 1819),Intel用はgcc version 4.0.1 (Apple Computer, Inc. build 5367)でコンパイルし,lipoで結合した。次のようなシェルスクリプトを使った。

#! /bin/sh
for x in bin-ppc/*
do
    y=`basename $x`
    if file $x | grep 'Mach-O executable ppc'
    then
        lipo -create bin-intel/$y bin-ppc/$y -output bin/$y
    else
        cp -R $x bin/
    fi
done

ところが,Mac OS X 10.3でdvipdfmxが動かない。

xputenv.c:79: failed assertion `old_item'

というエラーが出る。調べたところ,teTeX 3のkpathseaには環境依存のバグがあるようだ。

の下のほうにある Attached Files: から xputenv.c をダウンロードして,とりあえずdvipdfmxについてだけ作り直したものを収録した。これは2006/12/19以降のptetex3では修正されたようだ(ptetex3のChangeLog)。


奥村晴彦

Last modified: 2006-12-28 11:02:51