Apache FOP

Apache FOP（アパッチ・エフオーピー）は、組版のためのXMLに準拠したマークアップ言語であるXSL-FOの処理系の実装であり、Apache XML Graphics プロジェクトにより開発されている。
なお "FOP" は Formatting Objects Processor の頭字語である。
Apacheライセンスによるオープンソースのソフトウェアである。
FOPは、プログラミング言語Javaで実装されている。
FOPを使うことで、XSL-FOに準拠したXML文書をPDFファイルなどのファイル形式に変換したり、コンピュータの画面やプリンタに直接出力することができる。

バージョン 0.94 のソースコードは、以前の安定版バージョンである 0.20.5 から大幅なソースコードの書き直しが行われている。

Apache FOP の配布物には、XSLTの処理系である Apache Xalan が同梱されている。

FOPで扱うことができるXSL-FO埋め込み画像形式 
Apache FOP は、多くの形式の画像ファイルをXSL-FO文書に ( <fo:external-graphic> 要素を使うことにより) 埋め込んで扱うことができる。

Apache FOP が扱うことができる埋め込み画像の形式には次のようなものがある。

 SVG
 ビットマップ (BMP)
 PostScript (EPSを扱うことができる)
 JPEG
 いくつかの TIFF 形式

FOPで可能な出力形式 
Apache FOP は次の形式でXSL-FO文書を出力することができる。

 PDF (FOPでは最も良好な出力が得られる)
 プリンタへの直接出力
 コンピュータの画面への直接出力 (Java2D/AWT)
 PostScript
 PCL (Printer Command Language)
 AFP (Advanced Function Presentation)
 RTF
 テキストファイル
 XML (Area Tree XML)
 TIFF
 PNG
 MIF (Maker Interchange Format)
 SVG

脚注

関連項目 
 XSL Formatting Objects (XSL-FO)
 Extensible Stylesheet Language (XSL：拡張可能なスタイルシート言語)
 XSL Formatter - アンテナハウスが開発・販売している商用のXSL-FO処理系

外部リンク 
 Apache FOP プロジェクト
 XMLツールのコレクション (ドイツ語)

オープンソースソフトウェア
XML
FOP
Java