Documentation updates in preparation of the 0.91 beta release. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@358885 13f79535-47bb-0310-9956-ffa450edef68pull/16/head
Please don't use them for email unless you have to. Their main | Please don't use them for email unless you have to. Their main | ||||
purpose is code signing. | purpose is code signing. | ||||
Users: pgp < KEYS | |||||
Users: | |||||
pgp < KEYS | |||||
(gpg --import < KEYS) | |||||
Developers: | Developers: | ||||
pgp -kxa <your name> and append it to this file. | pgp -kxa <your name> and append it to this file. | ||||
(pgpk -ll <your name> && pgpk -xa <your name>) >> this file. | (pgpk -ll <your name> && pgpk -xa <your name>) >> this file. | ||||
pub 1024D/8408F755 2003-01-20 Christian Geisert <chrisg@apache.org> | pub 1024D/8408F755 2003-01-20 Christian Geisert <chrisg@apache.org> | ||||
sub 1024g/41D98B12 2003-01-20 | sub 1024g/41D98B12 2003-01-20 | ||||
pub 1024D/7C611584 2005-07-19 Jeremias M舐ki <jeremias@apache.org> | |||||
sub 2048g/C0F1AD34 2005-07-19 | |||||
-----BEGIN PGP PUBLIC KEY BLOCK----- | -----BEGIN PGP PUBLIC KEY BLOCK----- | ||||
Version: GnuPG v1.0.6 (GNU/Linux) | Version: GnuPG v1.0.6 (GNU/Linux) | ||||
=+cef | =+cef | ||||
-----END PGP PUBLIC KEY BLOCK----- | -----END PGP PUBLIC KEY BLOCK----- | ||||
-----BEGIN PGP PUBLIC KEY BLOCK----- | |||||
Version: GnuPG v1.4.2 (MingW32) | |||||
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 | |||||
UKHCLjnj2UtX8OfockTGIic= | |||||
=1nMU | |||||
-----END PGP PUBLIC KEY BLOCK----- |
APACHE FOP - README | APACHE FOP - README | ||||
============================================================================== | ============================================================================== | ||||
+----------------------------------------------------------------------------+ | |||||
| | | |||||
| **** IMPORTANT! **** | | |||||
| | | |||||
| This release is the first after a big redesign effort on the whole FOP | | |||||
| codebase. This release is to be considered ALPHA quality and it is | | |||||
| intended as a preview release encouraging people to take a look at the new | | |||||
| version and to provide feedback to the developers. Please not only report | | |||||
| to us problems you might experience but also tell us if it works for you. | | |||||
| If you find out that this version works fine for you, you're welcome to | | |||||
| use it but please test it thoroughly as we don't consider this release | | |||||
| ready for every production environment. Please read the following page for | | |||||
| more detailed information: | | |||||
| http://xmlgraphics.apache.org/fop/0.90/upgrading.html | | |||||
| | | |||||
+----------------------------------------------------------------------------+ | |||||
Contents of this file: | Contents of this file: | ||||
- What is FOP? | - What is FOP? | ||||
- Where to get help? | - Where to get help? | ||||
will receive a screen with instruction on how to call FOP from the | will receive a screen with instruction on how to call FOP from the | ||||
command-line. | command-line. | ||||
For more details, see: http://xmlgraphics.apache.org/fop/0.90/running.html | |||||
For more details, see: http://xmlgraphics.apache.org/fop/latest/running.html | |||||
============================================================================== | ============================================================================== | ||||
RELEASE NOTES | RELEASE NOTES | ||||
============================================================================== | ============================================================================== | ||||
Version 0.90alpha1 | |||||
Version 0.91 beta | |||||
--------------------- | --------------------- | ||||
We don't list all the changes since the 0.20.5 release, since this release | We don't list all the changes since the 0.20.5 release, since this release | ||||
represents the first after a complete redesign of the FOP codebase. This | represents the first after a complete redesign of the FOP codebase. This | ||||
is basically a new software. | |||||
is basically a new software. But the changes since 0.90 alpha 1 can be looked | |||||
up under http://xmlgraphics.apache.org/fop/changes.html. | |||||
Upgrading from 0.20.5: | Upgrading from 0.20.5: | ||||
Please read http://xmlgraphics.apache.org/fop/0.90/upgrading.html | |||||
Please read http://xmlgraphics.apache.org/fop/latest/upgrading.html | |||||
The Apache FOP team asks you for your continued feedback on the new 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. ;-) | |||||
Caveats: | Caveats: | ||||
- This release is a preview release and not intended for use in a | |||||
production environment. Use at your own risk! | |||||
- This release is a beta release. If you intend to use this software | |||||
in a production environment, please perform careful testing. | |||||
- The API is not to be considered stable, yet. Please be prepared | - The API is not to be considered stable, yet. Please be prepared | ||||
for the API to be changed in a backwards-incompatible way. | for the API to be changed in a backwards-incompatible way. | ||||
- You may experience different behaviour compared to version 0.20.5. | - You may experience different behaviour compared to version 0.20.5. | ||||
and attempting to create columns implicitly from the first | and attempting to create columns implicitly from the first | ||||
table row is not implemented, yet (Bugzilla #35656). | table row is not implemented, yet (Bugzilla #35656). | ||||
- Leaders with the "rule" pattern don't work for PostScript output. | - Leaders with the "rule" pattern don't work for PostScript output. | ||||
- break-after may in some cases cause subsequent content to be swallowed. | |||||
Please use break-before, if possible. |
# redirect to versioned documentation | # redirect to versioned documentation | ||||
Redirect Temp /fop/stable http://xmlgraphics.apache.org/fop/0.20.5 | Redirect Temp /fop/stable http://xmlgraphics.apache.org/fop/0.20.5 | ||||
Redirect Temp /fop/current http://xmlgraphics.apache.org/fop/0.20.5 | Redirect Temp /fop/current http://xmlgraphics.apache.org/fop/0.20.5 | ||||
Redirect Temp /fop/0.90alpha1 http://xmlgraphics.apache.org/fop/0.90 | |||||
Redirect Temp /fop/unstable http://xmlgraphics.apache.org/fop/0.90 | |||||
Redirect Temp /fop/latest http://xmlgraphics.apache.org/fop/0.90 | |||||
Redirect Temp /fop/0.90alpha1 http://xmlgraphics.apache.org/fop/0.91 | |||||
Redirect Temp /fop/0.91beta http://xmlgraphics.apache.org/fop/0.91 | |||||
Redirect Temp /fop/unstable http://xmlgraphics.apache.org/fop/0.91 | |||||
Redirect Temp /fop/latest http://xmlgraphics.apache.org/fop/0.91 |
<td>Specifies the base URL based on which relative URL will be resolved.</td> | <td>Specifies the base URL based on which relative URL will be resolved.</td> | ||||
</tr> | </tr> | ||||
<tr> | <tr> | ||||
<td>resolution</td> | |||||
<td>source-resolution</td> | |||||
<td>Integer, dpi</td> | <td>Integer, dpi</td> | ||||
<td>Resolution in dpi (dots per inch) which is used internally.</td> | |||||
<td> | |||||
Resolution in dpi (dots per inch) which is used internally to determine the pixel | |||||
size for SVG images and bitmap images without resolution information. | |||||
</td> | |||||
</tr> | |||||
<tr> | |||||
<td>target-resolution</td> | |||||
<td>Integer, dpi</td> | |||||
<td> | |||||
Resolution in dpi (dots per inch) used to specify the output resolution for bitmap | |||||
images generated by bitmap renderers (such as the TIFF renderer) and by bitmaps | |||||
generated by Apache Batik for filter effects and such. | |||||
</td> | |||||
</tr> | |||||
<tr> | |||||
<td>strict-validation</td> | |||||
<td>Boolean (true, false)</td> | |||||
<td> | |||||
Setting this option to 'false' causes FOP to be more forgiving about XSL-FO validity, | |||||
for example, you're allowed to specify a border on a region-body which is supported | |||||
by some FO implementations but is non-standard. Note that such a border would | |||||
currently have no effect in Apache FOP.</td> | |||||
</tr> | |||||
<tr> | |||||
<td>break-indent-inheritance</td> | |||||
<td>Boolean (true, false)</td> | |||||
<td> | |||||
Setting this option to 'true' causes FOP to use an alternative rule set to determine | |||||
text indents specified through margins, start-indent and end-indent. Many commercial | |||||
FO implementations have chosen to break the XSL specification in this aspect. This | |||||
option tries to mimic their behaviour. Please note that Apache FOP may still not | |||||
behave exactly like those implementations either because FOP has not fully matched | |||||
the desired behaviour and because the behaviour among the commercial implementations | |||||
varies. The default for this option (i.e. false) is to behave exactly like the | |||||
specification describes.</td> | |||||
</tr> | </tr> | ||||
<tr> | <tr> | ||||
<td>default-page-settings</td> | <td>default-page-settings</td> | ||||
<!-- Base URL for resolving relative URLs --> | <!-- Base URL for resolving relative URLs --> | ||||
<base>./</base> | <base>./</base> | ||||
<!-- Internal resolution in dpi (dots per pixel), default: 72dpi --> | |||||
<resolution>72</resolution> | |||||
<!-- Source resolution in dpi (dots/pixels per inch) for determining the size of pixels in SVG and bitmap images, default: 72dpi --> | |||||
<source-resolution>72</source-resolution> | |||||
<!-- Target resolution in dpi (dots/pixels per inch) for specifying the target resolution for generated bitmaps, default: 72dpi --> | |||||
<target-resolution>72</target-resolution> | |||||
<!-- default page-height and page-width, in case | <!-- default page-height and page-width, in case | ||||
value is specified as auto --> | value is specified as auto --> | ||||
<default-page-settings height="11in" width="8.26in"/> | <default-page-settings height="11in" width="8.26in"/> |
</li> | </li> | ||||
<li> | <li> | ||||
<p> | <p> | ||||
Set the <strong>internal resolution</strong> for the document. This is used when creating bitmap images, for example. Example: | |||||
Set the <strong>source resolution</strong> for the document. This is used internally to determine the pixel | |||||
size for SVG images and bitmap images without resolution information. Default: 72 dpi. Example: | |||||
</p> | </p> | ||||
<source>userAgent.setResolution(300); //=300dpi (dots/pixels per Inch)</source> | |||||
<source>userAgent.setSourceResolution(96); //=96dpi (dots/pixels per Inch)</source> | |||||
</li> | |||||
<li> | |||||
<p> | |||||
Set the <strong>target resolution</strong> for the document. This is used to | |||||
specify the output resolution for bitmap images generated by bitmap renderers | |||||
(such as the TIFF renderer) and by bitmaps generated by Apache Batik for filter | |||||
effects and such. Default: 72 dpi. Example: | |||||
</p> | |||||
<source>userAgent.setTargetResolution(300); //=300dpi (dots/pixels per Inch)</source> | |||||
</li> | </li> | ||||
<li> | <li> | ||||
<p> | <p> | ||||
</p> | </p> | ||||
<source>userAgent.setPDFEncryptionParams(new PDFEncryptionParams(null, "owner", false, false, true, true));</source> | <source>userAgent.setPDFEncryptionParams(new PDFEncryptionParams(null, "owner", false, false, true, true));</source> | ||||
</li> | </li> | ||||
<li> | |||||
<p> | |||||
Enable an <strong>alternative set of rules for text indents</strong> that tries to mimic the behaviour of many commercial | |||||
FO implementations that chose to break the specification in this aspect. The default of this option is | |||||
'false' which causes Apache FOP to behave exactly as describes in the specification. To enable the | |||||
alternative behaviour, call: | |||||
</p> | |||||
<source>userAgent.setBreakIndentInheritanceOnReferenceAreaBoundary(true);</source> | |||||
</li> | |||||
</ul> | </ul> | ||||
<note> | <note> | ||||
You should not reuse an FOUserAgent instance between FOP rendering runs although you can. Especially | You should not reuse an FOUserAgent instance between FOP rendering runs although you can. Especially |
<title>Type 1 Font Metrics</title> | <title>Type 1 Font Metrics</title> | ||||
<p>FOP includes PFMReader, which reads the PFM file that normally comes with a Type 1 font, and generates an appropriate font metrics file for it. | <p>FOP includes PFMReader, which reads the PFM file that normally comes with a Type 1 font, and generates an appropriate font metrics file for it. | ||||
To use it, run the class org.apache.fop.fonts.apps.PFMReader:</p> | To use it, run the class org.apache.fop.fonts.apps.PFMReader:</p> | ||||
<p>Windows:</p> | |||||
<source>java -cp build\fop.jar;lib\avalon-framework.jar;lib\xml-apis.jar; | |||||
lib\xercesImpl.jar;lib\xalan.jar | |||||
<p>Windows (on JDK 1.4 and later):</p> | |||||
<source>java -cp build\fop.jar;lib\avalon-framework.jar;lib\commons-logging.jar;lib\commons-io.jar | |||||
org.apache.fop.fonts.apps.PFMReader [options] pfm-file xml-file</source> | org.apache.fop.fonts.apps.PFMReader [options] pfm-file xml-file</source> | ||||
<p>Unix:</p> | |||||
<source>java -cp build/fop.jar:lib/avalon-framework.jar:lib/xml-apis.jar: | |||||
lib/xercesImpl.jar:lib/xalan.jar | |||||
<p>Windows (on JDK 1.3.x):</p> | |||||
<source>java -cp build\fop.jar;lib\avalon-framework.jar;lib\commons-logging.jar;lib\commons-io.jar;lib\xml-apis.jar; | |||||
lib\xercesImpl.jar;lib\xalan.jar;lib\serializer.jar | |||||
org.apache.fop.fonts.apps.PFMReader [options] pfm-file xml-file</source> | |||||
<p>Unix (on JDK 1.4 and later):</p> | |||||
<source>java -cp build/fop.jar:lib/avalon-framework.jar:lib/commons-logging.jar:lib/commons-io.jar | |||||
org.apache.fop.fonts.apps.PFMReader [options] pfm-file xml-file</source> | |||||
<p>Unix (on JDK 1.3.1):</p> | |||||
<source>java -cp build/fop.jar:lib/avalon-framework.jar:lib/commons-logging.jar:lib/commons-io.jar:lib/xml-apis.jar: | |||||
lib/xercesImpl.jar:lib/xalan.jar:lib/serializer.jar | |||||
org.apache.fop.fonts.apps.PFMReader [options] pfm-file xml-file</source> | org.apache.fop.fonts.apps.PFMReader [options] pfm-file xml-file</source> | ||||
<p>PFMReader [options]:</p> | <p>PFMReader [options]:</p> | ||||
<ul> | <ul> | ||||
</ul> | </ul> | ||||
<note>The classpath in the above example has been simplified for readability. | <note>The classpath in the above example has been simplified for readability. | ||||
You will have to adjust the classpath to the names of the actual JAR files in the lib directory. | You will have to adjust the classpath to the names of the actual JAR files in the lib directory. | ||||
avalon-framework.jar is necessary only for versions 0.20.5 or later. | |||||
xml-apis.jar, xercesImpl.jar and xalan.jar are not necessary for JDK version 1.4 or later.</note> | |||||
xml-apis.jar, xercesImpl.jar, xalan.jar and serializer.jar are not necessary for JDK version 1.4 or later.</note> | |||||
<note>The tool will construct some values (FontBBox, StemV and ItalicAngle) based on assumptions and calculations which are only an approximation to the real values. | <note>The tool will construct some values (FontBBox, StemV and ItalicAngle) based on assumptions and calculations which are only an approximation to the real values. | ||||
FontBBox and Italic Angle can be found in the human-readable part of the PFB file or in the AFM file. | FontBBox and Italic Angle can be found in the human-readable part of the PFB file or in the AFM file. | ||||
The PFMReader tool does not yet interpret PFB or AFM files, so if you want to be correct, you may have to adjust the values in the XML file manually. | The PFMReader tool does not yet interpret PFB or AFM files, so if you want to be correct, you may have to adjust the values in the XML file manually. | ||||
<p>FOP includes TTFReader, which reads the TTF file and generates an appropriate font metrics file for it. | <p>FOP includes TTFReader, which reads the TTF file and generates an appropriate font metrics file for it. | ||||
Use it in a similar manner to PFMReader. | Use it in a similar manner to PFMReader. | ||||
For example, to create such a metrics file in Windows from the TrueType font at c:\myfonts\cmr10.ttf:</p> | For example, to create such a metrics file in Windows from the TrueType font at c:\myfonts\cmr10.ttf:</p> | ||||
<source>java -cp build\fop.jar;lib\avalon-framework.jar;lib\xml-apis.jar; | |||||
lib\xercesImpl.jar;lib\xalan.jar | |||||
<source>java -cp build\fop.jar;lib\avalon-framework.jar;lib\commons-logging.jar;lib\commons-io.jar | |||||
org.apache.fop.fonts.apps.TTFReader [options] | org.apache.fop.fonts.apps.TTFReader [options] | ||||
C:\myfonts\cmr10.ttf ttfcm.xml</source> | C:\myfonts\cmr10.ttf ttfcm.xml</source> | ||||
<p>TTFReader [options]:</p> | <p>TTFReader [options]:</p> | ||||
<p>To get a list of the fonts in a collection, just start the TTFReader as if it were a normal TrueType file (without the -ttcname option). | <p>To get a list of the fonts in a collection, just start the TTFReader as if it were a normal TrueType file (without the -ttcname option). | ||||
It will display all of the font names and exit with an Exception.</p> | It will display all of the font names and exit with an Exception.</p> | ||||
<p>Here is an example of generating a metrics file for a .ttc file:</p> | <p>Here is an example of generating a metrics file for a .ttc file:</p> | ||||
<source>java -cp build\fop.jar;lib\avalon-framework.jar;lib\xml-apis.jar; | |||||
lib\xercesImpl.jar;lib\xalan.jar | |||||
<source>java -cp build\fop.jar;lib\avalon-framework.jar;lib\commons-logging.jar;lib\commons-io.jar | |||||
org.apache.fop.fonts.apps.TTFReader -ttcname "MS Mincho" | org.apache.fop.fonts.apps.TTFReader -ttcname "MS Mincho" | ||||
msmincho.ttc msminch.xml</source> | msmincho.ttc msminch.xml</source> | ||||
</section> | </section> |
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd"> | <!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd"> | ||||
<document> | <document> | ||||
<header> | <header> | ||||
<title>Apache FOP 0.90 alpha 1</title> | |||||
<title>Apache FOP 0.91 beta</title> | |||||
<version>$Revision: 201586 $</version> | <version>$Revision: 201586 $</version> | ||||
</header> | </header> | ||||
<body> | <body> | ||||
features and stabilizing the code. We welcome any feedback you might have and even more, any | features and stabilizing the code. We welcome any feedback you might have and even more, any | ||||
other form of help to get the project forward. | other form of help to get the project forward. | ||||
</p> | </p> | ||||
<p> | |||||
This second release is mostly a bug fix release but also contains a few new features compared | |||||
to 0.90alpha1. To see what has changed since the last release, please visit the | |||||
<a href="../changes.html">Changes Page</a> and the <a href="../relnotes.html">Release Notes</a>. | |||||
</p> | |||||
</section> | </section> | ||||
<section id="upgrading"> | <section id="upgrading"> | ||||
<title>Upgrading from an earlier version</title> | <title>Upgrading from an earlier version</title> |
-c cfg.xml use additional configuration file cfg.xml | -c cfg.xml use additional configuration file cfg.xml | ||||
-l lang the language to use for user information | -l lang the language to use for user information | ||||
-r relaxed/less strict validation (where available) | -r relaxed/less strict validation (where available) | ||||
-dpi xxx resolution in dots per inch (dpi) where xxx is a number | |||||
-dpi xxx target resolution in dots per inch (dpi) where xxx is a number | |||||
-s for area tree XML, down to block areas only | -s for area tree XML, down to block areas only | ||||
-v to show FOP version being used | -v to show FOP version being used | ||||
<ul> | <ul> | ||||
<li> | <li> | ||||
More than half of the codebase has been rewritten over the last three years. The code is | More than half of the codebase has been rewritten over the last three years. The code is | ||||
new and not as stable as version 0.20.5. | |||||
relatively new and possibly not as stable as version 0.20.5 in every regard. | |||||
</li> | </li> | ||||
<li> | <li> | ||||
The API of FOP has changed considerably and is not backwards-compatible with version 0.20.5. | The API of FOP has changed considerably and is not backwards-compatible with version 0.20.5. | ||||
<li> | <li> | ||||
The new API is not stable, yet. Please be aware that further changes might still occur! | The new API is not stable, yet. Please be aware that further changes might still occur! | ||||
</li> | </li> | ||||
<li> | |||||
The configuration file format has changed (see the <a href="configuration.html">Configuration page</a> for details). | |||||
</li> | |||||
<li> | <li> | ||||
<p> | <p> | ||||
The new code is much more strict about the interpretation of the XSL-FO 1.0 specification. | The new code is much more strict about the interpretation of the XSL-FO 1.0 specification. | ||||
<note label="An example"> | <note label="An example"> | ||||
While FOP 0.20.5 allowed you to have empty <code>fo:table-cell</code> elements, the new code | While FOP 0.20.5 allowed you to have empty <code>fo:table-cell</code> elements, the new code | ||||
will complain about that (unless relaxed validation is enabled) because the specification | will complain about that (unless relaxed validation is enabled) because the specification | ||||
demands at least one block-level element (<code>(%block;)+</code>, see XSL-FO 1.0, 6.7.10) | |||||
demands at least one block-level element (<code>(%block;)+</code>, see | |||||
<a href="http://www.w3.org/TR/xsl/slice6.html#fo_table-cell">XSL-FO 1.0, 6.7.10</a>) | |||||
inside an <code>fo:table-cell</code> element. | inside an <code>fo:table-cell</code> element. | ||||
</note> | </note> | ||||
</li> | </li> | ||||
<li> | <li> | ||||
Extensions written for version 0.20.5 will not work with the new code! | |||||
Extensions and Renderers written for version 0.20.5 will not work with the new code! The new FOP | |||||
extension for <a href="http://barcode4j.krysalis.org">Barcode4J</a> will be available in | |||||
January 2006. | |||||
</li> | </li> | ||||
<li> | <li> | ||||
The PCL Renderer and the MIF Handler have not been resurrected, yet! They are currently non-functional | The PCL Renderer and the MIF Handler have not been resurrected, yet! They are currently non-functional | ||||
</li> | </li> | ||||
<li> | <li> | ||||
As stated above empty table cells <code><fo:table-cell></fo:table-cell></code> | As stated above empty table cells <code><fo:table-cell></fo:table-cell></code> | ||||
are not allowed. | |||||
are not allowed by the specification. The same applies to empty <code>static-content</code> | |||||
and <code>block-container</code> elements, for example. | |||||
</li> | </li> | ||||
<li> | <li> | ||||
0.20.5 is not XSL-FO compliant with respect to sizing images or <code>instream-foreign-object</code> | |||||
0.20.5 is not XSL-FO compliant with respect to sizing images (<code>external-graphic</code>) | |||||
or <code>instream-foreign-object</code> | |||||
objects. If images or SVGs are sized differently in your outputs with the new FOP version | objects. If images or SVGs are sized differently in your outputs with the new FOP version | ||||
check <a href="http://issues.apache.org/bugzilla/show_bug.cgi?id=37136">Bug 37136</a> | check <a href="http://issues.apache.org/bugzilla/show_bug.cgi?id=37136">Bug 37136</a> | ||||
as it contains some hints on what to. | |||||
as it contains some hints on what to. The file | |||||
<a href="http://svn.apache.org/viewcvs.cgi/xmlgraphics/fop/trunk/examples/fo/basic/images.fo?view=markup"> | |||||
<code>"examples/fo/basic/images.fo"</code></a> has | |||||
a number of good examples that shows the new, more correct behaviour. | |||||
</li> | </li> | ||||
<li> | <li> | ||||
The <code>fox:outline</code> extension not implemented in this version anymore. | The <code>fox:outline</code> extension not implemented in this version anymore. |
0.20.5 (current stable) | 0.20.5 (current stable) | ||||
</th> | </th> | ||||
<th align="center"> | <th align="center"> | ||||
0.90alpha1 (unstable) | |||||
0.91 beta (unstable) | |||||
</th> | </th> | ||||
</tr> | </tr> | ||||
<tr> | <tr> | ||||
[0.20.5] For absolute positioning, use 'position="absolute"' (as 'absolute-position="absolute"' is not implemented), and specify all four of "left", "top", "width" and "height" | [0.20.5] For absolute positioning, use 'position="absolute"' (as 'absolute-position="absolute"' is not implemented), and specify all four of "left", "top", "width" and "height" | ||||
</li> | </li> | ||||
<li> | <li> | ||||
[0.90alpha1] No known restrictions. | |||||
[0.91 beta] No known restrictions. | |||||
</li> | </li> | ||||
</ul> | </ul> | ||||
</td> | </td> | ||||
[0.20.5] Only works for table of contents without any problems. The case where the page number doesn't fit on a line isn't handled, and any text on the same line and after the page-number might not appear exactly where you want it to. | [0.20.5] Only works for table of contents without any problems. The case where the page number doesn't fit on a line isn't handled, and any text on the same line and after the page-number might not appear exactly where you want it to. | ||||
</li> | </li> | ||||
<li> | <li> | ||||
[0.90alpha1] After the page number is known, no relayout is performed. The appearance may be suboptimal depending on the use case. | |||||
[0.91 beta] After the page number is known, no relayout is performed. The appearance may be suboptimal depending on the use case. | |||||
</li> | </li> | ||||
</ul> | </ul> | ||||
</td> | </td> | ||||
<td align="left"> | <td align="left"> | ||||
<ul> | <ul> | ||||
<li> | <li> | ||||
[0.90alpha1] Only border-collapse="separate" is supported and there's no support for automatic column widths. | |||||
[0.91 beta] Only border-collapse="separate" is supported and there's no support for automatic column widths. | |||||
</li> | </li> | ||||
</ul> | </ul> | ||||
</td> | </td> | ||||
</td> | </td> | ||||
<td align="left"> | <td align="left"> | ||||
<ul> | <ul> | ||||
<li>[0.90alpha1] Restrictions with multi-column documents.</li> | |||||
<li>[0.91 beta] Restrictions with multi-column documents.</li> | |||||
</ul> | </ul> | ||||
</td> | </td> | ||||
</tr> | </tr> | ||||
0.20.5 (current stable) | 0.20.5 (current stable) | ||||
</th> | </th> | ||||
<th align="center"> | <th align="center"> | ||||
0.90alpha1 (unstable) | |||||
0.91 beta (unstable) | |||||
</th> | </th> | ||||
</tr> | </tr> | ||||
<tr> | <tr> | ||||
[0.20.5] Use shorthand position="absolute" as a workaround. | [0.20.5] Use shorthand position="absolute" as a workaround. | ||||
</li> | </li> | ||||
<li> | <li> | ||||
[0.90alpha1] No restrictions. The 0.20.5 work-around is not supported. | |||||
[0.91 beta] No restrictions. The 0.20.5 work-around is not supported. | |||||
</li> | </li> | ||||
</ul> | </ul> | ||||
</td> | </td> | ||||
<td align="left"> | <td align="left"> | ||||
<ul> | <ul> | ||||
<li> | <li> | ||||
[0.90alpha1] not yet implemented on table-body, table-header and table-footer. | |||||
[0.91 beta] not yet implemented on table-body, table-header and table-footer. | |||||
</li> | </li> | ||||
</ul> | </ul> | ||||
</td> | </td> | ||||
<td align="partial"> | <td align="partial"> | ||||
<ul> | <ul> | ||||
<li> | <li> | ||||
[0.90alpha1] not yet implemented on table-body, table-header and table-footer. | |||||
[0.91 beta] not yet implemented on table-body, table-header and table-footer. | |||||
</li> | </li> | ||||
</ul> | </ul> | ||||
</td> | </td> | ||||
[0.20.5] "normal", "bolder" and "lighter" are not supported | [0.20.5] "normal", "bolder" and "lighter" are not supported | ||||
</li> | </li> | ||||
<li> | <li> | ||||
[0.90alpha1] TODO <relative> font weights | |||||
[0.91 beta] TODO <relative> font weights | |||||
</li> | </li> | ||||
</ul> | </ul> | ||||
</td> | </td> | ||||
[0.20.5] space-before.optimum supported | [0.20.5] space-before.optimum supported | ||||
</li> | </li> | ||||
<li> | <li> | ||||
[0.90alpha1] Space adjustment may not fully work everywhere, yet. | |||||
[0.91 beta] Space adjustment may not fully work everywhere, yet. | |||||
</li> | </li> | ||||
</ul> | </ul> | ||||
</td> | </td> | ||||
[0.20.5] space-after.optimum supported | [0.20.5] space-after.optimum supported | ||||
</li> | </li> | ||||
<li> | <li> | ||||
[0.90alpha1] Space adjustment may not fully work everywhere, yet. | |||||
[0.91 beta] Space adjustment may not fully work everywhere, yet. | |||||
</li> | </li> | ||||
</ul> | </ul> | ||||
</td> | </td> | ||||
[0.20.5] For table-cell, the "height" attribute must be set for the parent table-row; setting the height of the table or the table-cell results in vertical centering having no effect. | [0.20.5] For table-cell, the "height" attribute must be set for the parent table-row; setting the height of the table or the table-cell results in vertical centering having no effect. | ||||
</li> | </li> | ||||
<li> | <li> | ||||
[0.90alpha1] TODO Check e-g, i-f-o. | |||||
[0.91 beta] TODO Check e-g, i-f-o. | |||||
</li> | </li> | ||||
</ul> | </ul> | ||||
</td> | </td> | ||||
<td align="left"> | <td align="left"> | ||||
<ul> | <ul> | ||||
<li> | <li> | ||||
[0.90alpha1] value "line-height" not supported | |||||
[0.91 beta] value "line-height" not supported | |||||
</li> | </li> | ||||
</ul> | </ul> | ||||
</td> | </td> | ||||
<td align="left"> | <td align="left"> | ||||
<ul> | <ul> | ||||
<li> | <li> | ||||
[0.90alpha1] Value "treat-as-zero-width-space" not supported | |||||
[0.91 beta] Value "treat-as-zero-width-space" not supported | |||||
</li> | </li> | ||||
</ul> | </ul> | ||||
</td> | </td> | ||||
<td align="left"> | <td align="left"> | ||||
<ul> | <ul> | ||||
<li> | <li> | ||||
[0.90alpha1] Only the values "ignore" and "ignore-if-surrounding-linefeed" work reliably | |||||
[0.91 beta] Only the values "ignore" and "ignore-if-surrounding-linefeed" work reliably | |||||
</li> | </li> | ||||
</ul> | </ul> | ||||
</td> | </td> | ||||
<td align="left"> | <td align="left"> | ||||
<ul> | <ul> | ||||
<li> | <li> | ||||
[0.90alpha1] Only supported on fo:block. | |||||
[0.91 beta] Only supported on fo:block. | |||||
</li> | </li> | ||||
</ul> | </ul> | ||||
</td> | </td> | ||||
[0.20.5] works only in table rows | [0.20.5] works only in table rows | ||||
</li> | </li> | ||||
<li> | <li> | ||||
[0.90alpha1] works on all implemented FOs. | |||||
[0.91 beta] works on all implemented FOs. | |||||
</li> | </li> | ||||
<li> | <li> | ||||
[0.90alpha1] <integer> values are not supported. | |||||
[0.91 beta] <integer> values are not supported. | |||||
</li> | </li> | ||||
</ul> | </ul> | ||||
</td> | </td> | ||||
[0.20.5] works only in table rows | [0.20.5] works only in table rows | ||||
</li> | </li> | ||||
<li> | <li> | ||||
[0.90alpha1] works on all implemented FOs. | |||||
[0.91 beta] works on all implemented FOs. | |||||
</li> | </li> | ||||
<li> | <li> | ||||
[0.90alpha1] <integer> values are not supported. | |||||
[0.91 beta] <integer> values are not supported. | |||||
</li> | </li> | ||||
</ul> | </ul> | ||||
</td> | </td> | ||||
[0.20.5] works only in table rows | [0.20.5] works only in table rows | ||||
</li> | </li> | ||||
<li> | <li> | ||||
[0.90alpha1] works on all implemented FOs, except list- and table-related FOs. | |||||
[0.91 beta] works on all implemented FOs, except list- and table-related FOs. | |||||
</li> | </li> | ||||
<li> | <li> | ||||
[0.90alpha1] <integer> values are not supported. | |||||
[0.91 beta] <integer> values are not supported. | |||||
</li> | </li> | ||||
</ul> | </ul> | ||||
</td> | </td> | ||||
<td class="no"> | <td class="no"> | ||||
no | no | ||||
</td> | </td> | ||||
<td class="partial"> | |||||
partial | |||||
<td class="yes"> | |||||
yes | |||||
</td> | </td> | ||||
<td align="center"> | <td align="center"> | ||||
<ul> | |||||
<li>[0.90alpha1] TODO TBD</li> | |||||
</ul> | |||||
| |||||
</td> | </td> | ||||
</tr> | </tr> | ||||
<tr> | <tr> | ||||
[0.20.5] not value "page" | [0.20.5] not value "page" | ||||
</li> | </li> | ||||
<li> | <li> | ||||
[0.90alpha1] Not uspported | |||||
[0.91 beta] Not uspported | |||||
</li> | </li> | ||||
</ul> | </ul> | ||||
</td> | </td> | ||||
[0.20.5] not value "use-content" | [0.20.5] not value "use-content" | ||||
</li> | </li> | ||||
<li> | <li> | ||||
[0.90alpha1] Value "use-content" does not work in all circumstances. | |||||
[0.91 beta] Value "use-content" does not work in all circumstances. | |||||
</li> | </li> | ||||
</ul> | </ul> | ||||
</td> | </td> | ||||
</td> | </td> | ||||
<td align="left"> | <td align="left"> | ||||
<ul> | <ul> | ||||
<li>[0.90alpha1] IDs on table-header, table-footer, table-body, table-row, table-and-caption, table-caption, inline-container and bidi-override are not available, yet.</li> | |||||
<li>[0.91 beta] IDs on table-header, table-footer, table-body, table-row, table-and-caption, table-caption, inline-container and bidi-override are not available, yet.</li> | |||||
</ul> | </ul> | ||||
</td> | </td> | ||||
</tr> | </tr> |
<?xml version="1.0" encoding="UTF-8"?> | <?xml version="1.0" encoding="UTF-8"?> | ||||
<!-- | <!-- | ||||
Copyright 1999-2004 The Apache Software Foundation | |||||
Copyright 1999-2005 The Apache Software Foundation | |||||
Licensed under the Apache License, Version 2.0 (the "License"); | Licensed under the Apache License, Version 2.0 (the "License"); | ||||
you may not use this file except in compliance with the License. | you may not use this file except in compliance with the License. | ||||
<ul> | <ul> | ||||
<li>Determine whether this is a Release Candidate or a Release.</li> | <li>Determine whether this is a Release Candidate or a Release.</li> | ||||
<li>Determine whether further testing is required.</li> | <li>Determine whether further testing is required.</li> | ||||
<li>Edit release notes, and commit any changes.</li> | |||||
<li>Commit any outstanding changes</li> | |||||
<li>Edit release notes (relnotes.xml, README, status.xml in the root and in xdocs).</li> | |||||
<li>Update version number in build.xml, and commit the change.</li> | <li>Update version number in build.xml, and commit the change.</li> | ||||
<li>Tag the source tree with the release ID. For example, if the release is 0.20.5rc3: | |||||
<code>cvs tag fop-0_20_5rc3</code></li> | |||||
<li>Copy trunk documentation directory to a new directory with the version number and update any links and the .htaccess file for redirections.</li> | |||||
<li>Update the index.xml for the new version.</li> | |||||
<li>Update the version numbers on the compliance page.</li> | |||||
<li>Tag the source tree with the release ID. For example, if the release is 0.91beta: | |||||
<code>svn copy https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk https://svn.apache.org/repos/asf/xmlgraphics/fop/tags/fop-0_91beta</code></li> | |||||
<li>Make a fresh checkout with the just created tag: | <li>Make a fresh checkout with the just created tag: | ||||
<code>cvs -d :pserver:anoncvs@cvs.apache.org:/home/cvspublic co -r | |||||
fop-0_20_5rc3 xml-fop</code></li> | |||||
<code>https://svn.apache.org/repos/asf/xmlgraphics/fop/tags/fop-0_91beta</code></li> | |||||
<li>Copy jimi and jai to lib/ (jimi-1.0.jar, jai_core.jar, jai_codec.jar)</li> | <li>Copy jimi and jai to lib/ (jimi-1.0.jar, jai_core.jar, jai_codec.jar)</li> | ||||
<li>Copy jce-jdk13-119.jar from <link href="http://www.bouncycastle.org/latest_releases.html"> | <li>Copy jce-jdk13-119.jar from <link href="http://www.bouncycastle.org/latest_releases.html"> | ||||
from http://www.bouncycastle.org/latest_releases.html</link> to lib/</li> | from http://www.bouncycastle.org/latest_releases.html</link> to lib/</li> | ||||
<li>Run build[.sh] dist. Use jdk1.3. A Forrest installation is needed.</li> | |||||
<li>Alternatively, create a build-local.properties file that points to the above libs.</li> | |||||
<li>Run build[.sh] dist. Do this once using Sun JDK 1.3.1_15 or later and once with Sun JDK 1.4.2_08 or later. A Forrest installation is needed.</li> | |||||
<li>Create signatures. Don't forget to upload your KEY: | <li>Create signatures. Don't forget to upload your KEY: | ||||
<code>gpg -a -b --force-v3-sigs fop-0.20.5rc3-bin.tar.gz etc.</code></li> | |||||
<li>Upload to www.apache.org. (An account on daedalus is needed): | |||||
<code>scp fop-0.20.5rc3*.tar.gz* | |||||
chrisg@www.apache.org:/www/www.apache.org/dist/xml/fop/</code></li> | |||||
<code>gpg -a -b --force-v3-sigs fop-0.91beta.tar.gz etc.</code></li> | |||||
<li>Upload to people.apache.org. (An account on minotaur is needed): | |||||
<code>scp fop-0.91beta*.tar.gz* | |||||
chrisg@www.apache.org:/www/www.apache.org/dist/xmlgraphics/fop/</code></li> | |||||
<li>Check permissions: | <li>Check permissions: | ||||
<code>chmod 664 ... ; chgrp xml ...</code></li> | |||||
<li>Add MD5 sums: <code>md5 fop-0.20.5rc3-bin.tar.gz > | |||||
fop-0.20.5rc3-bin.tar.gz.md5</code></li> | |||||
<code>chmod 664 ... ; chgrp xmlgraphics ...</code></li> | |||||
<li>Add MD5 sums: <code>md5 fop-0.91beta-bin.tar.gz > | |||||
fop-0.91beta-bin.tar.gz.md5</code></li> | |||||
<li>Make a test download.</li> | <li>Make a test download.</li> | ||||
<li>Wait 24 hours (for the mirrors to catch up).</li> | <li>Wait 24 hours (for the mirrors to catch up).</li> | ||||
<li>Post announcements on fop-dev and fop-user mailing lists.</li> | |||||
<li>Post announcements on fop-dev and fop-user and other related mailing lists.</li> | |||||
<li>Add bugzilla entry for the new release id.</li> | <li>Add bugzilla entry for the new release id.</li> | ||||
</ul> | </ul> | ||||
</section> | </section> | ||||
<title>Resources</title> | <title>Resources</title> | ||||
<p>The following is a sample of some other project release checlists, which might be consulted for ideas:</p> | <p>The following is a sample of some other project release checlists, which might be consulted for ideas:</p> | ||||
<ul> | <ul> | ||||
<li><jump href="http://cvs.apache.org/viewcvs.cgi/xml-batik/MAINTAIN?rev=HEAD&content-type=text/vnd.viewcvs-markup">Batik</jump></li> | |||||
<li><jump href="http://cvs.apache.org/viewcvs.cgi/ant/ReleaseInstructions?rev=HEAD&content-type=text/vnd.viewcvs-markup">Ant</jump></li> | |||||
<li><jump href="http://jakarta.apache.org/cactus/participating/release_checklist.html">Cactus</jump></li> | |||||
<li><jump href="http://svn.apache.org/repos/asf/xmlgraphics/batik/trunk/MAINTAIN">Apache Batik</jump></li> | |||||
<li><jump href="http://svn.apache.org/repos/asf/ant/core/trunk/ReleaseInstructions">Apache Ant</jump></li> | |||||
<li><jump href="http://jakarta.apache.org/cactus/participating/release_checklist.html">Apache Cactus</jump></li> | |||||
</ul> | </ul> | ||||
<p>Following are links with information about mirroring:</p> | <p>Following are links with information about mirroring:</p> | ||||
<ul> | <ul> | ||||
<li><jump href="http://www.apache.org/dev/mirrors.html">Apache Mirroring</jump></li> | <li><jump href="http://www.apache.org/dev/mirrors.html">Apache Mirroring</jump></li> | ||||
<li>Stefan Bodewig's <jump href="http://cvs.apache.org/~bodewig/mirror.html">Making your Downloads Mirrorable</jump></li> | |||||
<li>Stefan Bodewig's <jump href="http://people.apache.org/~bodewig/mirror.html">Making your Downloads Mirrorable</jump></li> | |||||
</ul> | </ul> | ||||
</section> | </section> | ||||
<section id="announcements"> | <section id="announcements"> |
W3C Recommendation</link>. | W3C Recommendation</link>. | ||||
</p> | </p> | ||||
<p> | <p> | ||||
The latest unstable version of FOP (<link href="0.90/">0.90 alpha 1</link>) is the first preview release | |||||
The latest unstable version of FOP (<link href="0.91/">0.91 beta</link>) is the first preview release | |||||
after a large redesign effort and implements a larger subset than 0.20.5 of the | after a large redesign effort and implements a larger subset than 0.20.5 of the | ||||
<link href="http://www.w3.org/TR/2001/REC-xsl-20011015/">XSL-FO Version 1.0 W3C Recommendation</link> | <link href="http://www.w3.org/TR/2001/REC-xsl-20011015/">XSL-FO Version 1.0 W3C Recommendation</link> | ||||
as well as some parts of the <link href="http://www.w3.org/TR/xsl11">XSL-FO Version 1.1 Working Draft</link>. | as well as some parts of the <link href="http://www.w3.org/TR/xsl11">XSL-FO Version 1.1 Working Draft</link>. |
<version>$Revision$</version> | <version>$Revision$</version> | ||||
</header> | </header> | ||||
<body> | <body> | ||||
<section> | |||||
<title>23 December 2005 - Apache FOP 0.91 beta released</title> | |||||
<p> | |||||
One month after the initial release we're happy present a "beta" grade | |||||
release of the new FOP codebase. It's mostly a bug fix release but also | |||||
contains a few new features. Thanks to all those who sent us feedback | |||||
on the initial release! | |||||
</p> | |||||
</section> | |||||
<section> | <section> | ||||
<title>22 November 2005 - Apache FOP 0.90 alpha 1 released</title> | <title>22 November 2005 - Apache FOP 0.90 alpha 1 released</title> | ||||
<p> | <p> |
</header> | </header> | ||||
<body> | <body> | ||||
<section> | |||||
<title>FOP 0.91 beta</title> | |||||
<p> | |||||
This is the second release after the big redesign effort. FOP 0.91 beta is mostly a bug | |||||
fix release but also contains some new features. | |||||
</p> | |||||
<p> | |||||
We would like to encourage you to download the code and to play with it. | |||||
We're still in the process of adding new major features and stabilizing | |||||
the code. We welcome any feedback you might have and even more, any | |||||
other form of help to get the project forward. | |||||
</p> | |||||
<p>Caveats:</p> | |||||
<ul> | |||||
<li> | |||||
This release is an beta release. If you intend to use this software in a production | |||||
environment, please perform careful testing. | |||||
</li> | |||||
<li> | |||||
The API is not to be considered stable, yet. Please be prepared | |||||
for the API to be changed in a backwards-incompatible way. | |||||
</li> | |||||
<li> | |||||
You may experience different behaviour compared to version 0.20.5. | |||||
Please consult the <a href="0.91/upgrading.html">"Upgrading"</a> page indicated above for details. | |||||
</li> | |||||
</ul> | |||||
<p>Known Issues:</p> | |||||
<ul> | |||||
<li> | |||||
PCL, MIF and SVG support have not been restored, yet. | |||||
</li> | |||||
<li> | |||||
Java2D/AWT support contains some problems, for example with | |||||
block-containers. | |||||
</li> | |||||
<li> | |||||
Support for kerning has not been restored, yet. | |||||
</li> | |||||
<li> | |||||
Auto table layout is not implemented, yet. | |||||
</li> | |||||
<li> | |||||
The collapsing border model on tables is not implemented, yet. Please | |||||
use border-collapse="separate" for now. | |||||
</li> | |||||
<li> | |||||
Footnotes may overlap with text of the region-body in multi-column | |||||
documents. | |||||
</li> | |||||
<li> | |||||
Space resolution does not work between footnote regions. | |||||
</li> | |||||
<li> | |||||
There's a problem involving nested block-containers and | |||||
reference-orientation 180/-180 (<a href="http://issues.apache.org/bugzilla/show_bug.cgi?id=36391">Bugzilla #36391</a>) | |||||
</li> | |||||
<li> | |||||
block-containers with no height currently don't create a fence for | |||||
spaces as they should (they behave like a normal block). | |||||
</li> | |||||
<li> | |||||
Preserved linefeeds in fo:character are not handled correctly. | |||||
</li> | |||||
<li> | |||||
Zero-width spaces are not handled correctly. | |||||
</li> | |||||
<li> | |||||
An empty block currently produces a fence for stacking constraints | |||||
which it shouldn't. | |||||
</li> | |||||
<li> | |||||
There are several small problems around white space handling. | |||||
</li> | |||||
<li> | |||||
Images currently don't shrink so they fit on a page when they are | |||||
too big and shrinking is allowed to happen. | |||||
</li> | |||||
<li> | |||||
Block-level content in fo:inlines may produce unwelcome results. | |||||
</li> | |||||
<li> | |||||
inline-container may not work as expected. | |||||
</li> | |||||
<li> | |||||
letter-spacing and word-spacing properties may not work as expected. | |||||
</li> | |||||
<li> | |||||
leaders with leader-pattern="use-content" may not work as expected. | |||||
</li> | |||||
<li> | |||||
keep-with-previous doesn't work inside tables and lists, yet. | |||||
</li> | |||||
<li> | |||||
White space on direct inline-level children of a marker is not | |||||
handled correctly. | |||||
</li> | |||||
<li> | |||||
If two consecutive pages don't have the same available width, the | |||||
content currently isn't properly fit into the available space on | |||||
the new page. | |||||
</li> | |||||
<li> | |||||
background-images on page-number-citations are not placed correctly. | |||||
</li> | |||||
<li> | |||||
Not all FO elements can be referenced by their "id", most notably: | |||||
table-body, table-header, table-footer and table-row. | |||||
</li> | |||||
<li> | |||||
The backgrounds of table-body, table-header, table-footer and | |||||
table-column are not painted, yet. | |||||
</li> | |||||
<li> | |||||
Border and padding conditionality are not supported on table-cells, yet. | |||||
</li> | |||||
<li> | |||||
Copy/Paste from PDF content in Acrobat Reader is not supported for | |||||
text using embedded TrueType fonts. | |||||
</li> | |||||
<li> | |||||
Column balancing in multi-column documents may not work as expected | |||||
(<a href="http://issues.apache.org/bugzilla/show_bug.cgi?id=36356">Bugzilla #36356</a>) | |||||
</li> | |||||
<li> | |||||
Omitting fo:table-column or having fo:table-column without a column-width | |||||
and attempting to create columns implicitly from the first | |||||
table row is not implemented, yet (<a href="http://issues.apache.org/bugzilla/show_bug.cgi?id=35656">Bugzilla #35656</a>). | |||||
</li> | |||||
<li> | |||||
Leaders with the "rule" pattern don't work for PostScript output. | |||||
</li> | |||||
<li> | |||||
break-after may in some cases cause subsequent content to be swallowed. | |||||
Please use break-before, if possible. | |||||
</li> | |||||
</ul> | |||||
</section> | |||||
<section> | <section> | ||||
<title>FOP 0.90 alpha 1</title> | <title>FOP 0.90 alpha 1</title> | ||||
<p> | <p> | ||||
</li> | </li> | ||||
<li> | <li> | ||||
You may experience different behaviour compared to version 0.20.5. | You may experience different behaviour compared to version 0.20.5. | ||||
Please consult the <a href="0.90/upgrading.html">"Upgrading"</a> page indicated above for details. | |||||
Please consult the <a href="0.91/upgrading.html">"Upgrading"</a> page indicated above for details. | |||||
</li> | </li> | ||||
</ul> | </ul> | ||||
<p>Known Issues:</p> | <p>Known Issues:</p> |
--> | --> | ||||
<!-- | <!-- | ||||
BEGIN Version 0.90 documentation tab | |||||
BEGIN Version 0.91 documentation tab | |||||
--> | --> | ||||
<trunk label="FOP 0.90 alpha 1" href="0.90/" tab="currentversion"> | |||||
<trunk label="FOP 0.91 beta" href="0.91/" tab="currentversion"> | |||||
<about label="About" href="index.html"/> | <about label="About" href="index.html"/> | ||||
<upgrading label="Upgrading" href="upgrading.html"/> | <upgrading label="Upgrading" href="upgrading.html"/> | ||||
</trunk> | </trunk> | ||||
<!-- | <!-- | ||||
END Version 0.90 documentation tab | |||||
END Version 0.91 documentation tab | |||||
--> | --> | ||||
<!-- | <!-- |
<tabs software="FOP" title="FOP" copyright="@year@ The Apache Software Foundation" xmlns:xlink="http://www.w3.org/1999/xlink"> | <tabs software="FOP" title="FOP" copyright="@year@ The Apache Software Foundation" xmlns:xlink="http://www.w3.org/1999/xlink"> | ||||
<tab label="Home" dir=""/> | <tab label="Home" dir=""/> | ||||
<tab label="Version 0.20.5" dir="0.20.5/"/> | <tab label="Version 0.20.5" dir="0.20.5/"/> | ||||
<tab label="Version 0.90 alpha 1" dir="0.90/"/> | |||||
<tab label="Version 0.91 beta" dir="0.91/"/> | |||||
<tab label="FOP Trunk" dir="trunk/"/> | <tab label="FOP Trunk" dir="trunk/"/> | ||||
<tab label="Development" dir="dev/"/> | <tab label="Development" dir="dev/"/> | ||||
<!-- | <!-- |
<title>Type 1 Font Metrics</title> | <title>Type 1 Font Metrics</title> | ||||
<p>FOP includes PFMReader, which reads the PFM file that normally comes with a Type 1 font, and generates an appropriate font metrics file for it. | <p>FOP includes PFMReader, which reads the PFM file that normally comes with a Type 1 font, and generates an appropriate font metrics file for it. | ||||
To use it, run the class org.apache.fop.fonts.apps.PFMReader:</p> | To use it, run the class org.apache.fop.fonts.apps.PFMReader:</p> | ||||
<p>Windows:</p> | |||||
<source>java -cp build\fop.jar;lib\avalon-framework.jar;lib\xml-apis.jar; | |||||
lib\xercesImpl.jar;lib\xalan.jar | |||||
<p>Windows (on JDK 1.4 and later):</p> | |||||
<source>java -cp build\fop.jar;lib\avalon-framework.jar;lib\commons-logging.jar;lib\commons-io.jar | |||||
org.apache.fop.fonts.apps.PFMReader [options] pfm-file xml-file</source> | org.apache.fop.fonts.apps.PFMReader [options] pfm-file xml-file</source> | ||||
<p>Unix:</p> | |||||
<source>java -cp build/fop.jar:lib/avalon-framework.jar:lib/xml-apis.jar: | |||||
lib/xercesImpl.jar:lib/xalan.jar | |||||
<p>Windows (on JDK 1.3.x):</p> | |||||
<source>java -cp build\fop.jar;lib\avalon-framework.jar;lib\commons-logging.jar;lib\commons-io.jar;lib\xml-apis.jar; | |||||
lib\xercesImpl.jar;lib\xalan.jar;lib\serializer.jar | |||||
org.apache.fop.fonts.apps.PFMReader [options] pfm-file xml-file</source> | |||||
<p>Unix (on JDK 1.4 and later):</p> | |||||
<source>java -cp build/fop.jar:lib/avalon-framework.jar:lib/commons-logging.jar:lib/commons-io.jar | |||||
org.apache.fop.fonts.apps.PFMReader [options] pfm-file xml-file</source> | |||||
<p>Unix (on JDK 1.3.1):</p> | |||||
<source>java -cp build/fop.jar:lib/avalon-framework.jar:lib/commons-logging.jar:lib/commons-io.jar:lib/xml-apis.jar: | |||||
lib/xercesImpl.jar:lib/xalan.jar:lib/serializer.jar | |||||
org.apache.fop.fonts.apps.PFMReader [options] pfm-file xml-file</source> | org.apache.fop.fonts.apps.PFMReader [options] pfm-file xml-file</source> | ||||
<p>PFMReader [options]:</p> | <p>PFMReader [options]:</p> | ||||
<ul> | <ul> | ||||
</ul> | </ul> | ||||
<note>The classpath in the above example has been simplified for readability. | <note>The classpath in the above example has been simplified for readability. | ||||
You will have to adjust the classpath to the names of the actual JAR files in the lib directory. | You will have to adjust the classpath to the names of the actual JAR files in the lib directory. | ||||
avalon-framework.jar is necessary only for versions 0.20.5 or later. | |||||
xml-apis.jar, xercesImpl.jar and xalan.jar are not necessary for JDK version 1.4 or later.</note> | |||||
xml-apis.jar, xercesImpl.jar, xalan.jar and serializer.jar are not necessary for JDK version 1.4 or later.</note> | |||||
<note>The tool will construct some values (FontBBox, StemV and ItalicAngle) based on assumptions and calculations which are only an approximation to the real values. | <note>The tool will construct some values (FontBBox, StemV and ItalicAngle) based on assumptions and calculations which are only an approximation to the real values. | ||||
FontBBox and Italic Angle can be found in the human-readable part of the PFB file or in the AFM file. | FontBBox and Italic Angle can be found in the human-readable part of the PFB file or in the AFM file. | ||||
The PFMReader tool does not yet interpret PFB or AFM files, so if you want to be correct, you may have to adjust the values in the XML file manually. | The PFMReader tool does not yet interpret PFB or AFM files, so if you want to be correct, you may have to adjust the values in the XML file manually. | ||||
<p>FOP includes TTFReader, which reads the TTF file and generates an appropriate font metrics file for it. | <p>FOP includes TTFReader, which reads the TTF file and generates an appropriate font metrics file for it. | ||||
Use it in a similar manner to PFMReader. | Use it in a similar manner to PFMReader. | ||||
For example, to create such a metrics file in Windows from the TrueType font at c:\myfonts\cmr10.ttf:</p> | For example, to create such a metrics file in Windows from the TrueType font at c:\myfonts\cmr10.ttf:</p> | ||||
<source>java -cp build\fop.jar;lib\avalon-framework.jar;lib\xml-apis.jar; | |||||
lib\xercesImpl.jar;lib\xalan.jar | |||||
<source>java -cp build\fop.jar;lib\avalon-framework.jar;lib\commons-logging.jar;lib\commons-io.jar | |||||
org.apache.fop.fonts.apps.TTFReader [options] | org.apache.fop.fonts.apps.TTFReader [options] | ||||
C:\myfonts\cmr10.ttf ttfcm.xml</source> | C:\myfonts\cmr10.ttf ttfcm.xml</source> | ||||
<p>TTFReader [options]:</p> | <p>TTFReader [options]:</p> | ||||
<p>To get a list of the fonts in a collection, just start the TTFReader as if it were a normal TrueType file (without the -ttcname option). | <p>To get a list of the fonts in a collection, just start the TTFReader as if it were a normal TrueType file (without the -ttcname option). | ||||
It will display all of the font names and exit with an Exception.</p> | It will display all of the font names and exit with an Exception.</p> | ||||
<p>Here is an example of generating a metrics file for a .ttc file:</p> | <p>Here is an example of generating a metrics file for a .ttc file:</p> | ||||
<source>java -cp build\fop.jar;lib\avalon-framework.jar;lib\xml-apis.jar; | |||||
lib\xercesImpl.jar;lib\xalan.jar | |||||
<source>java -cp build\fop.jar;lib\avalon-framework.jar;lib\commons-logging.jar;lib\commons-io.jar | |||||
org.apache.fop.fonts.apps.TTFReader -ttcname "MS Mincho" | org.apache.fop.fonts.apps.TTFReader -ttcname "MS Mincho" | ||||
msmincho.ttc msminch.xml</source> | msmincho.ttc msminch.xml</source> | ||||
</section> | </section> |
<ul> | <ul> | ||||
<li> | <li> | ||||
More than half of the codebase has been rewritten over the last three years. The code is | More than half of the codebase has been rewritten over the last three years. The code is | ||||
new and not as stable as version 0.20.5. | |||||
relatively new and possibly not as stable as version 0.20.5 in every regard. | |||||
</li> | </li> | ||||
<li> | <li> | ||||
The API of FOP has changed considerably and is not backwards-compatible with version 0.20.5. | The API of FOP has changed considerably and is not backwards-compatible with version 0.20.5. | ||||
<note label="An example"> | <note label="An example"> | ||||
While FOP 0.20.5 allowed you to have empty <code>fo:table-cell</code> elements, the new code | While FOP 0.20.5 allowed you to have empty <code>fo:table-cell</code> elements, the new code | ||||
will complain about that (unless relaxed validation is enabled) because the specification | will complain about that (unless relaxed validation is enabled) because the specification | ||||
demands at least one block-level element (<code>(%block;)+</code>, see XSL-FO 1.0, 6.7.10) | |||||
demands at least one block-level element (<code>(%block;)+</code>, see | |||||
<a href="http://www.w3.org/TR/xsl/slice6.html#fo_table-cell">XSL-FO 1.0, 6.7.10</a>) | |||||
inside an <code>fo:table-cell</code> element. | inside an <code>fo:table-cell</code> element. | ||||
</note> | </note> | ||||
</li> | </li> | ||||
<li> | <li> | ||||
Extensions and Renderers written for version 0.20.5 will not work with the new code! | |||||
Extensions and Renderers written for version 0.20.5 will not work with the new code! The new FOP | |||||
extension for <a href="http://barcode4j.krysalis.org">Barcode4J</a> will be available in | |||||
January 2006. | |||||
</li> | </li> | ||||
<li> | <li> | ||||
The PCL Renderer and the MIF Handler have not been resurrected, yet! They are currently non-functional | The PCL Renderer and the MIF Handler have not been resurrected, yet! They are currently non-functional | ||||
</li> | </li> | ||||
<li> | <li> | ||||
As stated above empty table cells <code><fo:table-cell></fo:table-cell></code> | As stated above empty table cells <code><fo:table-cell></fo:table-cell></code> | ||||
are not allowed by the specification. | |||||
are not allowed by the specification. The same applies to empty <code>static-content</code> | |||||
and <code>block-container</code> elements, for example. | |||||
</li> | </li> | ||||
<li> | <li> | ||||
0.20.5 is not XSL-FO compliant with respect to sizing images (<code>external-graphic</code>) | 0.20.5 is not XSL-FO compliant with respect to sizing images (<code>external-graphic</code>) |
<changes> | <changes> | ||||
<release version="FOP Trunk"> | <release version="FOP Trunk"> | ||||
</release> | |||||
<release version="0.91beta" date="23 Dec 2005"> | |||||
<action context="Code" dev="JM" type="update"> | |||||
Deprecated Fop constructors that use integer constants to select the | |||||
output format have been removed in favor or the constructors that use | |||||
MIME types. | |||||
</action> | |||||
<action context="Code" dev="MM" type="fix"> | <action context="Code" dev="MM" type="fix"> | ||||
Fixed a bug where the linefeed-treatment property value "preserve" was not | Fixed a bug where the linefeed-treatment property value "preserve" was not | ||||
honoured when used in conjunction with text-align="center". | honoured when used in conjunction with text-align="center". | ||||
didn't get removed. | didn't get removed. | ||||
</action> | </action> | ||||
<action context="Code" dev="JM" type="fix"> | <action context="Code" dev="JM" type="fix"> | ||||
The validation check for non-zero borders and padding on a region-* is now turned off | |||||
when relaxed validation is active to improve compatibility with FO documents written | |||||
for other FO implementations. | |||||
The validation check for non-zero borders and padding on a region-* and for empty static-content | |||||
elements is now turned off when relaxed validation is active to improve compatibility with | |||||
FO documents written for other FO implementations. | |||||
</action> | </action> | ||||
<action context="Code" dev="JM" type="fix"> | <action context="Code" dev="JM" type="fix"> | ||||
Bugfix for "/ by zero" ArithmeticExceptions when an URL to a non-existing image is used | Bugfix for "/ by zero" ArithmeticExceptions when an URL to a non-existing image is used | ||||
Support for hyphenation-ladder-count. | Support for hyphenation-ladder-count. | ||||
</action> | </action> | ||||
</release> | </release> | ||||
<release version="0.90alpha1" date="Nov 2005"> | |||||
<release version="0.90alpha1" date="22 Nov 2005"> | |||||
<action context="Code" dev="all" type="update"> | <action context="Code" dev="all" type="update"> | ||||
<strong>Complete redesign of the FOP codebase</strong> in the period between Dec 2001 and Nov 2005. | <strong>Complete redesign of the FOP codebase</strong> in the period between Dec 2001 and Nov 2005. | ||||
There are just too many changes to list here. If you like to know details, run | There are just too many changes to list here. If you like to know details, run |