Skip to content

apache/xmlgraphics-fop

$Id$

==============================================================================
  APACHE FOP  -  README
==============================================================================

Contents of this file:
 - What is FOP?
 - Legal Information
 - Where to get help?
 - How do I build FOP?
 - How do I run FOP?
 - Release Notes

==============================================================================


What is FOP?
------------

Apache FOP is a print formatter driven by XSL formatting objects. It is a Java
application that reads a formatting object tree conforming to the XSL 1.1
Recommendation (05 December 2006) and then turns it into a PDF document,
certain other output formats or allows you to preview it directly on screen.
Note that not all parts of the XSL 1.1 specification have yet been
implemented.

Apache FOP is part of Apache's XML Graphics project. The homepage of Apache 
FOP is http://xmlgraphics.apache.org/fop/.
    
    
Legal Information
-----------------

Apache FOP is published under the Apache License version 2.0. For the license
text, please see the following files:
- LICENSE
- NOTICE

Legal information on libraries used by Apache FOP can be found in the 
"lib/README.txt" file.

Here is a list of files included in Apache FOP but not published under Apache
License version 2.0:
- K3 3 of 9 barcode font (TrueType)
  File: examples/fo/advanced/K3.TTF
  Info: examples/fo/advanced/K3.README
- DejaVu LGC Serif font (TrueType)
  File: test/resources/fonts/DejaVuLGCSerif.ttf
  Info: test/resources/fonts/DejaVuLGCSerif.LICENSE

    
Where to get help?
------------------
    
http://xmlgraphics.apache.org/fop/gethelp.html
    
A mailing list where you can get all your questions about FOP answered is at 
fop-users@xmlgraphics.apache.org. You can subscribe by sending an empty mail 
to fop-users-subscribe@xmlgraphics.apache.org.

Before you post any questions, please have a look at the FAQ at 
http://xmlgraphics.apache.org/fop/faq.html and FO help page at 
http://xmlgraphics.apache.org/fop/fo.html.

Please report bugs at https://issues.apache.org/jira/browse/FOP


How do I build FOP?
-------------------

If you've downloaded a binary distribution, you don't need to build
FOP.

Otherwise, please follow the instructions found here:
http://xmlgraphics.apache.org/fop/stable/compiling.html

[TEMPORARY]

Until the above referenced instructions are updated, one of the following
may be used to build FOP:

Building with Maven (preferred)

% mvn clean install

Building with Ant (deprecated)

% ant -f fop/build.xml clean all

How do I run FOP?
-----------------

Simply by typing "fop" on the command-line. Without any parameters you
will receive a screen with instruction on how to call FOP from the
command-line.

For more details, see:
http://xmlgraphics.apache.org/fop/stable/running.html

[TEMPORARY]

Note that FOP command line scripts and build results from ant will be found
under the ./fop sub-directory.

==============================================================================
  RELEASE NOTES
==============================================================================

Version 2.10
============

Major Changes in Version 2.10
-----------------------------

* Add option to sign PDF
* Add image mask option for AFP
* Allow change of resource level for SVG in AFP
* Switch to Jakarta servlet API

This release also contains a number of bug fixes.

Version 2.9
===========

Major Changes in Version 2.9
----------------------------

* Add support for font-selection-strategy=character-by-character
* Allow XMP at PDF page level
* Allow use of page position only on redo of layout

This release also contains a number of bug fixes.

Version 2.8
===========

Major Changes in Version 2.8
----------------------------

* Require Java 8 or later
* Transparency color support
* Light weight line breaking option

This release also contains a number of bug fixes.

Version 2.7
===========

Major Changes in Version 2.7
----------------------------

* Allow to embed native PDF in AFP

This release also contains a number of bug fixes.

Version 2.6
===========

Major Changes in Version 2.6
----------------------------

* Support OTF/TTF SVG fonts
* Allow overpaint of PDF border

This release also contains a number of bug fixes.

Version 2.5
===========

Major Changes in Version 2.5
----------------------------

* Allow to hide empty blocks from structure tree

This release also contains a number of bug fixes.

Version 2.4
===========

Major Changes in Version 2.4
----------------------------

* Require Java 7 or later
* Drop dependency on Avalon-Framework
* Add change bar generation
* Add support for Khmer complex script

This release also contains a number of bug fixes.

Version 2.3
===========

Major Changes in Version 2.3
----------------------------

* Support for unicode Surrogate pairs
* OTF fonts not working on Mac Preview

This release also contains a number of bug fixes.

Version 2.2
===========

Major Changes in Version 2.2
----------------------------

* PCL Color support
* Allow generation of bold/italic versions of fonts for PDF
* Allow to convert OTF fonts to Type 1 for Postscript
* Deduplicate PDF content streams
* Update to PDFBox 2
* Transition from Ant to Maven Build Process

This release also contains a number of bug fixes.

Version 2.1
===========

Major Changes in Version 2.1
----------------------------

* Add PreloaderRawPNG to handle images ImageIO cant
* Support Barcode4J page number
* Support CMYK JPEG in AFP
* Support IPD change on last page
* Support PDF/UA
* Support TrueType fonts in PCL
* Support Truetype for AFP
* Support for PDF/A-3

This release also contains a number of bug fixes.

Version 2.0
===========

Java 6 or later is the minimum runtime environment needed.

Because of changes to the API, the version number has been bumped to 2.0.

Major Changes in Version 2.0
----------------------------

* Side float support
* Whitespace Management Extension
* fo:inline-container partial support
* Improved support for complex scripts
* PDF Linearization
* Support OpenType CFF fonts
* Subset support for Type 1 fonts
* Support for AES 256 PDF encryption
* SVG graphics can use FOP custom fonts

This release also contains a number of bug fixes.

Version 1.1
===========

This release of Apache FOP primarily addresses bug fixes and also adds a number
of new features. See below for details.

Compliance
----------

This release implements the XSL 1.0 and 1.1 recommendations to a relatively
high degree of compliance. See the compliance page
http://xmlgraphics.apache.org/fop/compliance.html for further details.

Known issues
------------

A detailed list of known issues in this release is available at
http://xmlgraphics.apache.org/fop/1.1/knownissues_overview.html.

Major Changes in Version 1.1
----------------------------

* Adds support for complex scripts.
* Adds support for TTF fonts in PostScript.
* Adds support for PDF Object Streams.
* Adds support for PDF 128-bit encryption.

A more detailed list of changes in this release is available at
http://xmlgraphics.apache.org/fop/1.1/changes_1.1.html.

A more detailed list of changes in this and earlier releases is available at
http://xmlgraphics.apache.org/fop/changes.html.

Version 1.0
===========

This is a production grade release of Apache FOP.
It contains many bug fixes and new features. See below for details.

Compliance
----------

This release implements the XSL 1.0 and 1.1 recommendations to a high
degree of compliance. See the compliance page
http://xmlgraphics.apache.org/fop/compliance.html for a detailed
overview.

Known issues
------------

The known issues of this release are listed at
http://xmlgraphics.apache.org/fop/1.0/knownissues_overview.html.

Major Changes in Version 1.0
----------------------------

* Added support for addressing all glyphs available in a Type 1 font
* Added support for auto-configuring TrueType Collections. XML font
  metrics files for *.ttc fonts are not required anymore.
* Added support for rendering pages using Java Printing System.
* Support character-by-character font-selection strategy on
  fo:character element.
* Implemented word-by-ford font-selection strategy on text.
* AFP Output: Various enhancements
* FOP now creates ToUnicode CMaps for single-byte fonts that don't use
  built-in encodings
* Introduced a new, additional intermediate format optimized for
  performance. See the intermediate format documentation for details.
* Added an initial set of extensions for prepress support.
* Added limited support for different page widths within a page-sequence.
* Added support for TrueType fonts with symbol character maps (like
  "Wingdings" and "Symbol").
* Added an event handling framework which allows to get better feedback
  from within FOP with the ability to customize problem management.

The long list of changes in this release is available at
http://xmlgraphics.apache.org/fop/1.0/changes_1.0.html.

The long list of changes in this and earlier releases is available at
http://xmlgraphics.apache.org/fop/changes.html.

Version 0.95
============

This is a production grade release of Apache FOP.
It contains many bug fixes and new features. See below for details.

Compliance
----------

This release implements the XSL 1.0 and 1.1 recommendations to a high
degree of compliance. See the compliance page
http://xmlgraphics.apache.org/fop/compliance.html for a detailed
overview.

Known issues
------------

The known issues of this release are listed at
http://xmlgraphics.apache.org/fop/0.95/knownissues_overview.html.

Major Changes in Version 0.95
-----------------------------

* Add new fox:external-document extension element that allows to insert whole
  documents into a page-sequence (JM)
* Add support for background on fo:table-column and fo:table-header/footer/body
  elements (VH)
* Add support for conditional borders in tables (VH)
* Add support for scale-down-to-fit and scale-up-to-fit (JM)
* Fix various bugs and performance problems with external graphics by
  introducing a new image loading framework (JM)

The long list of changes in this release is available at
http://xmlgraphics.apache.org/fop/0.95/changes_0.95.html.

The long list of changes in this and earlier releases is available at
http://xmlgraphics.apache.org/fop/changes.html.

Changes since Version 0.95beta
------------------------------
Please refer to the list of changes on the web:
http://xmlgraphics.apache.org/fop/changes.html


Version 0.94
============

This is the second production grade release of the new FOP codebase.
It contains many bug fixes and new features. See below for details.

Compliance
----------

This release implements the XSL 1.0 and 1.1 recommendations to a high
degree of compliance. See the compliance page
http://xmlgraphics.apache.org/fop/compliance.html for a detailed
overview.

Known issues
------------

The known issues of this release are listed at
http://xmlgraphics.apache.org/fop/0.94/knownissues_overview.html.

Major Changes in Version 0.94
-----------------------------

* Add support for font auto-detection (JM) Thanks to Adrian Cumiskey
* Add support for the border-collapsing model in tables (VH, JM)
* Add support for named destinations in PDF (JB)
* Add support for UAX#14 type line breaking (MM)

The long list of changes in this release is available at
http://xmlgraphics.apache.org/fop/0.94/changes_0.94.html.

The long list of changes in this and earlier releases is available at
http://xmlgraphics.apache.org/fop/changes.html.


Version 0.93
============

This is the first production grade release of the new FOP codebase.

* It contains the new API first introduced in release 0.92
  beta. The preceding API has been removed.
* This release again contains many bug fixes and new features. See
  below for details.

Compliance
----------

This release implements the XSL 1.0 and 1.1 recommendations to a high
degree of compliance. See the compliance page
http://xmlgraphics.apache.org/fop/compliance.html for a detailed
overview.

Known issues
------------

The known issues of this release are listed at
http://xmlgraphics.apache.org/fop/knownissues.html.

Upgrading
---------

You may experience different behaviour compared to version
0.20.5. Please consult the "Upgrading" page
(http://xmlgraphics.apache.org/fop/stable/upgrading.html) for
details.

Major Changes in Version 0.93
-----------------------------

* Added support for the use of Open Type fonts (BD)
* Support for the rgb-icc() function and for a proprietary cmyk()
  function (for device CMYK colors only through the PDF renderer so
  far). (JM) Thanks to Peter Coppens. Fixes 40729.
* Enabled Copy/Paste from PDF content in Acrobat Reader for
  text using embedded TrueType fonts. (BD) Thanks to Adam Strzelecki,
  Victor Mote. Fixes 5535.
* Added support for PDF/A-1b and PDF/X-3:2003. (Note: this may still
  be a bit incomplete. Feedback is welcome!)
* The Java2DRenderer (and therefore the print and bitmap renderers) is
  now offering the same quality as the PDF and PS renderers. Note:
  There can still be little differences between PDF and Print/PNG/TIFF
  because the latter uses a different font metrics source.
* Automatic support for all fonts available to the Java2D subsystem
  for all Java2D-descendant renderers (TIFF, PNG, print, AWT).

The long list of changes in this release is available at
http://xmlgraphics.apache.org/fop/0.93/changes_0.93.html.

The long list of changes in this and earlier releases is available at
http://xmlgraphics.apache.org/fop/changes.html.

The Apache FOP team asks you for your continued feedback on the
software.  We're also interested in success stories with the new
release. So if the latest version works fine for you, please tell us!
And if it doesn't, you may tell us as well, of course. ;-)

Release notes for older FOP versions can be found on:
http://xmlgraphics.apache.org/fop/relnotes.html