« PDFの作成方法(20) – PDFドライバの解像度 | メイン | Foxit ReaderでもPDFの細い線は表示できない »

2006年02月14日

PDFの作成方法(21) – PDFドライバの解像度(続き)

昨日は、Windowsのプリンタ・ドライバとしてPDFを出力するソフト(アンテナハウスPDFドライバなど)の場合、解像度設定値によっては、出来あがるPDFの中で、線の太さが正しく表現されるかどうかに影響がでることを示しました。例えば、Microsoft Wordで設定できる最小の太さの線は、1/4ポイント(約0.09mm)です。この線を表示するのには、最低でも300dpi以上の設定が必要です。

このようなことは、アプリケーションはWindowsのGDIの機能を使って描画し、PDFドライバは、描画のデータをGDIから受け取ってPDFを作成するので、その過程で生まれるものです。

昨日の例で言いますと、Microsoft Wordを使って、1/4ポイント、1/2ポイントの線を、72dpiの設定でPDF化したとき、線の太さが正しく表現できていないとがわかりました。Microsoft Wordは、これらの線を72dpiでは印刷できないことを知っていて、ドライバの設定が72dpiの時は線を太くして出力しているものと思います。

図 GDI型のPDFドライバの解像度設定の仕組み
ResolutionSetting.PNG

ちなみに、AcrobatのようなPostScriptプリンタ・ドライバ型のPDF作成ソフトを使ってPDF化する時、(アプリケーションによっては)解像度設定の影響を回避することが可能です。

この理由は、PostScriptプリンタはWindowsで特別扱いされているので、アプリケーションはGDIを経由しない(バイパスして)で、PostScriptの命令をプリンタに直接出力することができるからです。このことは、2005年11月18日 PostScriptプリンタドライバとGDI型PDFプリンタドライバの相違で少し触れました。PostScript命令では、線の太さなどはドット単位ではなく論理的な寸法になりますので、精度の高い出力が可能です。

なお、PostScriptプリンタ・ドライバを認識し、GDI型のプリンタ・ドライバへの出力との切り替えを行うのはアプリケーションの役割です。つまり、技術的には可能ということであって、実際に、全てのアプリケーションが、PostScriptプリンタドライバを認識して、特別な処理をしているとは限りません。PostScriptプリンタ・ドライバを使ったからといって、常に精度が出るわけではなく、あくまで使用しているアプリケーションがPostScriptをうまく出力しているかどうかに依存するということです。

投稿者 koba : 2006年02月14日 08:00

トラックバック

このエントリーのトラックバックURL:
http://blog.antenna.co.jp/PDFTool/mt-tbng2.cgi/162

コメント

コメントしてください




保存しますか?