> ホーム > 知恵と勇気道具 > PDF職人への道

PDF職人への道

Table of Contents

PDF って、そのコンセプトは素晴らしいのですが、UNIX で PDF を作るお手軽なソフトがないとか、Windows で何気なく作ると TrueType のプロポーショナルフォント関係で、ファイルサイズは小さいけど文字がずれてしまったり、きれいだけどでかいファイルになるかしてしまいます。PostScript 関係の DTP の基本的な知識があればいいことなんでしょうけど、その辺りを使いやすくしてこその PDF、、、じゃないのかなぁ。ま、Adobe 製品がビギナーに優しいなんて、あんまりないことですが。

なお、ここでは Acrobat 4 を基準に記述していきます。

PDFは魔法の杖か?

まず最初に PDF がなにか、ちゅー話を。

PDF というのは Portable Document Format の頭文字で、文字通り可搬性のある文書形式のことを言います。

普通、ワープロでもなんでもそうですが、あるアプリケーションを使って作ったデータは、そのアプリケーション専用の形式で保存されます。それが何か?と思ったあなた。あなたは幸せな環境にいます。きっと周り全員 Word とか、全員一太郎とか、そういう異常な世界に住んでいるのでしょう。それでも中に一人か二人くらい、周りと違うソフトを使っている人がいるはずです。その人は実に肩身の狭い思いをしていると思います。そしてこう言われているでしょう。「どうして○○を使わないの?」「○○を使いなさいよ」と。

じゃーインターネットな昨今、違う会社の人が全然違うソフトでファイルを作って送ってきたらどう思いますか? 「○○を使ってないなんて」と腹を立てますか? そういうわけにはいかないでしょう? ま、私に言わせればこれは送った方も送られた方も非常識ですけどね。詳しくは「文書交換の作法」に譲りますが、要するに「自分と同じソフトを使っていない相手の文書は読めない」のです。これは、残念ながらワープロ専用機の時代と同じです。富士通のワープロと NEC のワープロ、他の会社もそうですが、それぞれのワープロで互換性がないため、相手の文書を読むことができないのです。もちろん印刷した紙を渡せば済むことですが、手軽にフロッピーでデータを渡したいときだってあったはずです。これを、「メーカーの違い」が阻んでいたのです。

ワープロ専用機時代、これを解決する方法は「MS-DOS 形式」に変換することでした。しかしこの形式では罫線などのデータはまったく反映されなくなります。インターネット時代の今、この「メーカーの違い問題」に対する解答のひとつはこうです。「Acrobat PDF 形式」に変換すること。PDF には以下のような特徴があります。

なかなかよいでしょう。つまり、相手がどんなソフトを使っていても問題なく自分の作った文書を読んでもらうには、

  1. 自分の得意なソフトでデータを作る
  2. 作ったデータを Acrobat PDF 形式に変換する
  3. できあがった PDF を相手に送る

というのがよい手順になります。ま、Acrobat Reader を相手がインストールしてないと困るんですが(^^;

ところがこの PDF への変換が、意外に思い通りにできないんですね。しかし、簡単なポイントを抑えれば、すぐに上手に変換できるようになります。ここではそんな簡単なポイントと、上級編への道しるべを示しておこうと思います。

[ ↑ content ↑ ]

PDF作成時の謎と簡単な対処法

PDF Writer だとどうして文字がずれる?

これはたぶん Windows 版独自の現象だと思います。

PDF とは Adobe の製品で、Adobe は PostScript という形式を作っている会社で、Adobe にとってフォントとはすなわち PostScript なわけです。しかし Windows は基本的に Microsoft な TrueType フォントを前提に設計されています。ここに不幸が起こります。(ここではとりあえずフォントに関して詳しく触れる気はありません。)

ワープロ文書から PDF への変換イメージ

ワープロ文書から PDF へはファイルフォーマットだけでなく、フォントのデータも変わる

Windows の使っている TrueType フォントはそのままでは PDF には使われないはずなんです。PDF は PostScript の世界ですから。そこで PDF 上に TrueType フォントで文字を配置するには「埋め込み」という技を使うのですが、PDF Writer は日本語フォントを埋め込むことができないのです。それでずれてしまうんです。英語圏に住んでいれば PDF Writer でもよかったんでしょうけどね。

Acrobat 5 で、Windows 版 では PDF Writer はオプション扱いになり、Mac 版からはなくなりました。Acrobat 6 は調べてませんが、Distiller と PDF Writer の話は気にする必要がなくなったと考えてよいでしょう。

Distiller だとどうしてファイルサイズが大きくなる?

PDF ファイルを作るには PDF Writer のほかに Distiller を使うという方法もあります。それではこれを使えば問題は解決するのでしょうか?

確かに Distiller で作成した PDF ファイルではフォントのずれはありません。これは Distiller は TrueType の日本語フォントの埋めこみができるからです。しかし、埋めこんでいるということは、文書のデータのほかにフォントのデータもそのファイルに含まれるということを意味します。当たり前ですが。

というわけで、Distiller を使ってフォントを埋めこんだ場合は PDF のファイルサイズが飛躍的に大きくなります。1ページで百数十KB に及ぶのはザラです。 確かにきれいではあるんですが、これではメールで他の人に送ったり、WWW で多くの人に文書を公開するのには適しません。重いファイルは PDF の P である Portable とは相反するものです。

[ ↑ content ↑ ]

じゃーどうしよう?

解決方法は単純です。

等幅フォントを使って PDF Writer で PDF ファイルを作成すること。これが簡単に、軽くて乱れていない PDF を作成するコツです。うまくすれば Distiller の方が小さくできるのですが、完全な PostScript 環境じゃない場合はいろいろ謎の現象に悩まされますので、この方法が安全です。

以下がプロポーショナルフォントを使って PDF Writer で出力した場合の PDF。

プロポーショナルフォントを使って作成した PDF、フォントがずれている例

そしてこれが等幅フォントを使ってきれいに作った PDF。

等幅フォントを使って作成した PDF、フォントのずれはない

少し詳しく説明しましょう。

今まで PDF Writer の出力で文字のずれていた PDF ファイルには、プロポーショナルフォントが使われていたのです。(たいていのワープロソフトで標準の設定では「MS Pゴシック」や「MS P明朝」が選択されていると思います。これはプロポーショナルフォントです。)このプロポーショナルフォントは、文字の形によって文字の占める幅を変えるもので、アルファベットなどの欧文ではこの方が美しく見えるため、かなりポピュラーな手法です。

手元の英語の書かれたカタログやパンフレットなどを見てみてください。i などは細く、W などは大きく書かれていることに気づくと思います。それがプロポーショナルフォントです。しかしこの幅(正確には他の文字との幅のバランス)は a とか i とか W とか文字の違いだけでなく、フォントの種類によっても変わってきます。考えてみればしごく当然、フォントが変わるってことは文字のデザインが変わるってことです。デザインが変われば当然バランスが変わるのです。

ここで最初の説明に戻ります。PDF Writer では日本語のフォントを埋め込むことができません。そして Windows では標準的に TrueType フォントが使われ、PDF では PostScript フォントが使われます。そうです。つまり「ワープロソフト上で使っているフォントと PDF ファイルになったときのフォントが違う」んです。それで文字がずれてしまうんです。

じゃー等幅フォントならなぜずれないか。答えは簡単。等幅っていうくらいなんだから、幅が決まっているんです。文字が変わっても幅はおんなじ。幅が決まっているならフォントの種類が変わろうがなんであろうが、文字がずれる心配はありません。

でも標準でプロポーショナルフォントだし、やっぱその方がかっこいいんじゃないの? いやいや、日本語ってのは、原稿用紙に象徴されるように、もともとほとんど同じ大きさに書いてきれいに見えるものなんですよ。確かに漢字よりひらがなの方を小さく書くなどの変化を、手書きの場合には加えますが、印刷の活字ではそんなことないですしね。(いや、たぶんプロのレベルでは細かい違いはあるでしょう。)安心して等幅フォントをお使いください。(等幅フォントは「MS 明朝」、「MS ゴシック」などのフォントのことです。Mac では「Osaka等幅」などがそれです。)

[ ↑ content ↑ ]

グラフィックが縞々なんだけど?

グラフィックスに縞々が現われている様子

この現象には遭遇したことのない人もいるかもしれません。

結論から言うと、これはどうも作成したグラフィックスの解像度が高すぎることが原因のようです。画面で見たときには縞々だけど印刷すると普通の画像として見ることができるし、画面表示でも 400% などの高倍率にすると普通に表示できました。要するに Acrobat Reader がばかでかい画像を画面に表示するために縮小を行うときに、上手に縮小しきれなくて縞々になってしまった、ということのようです。

この現象はクラリスワークス + モノクロレーザープリンタのドライバを使って ps ファイルに書き出し + Acrobat Distiller で作成した PDF に見られたのですが、同じファイルを PDF Writer で出力した場合には、このようなことは起こりませんでした。(ただし、PDF Writer の場合は適当に画像の精度を落としてしまうんですけど(^^;)PDF Writer と違い、Distiller では画像の圧縮方式、圧縮率を細かく指定できるのですが、この設定が PDF Writer では縞々にならないような設定になっているのでしょう。恐らく Distiller でも画像の圧縮率を上げれば画面上で縞々になったりはしないでしょう。

PDF Writer は基本的に画面で見るためのクオリティで PDF を作成しますが、Distiller はパーソナルユースのプリンタレベル、プロユースのプリンタレベル、印刷レベルまでカバーできますからね。印刷レベルでグラフィックスを作っちゃったら、確かに画面上に収まりきるわけがありません。画面表示にも印刷にもうまく対応するのは意外に難しいことなのかもしれませんね。

なお、この現象はクラリスワークス(Windows版) + Distiller でのみ確認しました。他の環境でのテストを行っていないですし、どの程度の人がこの現象に出くわしているのかもよく分かりませんが、自分は遭遇しているのでここに取り上げておきました。

[ ↑ content ↑ ]

きれいで軽い PDF 作成への挑戦

PDF は、フリーソフトのビュワー(Acrobat Reader)さえあれば誰でもレイアウト済みの美しい文書を読むことができる、非常にありがたい形式です。しかし、そのファイルが数MBもあるようでは、現在の日本の通信環境ではあまり現実的な文書の配信方法とは言えません。そこでできるだけきれいに、なおかつ軽い(ファイルサイズの小さい)PDF ファイルを作成することが、配布文書の作成のときに重要なテクニックになってきます。

PostScript フォントでオリジナルデータを作る

一つには、PDF の得意な PostScript フォントを用いて最初から文書を作成するという方法があります。DTP の基本に返るということになりますが、別に DTP に興味があったわけじゃないのになぁという人にはちょっと酷な方法ですね。この方法では、Acrobat の発売元、PostScript の開発元である Adobe の製品を使うことで、もっとも効率的な作業ができるようになります。しかしこれでは具体的には PageMaker、InDesign、FrameMaker、Illustrator などの高価なソフトを使うことになります。これではパーソナルユースに向きません。

また、例えこうしたソフトであっても、実は Windows 版はあまり PostScript フォントの扱いが得意ではありません。PostScript のプロポーショナルフォントを使うと画面上の表示がずれてしまうなどの現象がよく起きます。これではいくら PDF 作成に向いていると言っても事実上作業不能です。Mac ではかなりまともに使えるこうした環境も、Windows では思うようにいかないのが現状です。この辺が DTP は Mac と言われる理由でもあります。(Windows での DTP を扱っている書籍はわざわざ Windows DTP という言い方をしていたりしますね。)

ということはこの方法は DTP 畑の人、あるいはそこに近い人、高いソフトを買ってくれるパトロンがいる人、高いソフトを買ってくれる大学の研究室以外はあまり現実的な方法とは言えませんね(^^;

日本語 TrueType は等幅フォントだけで

これは先ほども触れましたが、日本語の TrueType フォントは等幅フォントだけを使うという方針は、かなり現実的です。これなら Windows のソフトでもなんの支障もなく実現できますし、追加投資の必要もまったくありません\(^^)/

また、英語などのフォントに関しては PDF Writer でも埋めこみができるので、日本語以外は結構フォントに凝ることができます。もちろん凝ったらそれなりにファイルサイズは大きくなりますが、Distiller で日本語フォントを埋めこんだ場合に比べればまだかなり軽いです。

フォントが制限されるので、デザイン、レイアウトの自由度も当然減りますが、ファイルサイズとクオリティとのせめぎあいで落としどころを見極めていくしかないでしょうね。

[ ↑ content ↑ ]

グラフィックについて

とりあえず具体的な方法

解答としては「等幅フォント+PDF Writer+印刷プロパティで画像解像度を引き上げ」が現実的な線です。具体的な方法はこんな感じ。この技は Word なんかでも使えると思います。Distiller を使いこなすと確かにきれいに圧縮できるのですが、それ以前にデータの作り方の方がかなり影響しますので、Acrobat 上だけで必要以上にこだわらない方がいいんでしょうね(^^;

PDF Writer が生成するグラフィックのクオリティを上げる。

印刷品質を上げておく。で、[ プリンタの設定 ] の、

[ プロパティ ] で、

「グラフィック」の「解像度」も上げておく。これだけでも十分だけど、気になる人は

[ 圧縮オプション ] の

  • 「画像のダウンサンプリング」を外す
  • 「カラー/グレースケール画像」を JPEG ではなく Zip 圧縮に

しておくとだいぶいいでしょう。

[ ↑ content ↑ ]

圧縮オプションを使いこなせ!

ただ、上の通りにするとできあがった PDF のサイズがいきなりでかくなったりします。これは特にビットマップ画像を多く含んでいる場合に顕著になりますね。600dpi というのはかなり高い解像度なので、あんまりファイルサイズが大きい場合は、適当に解像度を小さくしたり、圧縮の方法を変更したりするとよいでしょう。圧縮率の目安は、

プリンタ解像度スクリーン線数画像解像度
300 dpi(レーザープリンタ)60 lpi120 dpi
600 dpi(レーザープリンタ)85 lpi170 dpi
1200 dpi(イメージセッター)120 lpi240 dpi
2400 dpi(イメージセッター)150 lpi300 dpi

カラー画像とグレースケール画像の解像度の設定は、そのファイルを表示する画面のスクリーン線数の 1.5 倍から 2 倍が適当です(画像に直線や幾何学模様、繰り返しパターンを含まない場合は、この推奨値より低く設定しない限り、高く設定しても低めに設定しても結果はほとんど変わりません)。

(Acrobat 4 のヘルプ p139 より)

ということらしいので、先に示したサンプルは狂ったように解像度が高いってことになりますね(^^; ただ、まぁ、方法は上の通りです、ということです(苦しい)。

また、圧縮の方法ですが、これまた Acrobat 4 のヘルプによると、4種類それぞれに適した画像があるそうで、

Run Length 法が向いている画像
Run Length

白や黒の領域が大きい場合に Run Length という圧縮方法が向いているそうです。モノクロ印刷で、写真ではなく、図が多い場合はこの方法がいいようですね。データの損失が少ない、とのこと。

JPEG 圧縮が向いている画像
JPEG

当然、写真には JPEG 圧縮が向いています。これはグレースケールでも同じことですね。ただ、JPEG は圧縮率の代わりに画質を犠牲にしますから、どの程度画質が劣化するのかを見極める必要があります。見極めさえつけば大胆にできあがりのファイルサイズを小さくすることができます。Acrobat での JPEG圧縮の圧縮率の表示は(高)が高品質、(低)が低品質を表します。

ZIP 圧縮に向いている画像
ZIP

GIF 画像が得意とするような、このような同じ色の範囲が広い画像には ZIP 圧縮が向いています。これも色数を間違えなければデータの損失はありません。ZIP 圧縮には 4ビット ZIP と 8 ビット ZIP があって、それぞれが色数を表しています。

CCITT に向くモノクロ画像
CCITT

このようなモノクロ2値の画像には CCITT 圧縮が向いています。これはデータの損失がまったくない圧縮方式です。

以上は Acrobat 4 のヘルプ、p133〜p137 を参考にしています。

「いろんな画像があちこちにあるんだけど?」という場合は、ページごとに PDF に変換し、その際に適切な圧縮オプションを設定するのがよいでしょう。その後、PDF ファイルを連結する、と。え、そこまで考えるのはイヤ? まぁ、普通はそうでしょうね。あくまでこだわる場合は、ですよ。

[ ↑ content ↑ ]

応用編

WWW 上での配信時の工夫

基本はこうですが、

<a href="testpdf.pdf">文字列</a>

こんな風にそのあとにコマンドを記述することができます。これは 200% に拡大して、表示位置を 100, 230 に指定したものです。

<a href="testpdf.pdf#page=2&zoom=200,100,230">文字列</a>

また、EMBED タグを使うと右のように各ページのサムネイルにリンクを張ることも可能です。わざわざサムネイルを画像で作成する必要はありません。サイズを指定すれば自動的にそのサイズに縮小してくれます。

<embed src="testpdf.pdf#page=3" width="150"
height="210" href="testpdf.pdf#page=3" />

以上は、Acrobat 4 のヘルプ p417 以降を参考にしています。詳しくはヘルプを参照してください。ただ、手元で確認したところによると、IE 5.0 で EMBED を使ったものは正しく動いてないですね(^^; どうなってんだ、いったい。かといって OBJECT タグは扱いが面倒ですしねぇ。

各ページのサムネイル画像を作って、そこから2番目に示した方法で指定のページを開くようにリンクを張るのがいい方法、なのかな。ちょいと手間ですが、しょうがないですかねぇ。Acrobat にサムネイルを作る機能があるので、そいつを使っていっぺんにサムネイルの画像を作って、あとで Photoshop なりなんなりで1ページ1ページに切り取ったらいいでしょう。

[ ↑ content ↑ ]

アウトライン化で思い通りの文字を使う

Distiller を使うとフォントが埋め込まれてファイルサイズが大きくなることはすでに書きましたが、逆に標準の明朝やゴシック以外のフォントは、Distiller を使って埋め込んであげないと、思ったようなデザインを再現できません。しかし、このフォントの埋め込みでも対処できないものがあります。埋め込みを禁止しているフォントです。

このようなフォントに対応しようにもフツーの人には使えない技なので、書こうかどうしようか迷いましたが、紹介だけしておきます。それは、文字を全部アウトライン化してしまうことです。

どういうことかというと、今までの文字がずれるだのファイルサイズが大きくなるだのといった悩みは、言ってみればすべてフォントに関係したものです。そこで、文字を文字じゃないものしてしまう、つまり文字の形をした図形にしてしまう、という方法を取れば、フォントの食い違いに悩む必要はなくなるということです。

具体的には Adobe Illustrator などのプロが使っているドローソフトを使います。方法の解説は Illustrator などのドローソフトを解説しているサイトに譲ります。

また、この方法は当然ながら長文には向きません。だいたい長文の場合は、細かいフォントの違いよりも、行間とか周囲の余白などの全体のレイアウトが読みやすさへ与える影響の方が大きいわけで、そのうえでフォントにこだわれる人はよほどの腕を持った人です。ま、そういう人はもっときちんとフォントを買い揃えましょう。

この方法はフォントに多少こだわった一枚もののときに効果があります。手近なところでは、普通に手に入る丸ゴシックは、Windows からでも Mac からでも埋め込むことができませんので、丸ゴシックの部分だけアウトライン化してあげれば、デザインをほとんど崩すことなく PDF 化することができます。角ゴシックだけだと、ゴツイ印象になるので、私は丸ゴシックをよく使うのですが、この丸ゴシックが埋め込めなくて困ります。(ただし、サンプルに利用した丸ゴシックは PDF に埋め込むことができる「キャパニトフォント」です。なかなかかわいらしいでしょ?)

この場合、最初から Illustrator などのソフトを使わないといけないのか? いやいや、そんなことはありません。普段使い慣れているソフトで、とりあえずレイアウトしてしまって構いません。その際、等幅フォントを基本にデザインします。そしてそのまま PDF にしてしまい、下で述べる PDF の再利用の技を使って Illustrator にデザイン済みのデータを渡します。で、必要な部分だけフォントを置き換え、アウトライン化します。レイアウトを整えます。

ついでに、グラフィックのデータも WMF 経由などで Illustrator に読み込んでブラッシュアップすると、かなりきれいな PDF を作ることができると思います。


しかし、この方法すら使えないフォントがあります。「アウトラインプロテクト」というものが掛かっているフォントです。こうなったら最後の大技、一度画像にしてしまって、画像のアウトラインをトレースするソフトを利用します。これは具体的には Adobe Streamline などを使います。

こうした技が全部使えない場合はどうするか。しょうがないから文字を画像にして、画像を貼り付けるしかないでしょうねぇ。その際、画像の圧縮オプションに気をつけて、モアレとかジャギーが出ないようにしてあげれば、とりあえずしのげるでしょう。できあがる PDF は当然大きくなりますけどね。

[ ↑ content ↑ ]

フォント置き換えテーブルを使って軽い PDF を

そしてもう一つはフォントの置き換えテーブルを設定することです。

Distiller には PDF Writer に比べてかなり多くの機能があるのですが、これもその一つで、ワープロソフトなどのオリジナルデータで使っているフォントと、PDF ファイルでのフォントの変換の組み合わせを自分で指定できるのです。この方法を使うと、TrueType のプロポーショナルフォントを使いつつも、PDF ファイルを作成する際にはそれを埋めこまずに PostScript フォントに置き換えることで、できあがった PDF ファイルのサイズを小さく抑えることができます。例えば MS P明朝のフォントを使っている場合は本来ならそのデータを埋め込むのですが、これを埋め込まずに PostScript フォントのリュウミンライトなどに置き換えることが可能なのです。

ただし、この場合もやはりフォントの種類が変わるのでレイアウトは狂います。作成した PDF をあとでタッチアップすることは可能ですが、やはり限界がありますので、いくらファイルサイズが小さくなるとは言え、ある程度美しさは犠牲になります。

注意と修正方法

具体的な方法は後日。

PDF の再利用

PDF は最近の Adobe の主軸です。

当然看板ソフトの Photoshop や Illustrator でも対応してきています。もちろん Photoshop 3 や 4 などの、Acrobat がまだ定着してない頃のバージョンはあまり得意でないですが、Photoshop 5 や Illustrator 8 などのバージョンではかなり上手に PDF 形式を扱うことができます。ファイルを保存するときや開くときにいきなり PDF 形式を選ぶことができるようになっていますし、セキュリティ設定で保護されていない PDF ファイルを再利用することができます。

[ ↑ content ↑ ]

参考

[ ↑ content ↑ ]

追記

Acrobat 5 ではどうも PDF Writer はオプション扱いのようです。しかも使えるのは Windows のみ。どうしたんでしょうね。まぁでも OS X は自前で PDF をサポートしているし、Office にはそれ用のツールボタンをつけてるし、あんまり必要なくなってきているのかもしれません。Distiller の標準の設定のチューニングもうまくなってきているみたいですし。

正直、けっこう長い間悩みました(笑) どうしてインストールできないんだ、そんなはずはない、って。なんかシステムがおかしいのか、とかなり悩みました。でもカスタムインストールしなきゃ入らないなんて、そりゃインストールされてなくて当然ですわな。いやービックリした。

[ ↑ content ↑ ]