ホーム  > X-plus >  XML & 開発

この記事を送る はてなブックマークに追加する
テキストリンクコードを取得する

Apache FOPを使ってみる~XSL-FOを使った自動組版その1

2009年06月15日作成 

はじめまして。事業推進 事業企画担当 遊撃手の吉田晃伸と申します m(_ _)m。要するに何でも屋です ^^; 。
今回、「Apache FOP」にかかわる機会がありいろいろと調査をしました。Apache FOPとXSL-FOを使った自動組版に関して、筆を取りたいと思います。おもに、FOPの仕組みとXSL-FOに関して解説していこうと思います。
第1回目の記事は、FOPの概要です。



Apache FOPって?

 このサイトをご覧の皆様は「Apache FOP」というソフトを存知でしょうか?Apacheは言わずと知れた、有名なWebサーバーです。そのAapcheは1つのコミュニティとして稼働しており、他にも様々なオープンソースソフトウェアを世の中に提供しています。その1つが今回ご紹介する、Apache FOPと呼ばれるソフトウェアです。 このソフトは、XMLの自動組版を実現するソフトウェアです。自動組版の処理としてはXSL-FOの仕様を実装しており、すべてJavaでできたソフトウェアです。

Apache-FOP

※ XSL-FOに関してはおいおいご説明していきますが、XML文書のスタイルシート技術 XSL (Extensible Stylesheet Language) による組版のためのXMLに準拠したマークアップ言語です。


現在の最新バージョンは0.95で、まだベータ版のような形です。ただ、残念がら(?!)、2008年6月以降、目立ったバージョンアップはなされていません。一部では、ソースコードを全く新しいものに作り替えるプロジェクトが進行中、という話も聞きましたが、真偽のほどはいかに。。。

ここで、各情報へのリンクを掲載します。



主な機能

Apache FOPの主な機能としては、XSL-FOに準拠したXML文書を組版して、プリンタに出力したり、PDFファイル形式へ出力したりすることができます。出力形式のうち、もっとも確実な形式はPDFとなっています。また、XML文書とXSLによってFO文書そのものを生成し、出力することも可能なものです。

GUIは持っていないソフトで、コマンドラインから組版を実行します。それで、各種DTPソフトに代表されるようなデスクトップ上の対話式組版ソフト、というよりサーバー側での完全自動組版処理に用いられるソフトです。



使用方法

 Apache FOPは基本的にコマンドラインから利用します。コマンドラインで使用できるコマンドを解説します。
FO文書を変換しPDFとして出力する場合は、以下のように指定します。

fop hello.fo hello.pdf

XML文書とXSLによってFOを生成し、それをPDFとして出力する場合は、以下のように指定します。

fop –xml hello.xml –xsl hello.xsl –pdf hello.pdf


制限事項

 現時点でApache FOPはXSL-FOのfloat要素に対応していません。float要素は図表に対する文字列の回り込み等を実現するための要素です。ほかには、Tableのautoプロパティに対応していません。これは、HTMLの表が高さや幅を指定しなければ、文字の大きさや画面の大きさによって自動的に表の大きさを変えられる機能に似ています。ですから、常に表の高さと幅を指定する必要がある、ということになります。Apache FOPのXSL-FOサポート範囲については、Apache FOP Compliance Page(http://xmlgraphics.apache.org/fop/compliance.html)参照してください。



第1回目はこの辺で、、、では、また次回!



事業推進 事業企画担当 遊撃手 吉田晃伸




※ 遊撃手について
野球においてショートが「遊撃手」と訳されているのは、「戦列で時機を見て待機し、あちこちを動き回り守備を固める働きをする様が遊撃のようだ」からだそうです。これと同様、ビジネスにおいて「遊撃」的な役割、つまり「時に応じたビジネスを創出し、また困った味方をサポートし、新たな価値を生み出す手助けをする」役割を果たすという意味が込めて、自分で名乗った肩書きです^^;。



この記事と関連の高い記事

関連キーワード:Apache


関連キーワード:Apache FOP


関連キーワード:XML


関連キーワード:XSL


関連キーワード:XSL-FO


関連キーワード:XSLT


関連キーワード:遊撃手




ページトップへ戻る