« 2006年06月13日 | メイン | 2006年06月15日 »
2006年06月14日
XSL-FOによるXMLのPDF化 (7) XML+CSS でPDF生成
CSSは、HTMLをブラウザで表示する時に使用する用途を意図して提唱されたのだろうと思います。次の表でブラウザのCSSサポート状況を見ることができます。
【参考資料】
ブラウザのCSSサポート一覧
これを見ますと、CSS2.1レベルのサポートはFireFoxが比較的進んでいます。IE6、IE7ともCSS2.1サポートはそれ程進んでいないように思います。
特に、紙・PDFに印刷するためのページを指定するために使う@Pageルールは、IE6、IE7、FireFoxもサポートしていません。もともとブラウザは画面表示を想定しているため、奇麗にページに整形してPDFに出力することは重視していないのだろうと思います。
CSS3のサポートは、どのブラウザもまだまだです(仕様が草稿レベルですので当然ですが)。
一方、ブラウザとは別に、最近は、XMLにCSSでスタイルを与えて、PDFにするソフトが幾つか出てきました。これは新しい動きと言えるでしょう。
JAVAで書かれています。GUIにブラウザビュー、PDFプレビューを表示できます(上の画面)。この他、ドキュメント(XML)のソースを表示して編集したり、スタイルシートを表示します。
JAVAのためか少し動作が鈍いのが気になりますが、簡単なドキュメントを整形してPDFにする用途なら十分使えそうです。ハイフネーションなどの高級な整形はできないようです。
・Prince(YasLogic社)
Princeは、2003年4月に初版(V1.0)がリリースされており、2003年5月にV2.0(1ヶ月でV1からV2へ)、2003年12月V3、2004年10月V4、2005年10月V5になっています。
2005年4月に出版された「Cascading Stylesheets - Designing for the Web」 (Håkon Wium Lie and Bert Bos)という書籍は、HTMLで記述されCSSでスタイルをつけて、PrinceでPDF化されたそうです。
YasLogic社はオーストラリアの会社ですが、Håkon 氏がCTOを勤めています。
■日本
・CSSJ
まだ初歩的なレベルのようですが、HTMLを整形してPDFを出力できます。
ブログのPDF化のサイト「ブログ出版局」に使用されています。
このようにHTML(XML)+CSSは、簡単なレイアウトの書籍を出版できるレベルにまでなってきているようです。CSS3仕様が完成して、それをきちんと実装すれば大化けするかもしれません。何年先のこと?