Formatting Objects Processor

{{multiple issues|

{{Only primary sources|date=April 2023}}

{{Update|date=April 2023}}

{{More citations needed|date=April 2023}}

}}

{{short description|Java-based document converter}}

{{Infobox software

| name = Apache FOP

| logo = Apache FOP logo.png

| logo size = 200px

| screenshot =

| caption =

| author = James Tauber

| developer = Apache Software Foundation

| latest release version = {{wikidata|property|reference|P348}}

| latest release date = {{start date and age|{{wikidata|qualifier|P348|P577}}}}

| latest preview version =

| latest preview date =

| operating system = Cross-platform

| programming language = Java

| genre = XSL-FO

| license = Apache License 2.0

| website = {{URL|https://xmlgraphics.apache.org/fop}}

}}

Formatting Objects Processor (FOP, also known as Apache FOP) is a Java application that converts XSL Formatting Objects (XSL-FO) files to PDF or other printable formats.

FOP was originally developed by James Tauber who donated it to the Apache Software Foundation in 1999. It is part of the Apache XML Graphics project.

FOP is open source software, and is distributed under the Apache License 2.0.

Current status

The latest version of Apache FOP is 2.10.{{cite web|url=https://xmlgraphics.apache.org/fop/status.html|title=Apache FOP Status}} This is the seventeenth stable release.{{cite web|url=https://xmlgraphics.apache.org/fop/news.html|title=Apache FOP News}}

Major limitations

Most important elements added in XSL-FO 1.1 (flow maps, table markers, indexes. etc.) are not available {{cite web|url=https://xmlgraphics.apache.org/fop/compliance.html|title=Apache FOP XSL-FO Compliance}}

In addition, older XSL-FO 1.0 features are still not fully supported including automatic table layout, floats and more.

Input support

Apache FOP supports embedding a number of image formats in the XSL-FO (through the element). These include:

Apache FOP implements the element with some limitations.{{cite web |url=https://xmlgraphics.apache.org/fop/2.0/releaseNotes_2.0.html |title=Apache FOP 2.0 release notes |access-date=2015-12-18}} In versions prior to 2.0, external graphics objects were limited to being drawn inline or in a block with no wrapped text.

Output formats

Apache FOP supports the following output formats:

  • PDF (best output support), including PDF/X and PDF/A with some limitations{{cite web |url=https://xmlgraphics.apache.org/fop/0.95/pdfx.html |title=FOP 0.95 - PDF/X (ISO 15930) |access-date=2011-05-22}}
  • ASCII text file facsimile
  • PostScript
  • Direct printer output (PCL)
  • AFP
  • RTF
  • Java2D/AWT for display, printing, and page rendering to PNG and TIFF

In progress:

See also

{{Portal|Free and open-source software}}

References