Browse Source

Merged changes from trunk up to revision 1306814


git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/branches/Temp_TrueTypeInPostScript@1309921 13f79535-47bb-0310-9956-ffa450edef68
pull/26/head
Vincent Hennebert 12 years ago
parent
commit
ab6067a056
100 changed files with 3691 additions and 1118 deletions
  1. 290
    290
      build.xml
  2. 274
    0
      checkstyle-5.5.xml
  3. 2
    1
      checkstyle-suppressions.xml
  4. 1
    1
      examples/embedding/build.xml
  5. 1
    2
      examples/embedding/java/embedding/ExampleFO2JPSPrint.java
  6. 182
    0
      examples/embedding/java/embedding/ExampleJava2D2PDF.java
  7. 1
    2
      examples/embedding/java/embedding/atxml/ExampleConcat.java
  8. 1
    1
      examples/embedding/java/embedding/tools/EasyGenerationContentHandlerProxy.java
  9. 1
    1
      examples/plan/src/org/apache/fop/plan/PlanElementMapping.java
  10. 496
    309
      findbugs-exclude.xml
  11. 75
    0
      fop.bat
  12. 2
    46
      fop.cmd
  13. 1
    1
      fop.js
  14. 38
    0
      jacoco.xml
  15. 27
    0
      lib/build/hamcrest.core-1.1.0.LICENSE.txt
  16. BIN
      lib/build/hamcrest.core-1.1.0.jar
  17. 21
    0
      lib/build/mockito-core-1.8.5.LICENCE.txt
  18. 11
    0
      lib/build/mockito-core-1.8.5.NOTICE.txt
  19. BIN
      lib/build/mockito-core-1.8.5.jar
  20. 18
    0
      lib/build/objenesis-1.0.0.LICENSE.txt
  21. BIN
      lib/build/objenesis-1.0.0.jar
  22. BIN
      lib/build/qdox-1.12.jar
  23. BIN
      lib/build/qdox-1.6.3.jar
  24. BIN
      lib/xmlgraphics-commons-1.5svn.jar
  25. 7
    8
      src/codegen/java/org/apache/fop/tools/EventProducerCollector.java
  26. 2
    2
      src/codegen/java/org/apache/fop/tools/EventProducerCollectorTask.java
  27. 571
    0
      src/codegen/unicode/java/org/apache/fop/complexscripts/bidi/GenerateBidiClass.java
  28. 1269
    0
      src/codegen/unicode/java/org/apache/fop/complexscripts/bidi/GenerateBidiTestData.java
  29. 19
    9
      src/codegen/unicode/java/org/apache/fop/hyphenation/UnicodeClasses.java
  30. 2
    1
      src/codegen/unicode/java/org/apache/fop/text/linebreak/GenerateLineBreakUtils.java
  31. 6
    3
      src/documentation/content/xdocs/0.95/anttask.xml
  32. 4
    5
      src/documentation/content/xdocs/0.95/compiling.xml
  33. 3
    4
      src/documentation/content/xdocs/0.95/configuration.xml
  34. 6
    7
      src/documentation/content/xdocs/0.95/embedding.xml
  35. 3
    4
      src/documentation/content/xdocs/0.95/extensions.xml
  36. 3
    3
      src/documentation/content/xdocs/0.95/fonts.xml
  37. 35
    35
      src/documentation/content/xdocs/0.95/graphics.xml
  38. 15
    15
      src/documentation/content/xdocs/0.95/hyphenation.xml
  39. 3
    3
      src/documentation/content/xdocs/0.95/index.xml
  40. 3
    3
      src/documentation/content/xdocs/0.95/intermediate.xml
  41. 4
    5
      src/documentation/content/xdocs/0.95/knownissues_overview.xml
  42. 4
    4
      src/documentation/content/xdocs/0.95/metadata.xml
  43. 4
    6
      src/documentation/content/xdocs/0.95/output.xml
  44. 3
    3
      src/documentation/content/xdocs/0.95/pdfa.xml
  45. 4
    4
      src/documentation/content/xdocs/0.95/pdfencryption.xml
  46. 3
    3
      src/documentation/content/xdocs/0.95/pdfx.xml
  47. 9
    9
      src/documentation/content/xdocs/0.95/running.xml
  48. 4
    4
      src/documentation/content/xdocs/0.95/servlets.xml
  49. 3
    3
      src/documentation/content/xdocs/0.95/upgrading.xml
  50. 4
    4
      src/documentation/content/xdocs/1.0/accessibility.xml
  51. 4
    5
      src/documentation/content/xdocs/1.0/anttask.xml
  52. 4
    5
      src/documentation/content/xdocs/1.0/compiling.xml
  53. 3
    4
      src/documentation/content/xdocs/1.0/configuration.xml
  54. 5
    6
      src/documentation/content/xdocs/1.0/embedding.xml
  55. 3
    3
      src/documentation/content/xdocs/1.0/events.xml
  56. 4
    5
      src/documentation/content/xdocs/1.0/extensions.xml
  57. 4
    4
      src/documentation/content/xdocs/1.0/fonts.xml
  58. 35
    35
      src/documentation/content/xdocs/1.0/graphics.xml
  59. 15
    15
      src/documentation/content/xdocs/1.0/hyphenation.xml
  60. 3
    3
      src/documentation/content/xdocs/1.0/index.xml
  61. 3
    3
      src/documentation/content/xdocs/1.0/intermediate.xml
  62. 5
    6
      src/documentation/content/xdocs/1.0/knownissues_overview.xml
  63. 3
    3
      src/documentation/content/xdocs/1.0/metadata.xml
  64. 5
    8
      src/documentation/content/xdocs/1.0/output.xml
  65. 3
    3
      src/documentation/content/xdocs/1.0/pdfa.xml
  66. 4
    4
      src/documentation/content/xdocs/1.0/pdfencryption.xml
  67. 5
    5
      src/documentation/content/xdocs/1.0/pdfx.xml
  68. 9
    9
      src/documentation/content/xdocs/1.0/running.xml
  69. 4
    4
      src/documentation/content/xdocs/1.0/servlets.xml
  70. 4
    4
      src/documentation/content/xdocs/1.0/upgrading.xml
  71. 5
    2
      src/documentation/content/xdocs/bugs.xml
  72. 6
    6
      src/documentation/content/xdocs/compliance.ihtml
  73. 0
    42
      src/documentation/content/xdocs/dev/api-doc.xml
  74. 7
    9
      src/documentation/content/xdocs/dev/conventions.xml
  75. 3
    3
      src/documentation/content/xdocs/dev/design/areas.xml
  76. 4
    5
      src/documentation/content/xdocs/dev/design/breakpos.xml
  77. 14
    16
      src/documentation/content/xdocs/dev/design/configuration.xml
  78. 4
    5
      src/documentation/content/xdocs/dev/design/embedding.xml
  79. 5
    6
      src/documentation/content/xdocs/dev/design/extending.xml
  80. 3
    3
      src/documentation/content/xdocs/dev/design/fotree.xml
  81. 4
    5
      src/documentation/content/xdocs/dev/design/images.xml
  82. 5
    5
      src/documentation/content/xdocs/dev/design/index.xml
  83. 3
    3
      src/documentation/content/xdocs/dev/design/layout.xml
  84. 4
    5
      src/documentation/content/xdocs/dev/design/optimise.xml
  85. 4
    4
      src/documentation/content/xdocs/dev/design/parsing.xml
  86. 4
    5
      src/documentation/content/xdocs/dev/design/pdf-library.xml
  87. 8
    8
      src/documentation/content/xdocs/dev/design/properties.xml
  88. 3
    3
      src/documentation/content/xdocs/dev/design/renderers.xml
  89. 4
    4
      src/documentation/content/xdocs/dev/design/startup.xml
  90. 6
    6
      src/documentation/content/xdocs/dev/design/svg.xml
  91. 4
    5
      src/documentation/content/xdocs/dev/design/useragent.xml
  92. 4
    4
      src/documentation/content/xdocs/dev/doc.xml
  93. 3
    4
      src/documentation/content/xdocs/dev/extensions.xml
  94. 2
    3
      src/documentation/content/xdocs/dev/faq.xml
  95. 4
    4
      src/documentation/content/xdocs/dev/fonts.xml
  96. 5
    5
      src/documentation/content/xdocs/dev/implement.xml
  97. 4
    4
      src/documentation/content/xdocs/dev/index.xml
  98. 5
    5
      src/documentation/content/xdocs/dev/release.xml
  99. 4
    4
      src/documentation/content/xdocs/dev/rtflib.xml
  100. 0
    0
      src/documentation/content/xdocs/dev/svg.xml

+ 290
- 290
build.xml View File

@@ -85,15 +85,12 @@ list of possible build targets.
</patternset>
</fileset>
<patternset id="dist.src.lib.tools">
<include name="lib/build/asm*"/>
<include name="lib/build/backport-util-concurrent*"/>
<include name="lib/build/jaxen*"/>
<include name="lib/build/pmd*"/>
<include name="lib/build/qdox*"/>
<include name="lib/build/xmlunit*"/>
<include name="lib/build/mockito*"/>
<include name="lib/build/hamcrest*"/>
<include name="lib/build/objenesis*"/>
<include name="lib/build/asm*"/>
<include name="lib/build/backport-util-concurrent*"/>
<include name="lib/build/jaxen*"/>
<include name="lib/build/pmd*"/>
<include name="lib/build/qdox*"/>
<include name="lib/build/xmlunit*"/>
</patternset>
<fileset dir="${basedir}" id="dist.src">
<include name="src/**"/>
@@ -101,7 +98,7 @@ list of possible build targets.
<include name="hyph/hyphenation.dtd"/>
<include name="hyph/readme"/>
<patternset refid="dist.lib"/>
<patternset refid="dist.src.lib.tools"/>
<patternset refid="dist.src.lib.tools"/>
<include name="lib/servlet*"/>
<include name="test/**"/>
<include name="examples/**"/>
@@ -154,8 +151,10 @@ list of possible build targets.
<property name="javac.source" value="1.5"/>
<property name="javac.target" value="1.5"/>
<property name="javac.fork" value="no"/>
<property name="junit.fork" value="on"/>
<property name="junit.fork" value="yes"/>
<property name="junit.haltonfailure" value="off"/>
<property name="junit.printsummary" value="off"/>
<property name="junit.formatter.brief" value="on"/>
<property name="javadoc.packages" value="org.apache.fop.*"/>
<property name="src.dir" value="${basedir}/src"/>
<property name="src.codegen.dir" value="${src.dir}/codegen"/>
@@ -182,17 +181,15 @@ list of possible build targets.
<property name="build.classes.dir" value="${build.dir}/classes"/>
<property name="build.sandbox-classes.dir" value="${build.dir}/sandbox-classes"/>
<property name="build.codegen-classes.dir" value="${build.dir}/codegen-classes"/>
<property name="build.codegen.fonts.dir" value="${build.gensrc.dir}/org/apache/fop/fonts/"/>
<property name="build.javadocs.dir" value="${build.dir}/javadocs"/>
<property name="build.examples.dir" value="${build.dir}/examples"/>
<property name="build.unit.tests.dir" value="${build.dir}/test-classes"/>
<property name="build.tests.dir" value="${build.dir}/tests"/>
<property name="build.viewer.resources.dir" value="${build.classes.dir}/org/apache/fop/render/awt/viewer/resources"/>
<property name="build.viewer.images.dir" value="${build.classes.dir}/org/apache/fop/render/awt/viewer/images"/>
<property name="build.property.examples.mime.type" value="application/pdf"/>
<property name="build.property.tests.mime.type" value="application/pdf"/>
<!--property name="layoutengine.disabled" value="test/layoutengine/disabled-testcases.txt"/-->
<!--property name="fotree.disabled" value="test/fotree/disabled-testcases.txt"/-->
<property name="layoutengine.disabled" value="test/layoutengine/disabled-testcases.xml"/>
<property name="fotree.disabled" value="test/fotree/disabled-testcases.xml"/>
<property name="dist.bin.dir" value="${basedir}/dist-bin"/>
<property name="dist.src.dir" value="${basedir}/dist-src"/>
<property name="nightly.dir" value="${basedir}/nightly"/>
@@ -208,8 +205,24 @@ list of possible build targets.
<property environment="env"/>
<property name="forrest.home" value="${env.FORREST_HOME}"/>
<import file="${env.FORREST_HOME}/main/forrest.build.xml" optional="true"/>
-->
<!-- =================================================================== -->
-->
<presetdef name="javac">
<javac fork="${javac.fork}"
debug="${javac.debug}"
deprecation="${javac.deprecation}"
optimize="${javac.optimize}"
source="${javac.source}" target="${javac.target}"/>
</presetdef>
<presetdef name="junit">
<junit haltonfailure="${junit.haltonfailure}"
fork="${junit.fork}"
printsummary="${junit.printsummary}"
maxmemory="256m"/>
</presetdef>
<!-- =================================================================== -->
<!-- Initialization target -->
<!-- =================================================================== -->
<target name="init" depends="init-avail">
@@ -242,7 +255,7 @@ list of possible build targets.
<echo message="${jce.message}"/>
<available property="jdk14.present" classname="java.lang.CharSequence"/>
<fail message="${Name} requires at least Java 1.4!" unless="jdk14.present"/>
<available property="junit.present" classname="junit.framework.TestCase" classpathref="libs-tools-build-classpath"/>
<available property="junit.present" classname="org.junit.Test" classpathref="libs-tools-build-classpath"/>
<condition property="junit.message" value="JUnit Support PRESENT">
<equals arg1="${junit.present}" arg2="true"/>
</condition>
@@ -277,57 +290,22 @@ list of possible build targets.
<!-- =================================================================== -->
<!-- Generate the source code -->
<!-- =================================================================== -->
<macrodef name="create-font">
<attribute name="name"/>
<sequential>
<xslt in="${src.codegen.fonts.dir}/@{name}.xml" style="${src.codegen.fonts.dir}/font-file.xsl" out="${build.codegen.fonts.dir}/base14/@{name}.java"/>
</sequential>
</macrodef>
<target name="codegen" depends="init" description="Generates the java files from the xml resources">
<echo message="Generating the java files from xml resources"/>
<mkdir dir="${build.gensrc.dir}"/>
<mkdir dir="${build.gensrc.dir}/org/apache/fop/fonts/base14"/>
<xslt in="${src.codegen.fonts.dir}/encodings.xml" style="${src.codegen.fonts.dir}/code-point-mapping.xsl" out="${build.gensrc.dir}/org/apache/fop/fonts/CodePointMapping.java"/>
<!-- Task unrolled because of a bug in Xalan included in some
JDK 1.4 releases
<xslt basedir="src/codegen" includes="Helvetica*.xml,Times*.xml,Courier*.xml"
style="${src.codegen.fonts.dir}/font-file.xsl"
destdir="${build.gensrc.dir}/org/apache/fop/fonts/base14" extension=".java">
<param name="encoding" expression="WinAnsiEncoding"/>
</xslt>
-->
<xslt in="${src.codegen.fonts.dir}/Courier.xml" style="${src.codegen.fonts.dir}/font-file.xsl" out="${build.gensrc.dir}/org/apache/fop/fonts/base14/Courier.java">
<param name="encoding" expression="WinAnsiEncoding"/>
</xslt>
<xslt in="${src.codegen.fonts.dir}/CourierOblique.xml" style="${src.codegen.fonts.dir}/font-file.xsl" out="${build.gensrc.dir}/org/apache/fop/fonts/base14/CourierOblique.java">
<xslt in="${src.codegen.fonts.dir}/encodings.xml" style="${src.codegen.fonts.dir}/code-point-mapping.xsl" out="${build.codegen.fonts.dir}/CodePointMapping.java"/>
<xslt basedir="${src.codegen.fonts.dir}" includes="Helvetica*.xml,Times*.xml,Courier*.xml" style="${src.codegen.fonts.dir}/font-file.xsl" destdir="${build.codegen.fonts.dir}/base14/" extension=".java">
<param name="encoding" expression="WinAnsiEncoding"/>
</xslt>
<xslt in="${src.codegen.fonts.dir}/CourierBold.xml" style="${src.codegen.fonts.dir}/font-file.xsl" out="${build.gensrc.dir}/org/apache/fop/fonts/base14/CourierBold.java">
<param name="encoding" expression="WinAnsiEncoding"/>
</xslt>
<xslt in="${src.codegen.fonts.dir}/CourierBoldOblique.xml" style="${src.codegen.fonts.dir}/font-file.xsl" out="${build.gensrc.dir}/org/apache/fop/fonts/base14/CourierBoldOblique.java">
<param name="encoding" expression="WinAnsiEncoding"/>
</xslt>
<xslt in="${src.codegen.fonts.dir}/Helvetica.xml" style="${src.codegen.fonts.dir}/font-file.xsl" destdir="${build.gensrc.dir}/org/apache/fop/fonts/base14" out="${build.gensrc.dir}/org/apache/fop/fonts/base14/Helvetica.java">
<param name="encoding" expression="WinAnsiEncoding"/>
</xslt>
<xslt in="${src.codegen.fonts.dir}/HelveticaBold.xml" style="${src.codegen.fonts.dir}/font-file.xsl" out="${build.gensrc.dir}/org/apache/fop/fonts/base14/HelveticaBold.java">
<param name="encoding" expression="WinAnsiEncoding"/>
</xslt>
<xslt in="${src.codegen.fonts.dir}/HelveticaOblique.xml" style="${src.codegen.fonts.dir}/font-file.xsl" out="${build.gensrc.dir}/org/apache/fop/fonts/base14/HelveticaOblique.java">
<param name="encoding" expression="WinAnsiEncoding"/>
</xslt>
<xslt in="${src.codegen.fonts.dir}/HelveticaBoldOblique.xml" style="${src.codegen.fonts.dir}/font-file.xsl" out="${build.gensrc.dir}/org/apache/fop/fonts/base14/HelveticaBoldOblique.java">
<param name="encoding" expression="WinAnsiEncoding"/>
</xslt>
<xslt in="${src.codegen.fonts.dir}/TimesRoman.xml" style="${src.codegen.fonts.dir}/font-file.xsl" out="${build.gensrc.dir}/org/apache/fop/fonts/base14/TimesRoman.java">
<param name="encoding" expression="WinAnsiEncoding"/>
</xslt>
<xslt in="${src.codegen.fonts.dir}/TimesItalic.xml" style="${src.codegen.fonts.dir}/font-file.xsl" out="${build.gensrc.dir}/org/apache/fop/fonts/base14/TimesItalic.java">
<param name="encoding" expression="WinAnsiEncoding"/>
</xslt>
<xslt in="${src.codegen.fonts.dir}/TimesBold.xml" style="${src.codegen.fonts.dir}/font-file.xsl" out="${build.gensrc.dir}/org/apache/fop/fonts/base14/TimesBold.java">
<param name="encoding" expression="WinAnsiEncoding"/>
</xslt>
<xslt in="${src.codegen.fonts.dir}/TimesBoldItalic.xml" style="${src.codegen.fonts.dir}/font-file.xsl" out="${build.gensrc.dir}/org/apache/fop/fonts/base14/TimesBoldItalic.java">
<param name="encoding" expression="WinAnsiEncoding"/>
</xslt>
<xslt in="${src.codegen.fonts.dir}/Symbol.xml" style="${src.codegen.fonts.dir}/font-file.xsl" out="${build.gensrc.dir}/org/apache/fop/fonts/base14/Symbol.java"/>
<xslt in="${src.codegen.fonts.dir}/ZapfDingbats.xml" style="${src.codegen.fonts.dir}/font-file.xsl" out="${build.gensrc.dir}/org/apache/fop/fonts/base14/ZapfDingbats.java"/>
<create-font name="Symbol"/>
<create-font name="ZapfDingbats"/>
</target>
<!-- =================================================================== -->
<!-- Compiles the source directory -->
@@ -335,7 +313,7 @@ list of possible build targets.
<target name="compile-java" depends="init, codegen">
<!-- create directories -->
<mkdir dir="${build.classes.dir}"/>
<javac destdir="${build.classes.dir}" fork="${javac.fork}" debug="${javac.debug}" deprecation="${javac.deprecation}" optimize="${javac.optimize}" source="${javac.source}" target="${javac.target}" includeAntRuntime="true">
<javac destdir="${build.classes.dir}" includeAntRuntime="true">
<src path="${build.gensrc.dir}"/>
<src path="${src.java.dir}"/>
<patternset includes="**/*.java"/>
@@ -344,7 +322,7 @@ list of possible build targets.
<classpath refid="libs-build-classpath"/>
</javac>
<mkdir dir="${build.sandbox-classes.dir}"/>
<javac destdir="${build.sandbox-classes.dir}" fork="${javac.fork}" debug="${javac.debug}" deprecation="${javac.deprecation}" optimize="${javac.optimize}" source="${javac.source}" target="${javac.target}" includeAntRuntime="true">
<javac destdir="${build.sandbox-classes.dir}" includeAntRuntime="true">
<src path="${src.sandbox.dir}"/>
<patternset includes="**/*.java"/>
<patternset refid="exclude-jai"/>
@@ -356,7 +334,7 @@ list of possible build targets.
</target>
<target name="resourcegen" depends="compile-java">
<mkdir dir="${build.codegen-classes.dir}"/>
<javac destdir="${build.codegen-classes.dir}" fork="${javac.fork}" debug="${javac.debug}" deprecation="${javac.deprecation}" optimize="${javac.optimize}" source="${javac.source}" target="${javac.target}" includeAntRuntime="true">
<javac destdir="${build.codegen-classes.dir}" includeAntRuntime="true">
<src path="${src.codegen.dir}/java"/>
<patternset includes="**/*.java"/>
<classpath>
@@ -420,21 +398,21 @@ list of possible build targets.
<!-- (src/java/org/apache/fop/hyphenation/classes.xml). -->
<!-- =================================================================== -->
<target name="codegen-hyphenation-classes">
<javac destdir="${build.codegen-classes.dir}" fork="${javac.fork}" debug="${javac.debug}" deprecation="${javac.deprecation}" optimize="${javac.optimize}" source="${javac.source}" target="${javac.target}">
<javac destdir="${build.codegen-classes.dir}">
<src path="${src.codegen.dir}/unicode/java"/>
</javac>
<java classname="org.apache.fop.hyphenation.UnicodeClasses" resultproperty="classes.result" classpath="${build.codegen-classes.dir}">
<java classname="org.apache.fop.hyphenation.UnicodeClasses" resultproperty="classes.result" classpath="${build.codegen-classes.dir}">
<arg value="${src.dir}/java/org/apache/fop/hyphenation/classes.xml"/>
</java>
<condition property="classes.result.message" value="Generation of classes successful">
<not>
<isfailure code="${classes.result}"/>
</not>
</condition>
<condition property="classes.result.message" value="Generation of classes failed">
<isfailure code="${classes.result}"/>
</condition>
<echo message="${classes.result.message}"/>
</java>
<condition property="classes.result.message" value="Generation of classes successful">
<not>
<isfailure code="${classes.result}"/>
</not>
</condition>
<condition property="classes.result.message" value="Generation of classes failed">
<isfailure code="${classes.result}"/>
</condition>
<echo message="${classes.result.message}"/>
</target>
<!-- =================================================================== -->
<!-- compiles hyphenation patterns -->
@@ -445,20 +423,20 @@ list of possible build targets.
<pathelement location="${build.classes.dir}"/>
</path>
<mkdir dir="${build.classes.dir}/hyph"/>
<java classname="org.apache.fop.hyphenation.SerializeHyphPattern" fork="true" resultproperty="hyph.result" classpathref="hyph-classpath">
<arg value="${user.hyph.dir}"/>
<arg value="${build.classes.dir}/hyph"/>
<jvmarg value="-Xss${hyph.stacksize}"/>
</java>
<condition property="hyph.result.message" value="Hyphenation successful">
<not>
<isfailure code="${hyph.result}"/>
</not>
</condition>
<condition property="hyph.result.message" value="Hyphenation failed">
<isfailure code="${hyph.result}"/>
</condition>
<echo message="${hyph.result.message}"/>
<java classname="org.apache.fop.hyphenation.SerializeHyphPattern" fork="true" resultproperty="hyph.result" classpathref="hyph-classpath">
<arg value="${user.hyph.dir}"/>
<arg value="${build.classes.dir}/hyph"/>
<jvmarg value="-Xss${hyph.stacksize}"/>
</java>
<condition property="hyph.result.message" value="Hyphenation successful">
<not>
<isfailure code="${hyph.result}"/>
</not>
</condition>
<condition property="hyph.result.message" value="Hyphenation failed">
<isfailure code="${hyph.result}"/>
</condition>
<echo message="${hyph.result.message}"/>
</target>
<target name="uptodate-jar-hyphenation" depends="compile-hyphenation">
<uptodate property="jar.hyphenation.uptodate" targetfile="${build.dir}/fop-hyph.jar">
@@ -575,8 +553,10 @@ list of possible build targets.
<!-- General classes -->
<patternset>
<include name="org/apache/fop/Version.class"/>
<include name="org/apache/fop/accessibility/StructureTreeElement.class"/>
<include name="org/apache/fop/apps/Fop.class"/>
<include name="org/apache/fop/apps/FOPException.class"/>
<include name="org/apache/fop/complexscripts/fonts/*.class"/>
<include name="org/apache/fop/fo/Constants.class"/>
<include name="org/apache/fop/fo/FOTreeBuilder.class"/>
<include name="org/apache/fop/area/AreaTreeControl*"/>
@@ -688,19 +668,24 @@ list of possible build targets.
<!-- =================================================================== -->
<!-- Testing -->
<!-- =================================================================== -->
<target name="junit-with-xmlunit" depends="init-avail" if="xmlunit.present">
<target name="junit-init" depends="init-avail" if="xmlunit.present">
<condition property="junit.formatter.brief.use">
<istrue value="${junit.formatter.brief}"/>
</condition>
</target>
<target name="junit-with-xmlunit" depends="junit-init" if="xmlunit.present">
<patternset id="test-sources"/>
</target>
<target name="junit-without-xmlunit" depends="init-avail" unless="xmlunit.present">
<target name="junit-without-xmlunit" depends="junit-init" unless="xmlunit.present">
<patternset id="test-sources">
<exclude name="**/intermediate/*"/>
</patternset>
</target>
<target name="junit-compile-java" depends="package, transcoder-pkg, junit-with-xmlunit, junit-without-xmlunit" if="junit.present">
<mkdir dir="${build.dir}/test-classes"/>
<mkdir dir="${build.unit.tests.dir}"/>
<mkdir dir="${build.dir}/test-gensrc"/>
<mkdir dir="${junit.reports.dir}"/>
<javac destdir="${build.dir}/test-classes" fork="${javac.fork}" debug="${javac.debug}" deprecation="${javac.deprecation}" optimize="${javac.optimize}" source="${javac.source}" target="${javac.target}" includeAntRuntime="true">
<javac destdir="${build.unit.tests.dir}" includeAntRuntime="true">
<src path="${test.dir}/java"/>
<patternset refid="test-sources"/>
<classpath>
@@ -710,9 +695,12 @@ list of possible build targets.
</fileset>
</classpath>
</javac>
<copy todir="${build.dir}/test-classes">
<copy todir="${build.unit.tests.dir}">
<fileset dir="${test.dir}/java">
<include name="**/*.xsl"/>
<include name="**/*.txt"/>
<include name="**/*.afm"/>
<include name="**/*.fo"/>
</fileset>
</copy>
</target>
@@ -723,10 +711,14 @@ list of possible build targets.
<include name="**/*.java"/>
</fileset>
</eventResourceGenerator>
<copy todir="${build.dir}/test-classes">
<copy todir="${build.unit.tests.dir}">
<fileset dir="${test.dir}/java">
<include name="META-INF/**"/>
<include name="**/*.xml"/>
<include name="**/*.fo"/>
<include name="**/BidiTestData*.ser"/>
<include name="**/*.afp"/>
<include name="**/*.xsl"/>
</fileset>
<fileset dir="${build.dir}/test-gensrc">
<include name="**/*.xml"/>
@@ -735,85 +727,34 @@ list of possible build targets.
</target>
<target name="junit-compile" depends="junit-compile-java, junit-compile-copy-resources" description="Compiles FOP's JUnit tests" if="junit.present"/>
<target name="junit-transcoder" depends="junit-compile" description="Runs FOP's JUnit transcoder tests" if="junit.present">
<echo message="Running basic functionality tests for fop-transcoder.jar"/>
<junit dir="${basedir}" haltonfailure="${junit.haltonfailure}" fork="${junit.fork}">
<sysproperty key="basedir" value="${basedir}"/>
<sysproperty key="jawa.awt.headless" value="true"/>
<formatter type="brief" usefile="false"/>
<formatter type="plain" usefile="true"/>
<formatter type="xml" usefile="true"/>
<classpath>
<pathelement location="${build.dir}/test-classes"/>
<path refid="libs-build-classpath"/>
<fileset dir="${build.dir}">
<include name="fop-transcoder.jar"/>
</fileset>
</classpath>
<test name="org.apache.fop.BasicTranscoderTestSuite" todir="${junit.reports.dir}" outfile="TEST-transcoder"/>
</junit>
<path id="transcoder-classpath">
<pathelement location="${build.unit.tests.dir}"/>
<path refid="libs-build-classpath"/>
<fileset dir="${build.dir}">
<include name="fop-transcoder.jar"/>
</fileset>
</path>
<junit-run classpath="transcoder-classpath" title="basic functionality for fop-transcoder.jar" testsuite="org.apache.fop.BasicTranscoderTestSuite" outfile="TEST-transcoder"/>
<echo message="Running basic functionality tests for fop-transcoder-allinone.jar"/>
<!-- These are the same tests as in the block above but testing the "allinone" JAR
<!-- These are the same tests as in the block above but testing the "allinone" JAR
instead. Please don't add any additional paths other than the test classes, the
allinone JAR and the any Batik JARs to the classpath. If this fails, but the
previous test block succeeded it indicates that the packaging of the allinone
JAR needs to be updated.
-->
<junit dir="${basedir}" haltonfailure="${junit.haltonfailure}" fork="${junit.fork}" errorproperty="fop.junit.error" failureproperty="fop.junit.failure">
<sysproperty key="basedir" value="${basedir}"/>
<sysproperty key="jawa.awt.headless" value="true"/>
<formatter type="brief" usefile="false"/>
<formatter type="plain" usefile="true"/>
<formatter type="xml" usefile="true"/>
<classpath>
<pathelement location="${build.dir}/test-classes"/>
<path refid="libs-build-classpath"/>
<fileset dir="build">
<include name="fop-transcoder-allinone.jar"/>
</fileset>
<fileset dir="${lib.dir}">
<include name="xml-apis*.jar"/>
<include name="xerces*.jar"/>
<include name="batik*.jar"/>
</fileset>
</classpath>
<test name="org.apache.fop.BasicTranscoderTestSuite" todir="${junit.reports.dir}" outfile="TEST-transcoder-allinone"/>
</junit>
</target>
<target name="junit-userconfig" depends="junit-compile" if="junit.present" description="Runs FOP's user config JUnit tests">
<echo message="Running user config tests"/>
<junit dir="${basedir}" haltonfailure="${junit.haltonfailure}" fork="${junit.fork}" errorproperty="fop.junit.error" failureproperty="fop.junit.failure">
<jvmarg value="-Xmx1024m"/>
<sysproperty key="basedir" value="${basedir}"/>
<sysproperty key="jawa.awt.headless" value="true"/>
<sysproperty key="fop.layoutengine.disabled" value="${layoutengine.disabled}"/>
<sysproperty key="fop.layoutengine.testset" value="standard"/>
<formatter type="brief" usefile="false"/>
<formatter type="plain" usefile="true"/>
<formatter type="xml" usefile="true"/>
<classpath>
<pathelement location="${build.dir}/test-classes"/>
<path refid="libs-run-classpath"/>
</classpath>
<test name="org.apache.fop.config.UserConfigTestSuite" todir="${junit.reports.dir}" outfile="TEST-userconfig"/>
</junit>
</target>
<target name="junit-basic" depends="junit-compile" description="Runs FOP's JUnit basic tests" if="junit.present">
<echo message="Running basic functionality tests for fop.jar"/>
<junit dir="${basedir}" haltonfailure="${junit.haltonfailure}" fork="${junit.fork}" errorproperty="fop.junit.error" failureproperty="fop.junit.failure">
<sysproperty key="basedir" value="${basedir}"/>
<sysproperty key="jawa.awt.headless" value="true"/>
<formatter type="brief" usefile="false"/>
<formatter type="plain" usefile="true"/>
<formatter type="xml" usefile="true"/>
<classpath>
<pathelement location="${build.dir}/test-classes"/>
<path refid="libs-build-classpath"/>
<fileset dir="build">
<include name="fop.jar"/>
</fileset>
</classpath>
<test name="org.apache.fop.StandardTestSuite" todir="${junit.reports.dir}"/>
</junit>
<path id="transcoder-all-classpath">
<pathelement location="${build.unit.tests.dir}"/>
<path refid="libs-build-classpath"/>
<fileset dir="build">
<include name="fop-transcoder-allinone.jar"/>
</fileset>
<fileset dir="${lib.dir}">
<include name="xml-apis*.jar"/>
<include name="xerces*.jar"/>
<include name="batik*.jar"/>
</fileset>
</path>
<junit-run classpath="transcoder-all-classpath" title="basic functionality for fop-transcoder-allinone.jar" testsuite="org.apache.fop.BasicTranscoderTestSuite" outfile="TEST-transcoder-allinone"/>
</target>
<target name="hyphenation-present" depends="junit-compile" if="junit.present">
<condition property="hyphenation.present">
@@ -833,132 +774,117 @@ list of possible build targets.
</condition>
<echo message="${hyphenation.message}"/>
</target>
<target name="junit-layout-standard" depends="junit-compile, junit-fotree" if="junit.present" description="Runs FOP's standard JUnit layout tests">
<echo message="Running standard layout engine tests"/>
<junit dir="${basedir}" haltonfailure="${junit.haltonfailure}" fork="${junit.fork}" errorproperty="fop.junit.error" failureproperty="fop.junit.failure">
<sysproperty key="basedir" value="${basedir}"/>
<sysproperty key="jawa.awt.headless" value="true"/>
<sysproperty key="fop.layoutengine.disabled" value="${layoutengine.disabled}"/>
<sysproperty key="fop.layoutengine.testset" value="standard"/>
<formatter type="brief" usefile="false"/>
<formatter type="plain" usefile="true"/>
<formatter type="xml" usefile="true"/>
<classpath>
<pathelement location="${build.dir}/test-classes"/>
<path refid="libs-run-classpath"/>
</classpath>
<test name="org.apache.fop.layoutengine.LayoutEngineTestSuite" todir="${junit.reports.dir}" outfile="TEST-layoutengine-standard"/>
</junit>
</target>
<target name="junit-layout-hyphenation" depends="hyphenation-present, junit-compile" if="hyphenation.present" description="Runs FOP's JUnit hyphenation layout tests">
<echo message="Running hyphenation layout engine tests"/>
<junit dir="${basedir}" haltonfailure="${junit.haltonfailure}" fork="${junit.fork}" errorproperty="fop.junit.error" failureproperty="fop.junit.failure">
<sysproperty key="basedir" value="${basedir}"/>
<sysproperty key="jawa.awt.headless" value="true"/>
<sysproperty key="fop.layoutengine.disabled" value="${layoutengine.disabled}"/>
<sysproperty key="fop.layoutengine.testset" value="hyphenation"/>
<formatter type="brief" usefile="false"/>
<formatter type="plain" usefile="true"/>
<formatter type="xml" usefile="true"/>
<classpath>
<pathelement location="${build.dir}/test-classes"/>
<path refid="libs-run-classpath"/>
</classpath>
<test name="org.apache.fop.layoutengine.LayoutEngineTestSuite" todir="${junit.reports.dir}" outfile="TEST-layoutengine-hyphenation"/>
</junit>
</target>
<target name="junit-layout" depends="junit-layout-standard, junit-layout-hyphenation" description="Runs all FOP's JUnit layout tests"/>
<target name="junit-fotree" depends="junit-compile" description="Runs FOP's FO tree JUnit tests" if="junit.present">
<echo message="Running fo tree tests"/>
<junit dir="${basedir}" haltonfailure="${junit.haltonfailure}" fork="${junit.fork}" errorproperty="fop.junit.error" failureproperty="fop.junit.failure">
<sysproperty key="basedir" value="${basedir}"/>
<sysproperty key="jawa.awt.headless" value="true"/>
<sysproperty key="fop.layoutengine.disabled" value="${fotree.disabled}"/>
<formatter type="brief" usefile="false"/>
<formatter type="plain" usefile="true"/>
<formatter type="xml" usefile="true"/>
<classpath>
<pathelement location="${build.dir}/test-classes"/>
<path refid="libs-build-classpath"/>
<fileset dir="build">
<include name="fop.jar"/>
</fileset>
</classpath>
<test name="org.apache.fop.fotreetest.FOTreeTestSuite" todir="${junit.reports.dir}" outfile="TEST-FO-tree"/>
</junit>
</target>
<path id="standard-junit-classpath">
<pathelement location="${build.unit.tests.dir}"/>
<path refid="libs-tools-build-classpath"/>
<fileset dir="${build.dir}">
<include name="fop.jar"/>
<include name="fop-hyph.jar"/>
</fileset>
</path>
<macrodef name="junit-run">
<attribute name="title"/>
<attribute name="basedir" default=""/>
<attribute name="testsuite"/>
<attribute name="outfile"/>
<attribute name="classpath" default="standard-junit-classpath"/>
<sequential>
<echo message="Running @{title} tests..."/>
<junit dir="${basedir}" haltonfailure="${junit.haltonfailure}" fork="${junit.fork}" errorproperty="fop.junit.error" failureproperty="fop.junit.failure">
<junit dir="${basedir}" errorproperty="fop.junit.error" failureproperty="fop.junit.failure" printsummary="${junit.printsummary}">
<sysproperty key="basedir" value="${basedir}/@{basedir}"/>
<sysproperty key="jawa.awt.headless" value="true"/>
<sysproperty key="fop.layoutengine.disabled" value="${layoutengine.disabled}"/>
<sysproperty key="fop.layoutengine.testset" value="standard"/>
<formatter type="brief" usefile="false"/>
<formatter type="brief" usefile="false" if="junit.formatter.brief.use"/>
<formatter type="plain" usefile="true"/>
<formatter type="xml" usefile="true"/>
<classpath>
<pathelement location="${build.dir}/test-classes"/>
<path refid="libs-tools-build-classpath"/>
<pathelement location="${build.dir}/fop.jar"/>
<path refid="@{classpath}"/>
</classpath>
<assertions>
<enable/>
</assertions>
<test name="@{testsuite}" todir="${junit.reports.dir}" outfile="@{outfile}"/>
</junit>
</sequential>
</macrodef>
<target name="junit-area-tree-xml-format" depends="junit-compile"
description="Runs FOP's area tree XML format JUnit tests" if="xmlunit.present">
<junit-run title="area tree XML format"
testsuite="org.apache.fop.intermediate.AreaTreeXMLFormatTestSuite"
outfile="TEST-area-tree-xml-format"/>
<target name="junit-all" depends="junit-compile, junit-transcoder, junit-layout-hyphenation"
description="Runs FOP's JUnit basic tests" if="junit.present">
<junit dir="${basedir}" haltonfailure="yes" fork="${junit.fork}" forkmode="once"
errorproperty="fop.junit.error" failureproperty="fop.junit.failure">
<sysproperty key="jawa.awt.headless" value="true"/>
<formatter type="brief" usefile="false" if="junit.formatter.brief.use"/>
<formatter type="plain" usefile="true"/>
<formatter type="xml" usefile="true"/>
<classpath>
<path refid="standard-junit-classpath"/>
</classpath>
<assertions>
<enable/>
</assertions>
<batchtest todir="${junit.reports.dir}">
<fileset dir="${build.unit.tests.dir}" includes="**/*TestCase.class"/>
</batchtest>
</junit>
</target>
<target name="junit-basic" depends="junit-compile" description="Runs FOP's JUnit basic tests" if="junit.present">
<junit-run title="Standard test suite" testsuite="org.apache.fop.StandardTestSuite" outfile="TEST-standard-tests-suite"/>
</target>
<target name="junit-userconfig" depends="junit-compile" if="junit.present" description="Runs FOP's user config JUnit tests">
<junit-run title="user config" testsuite="org.apache.fop.config.UserConfigTestSuite" outfile="TEST-userconfig"/>
</target>
<target name="junit-intermediate-format" depends="junit-compile"
<target name="junit-layout-standard" depends="junit-compile, junit-fotree" if="junit.present" description="Runs FOP's standard JUnit layout tests">
<junit-run title="standard layout engine" testsuite="org.apache.fop.layoutengine.LayoutEngineTestSuite" outfile="TEST-layoutengine-standard"/>
</target>
<target name="junit-layout-hyphenation" depends="hyphenation-present, junit-compile" if="hyphenation.present" description="Runs FOP's JUnit hyphenation layout tests">
<junit-run title="hyphenation layout engine" testsuite="org.apache.fop.layoutengine.HyphenationLayoutTestCase"
outfile="TEST-layoutengine-hyphenation"/>
</target>
<target name="junit-layout" depends="junit-layout-standard, junit-layout-hyphenation" description="Runs all FOP's JUnit layout tests"/>
<target name="junit-fotree" depends="junit-compile" description="Runs FOP's FO tree JUnit tests" if="junit.present">
<junit-run title="fo tree" testsuite="org.apache.fop.fotreetest.FOTreeTestSuite" outfile="TEST-FO-tree"/>
</target>
<target name="junit-area-tree-xml-format" depends="junit-compile" description="Runs FOP's area tree XML format JUnit tests" if="xmlunit.present">
<junit-run title="area tree XML format" testsuite="org.apache.fop.intermediate.AreaTreeXMLFormatTestSuite" outfile="TEST-area-tree-xml-format"/>
</target>
<target name="junit-intermediate-layout" depends="junit-compile" if="xmlunit.present">
<junit-run title="intermediate format from layout tests"
testsuite="org.apache.fop.intermediate.LayoutIFTestSuite"
outfile="TEST-intermediate-format-from-layout"/>
</target>

<target name="junit-intermediate-format" depends="junit-compile,junit-intermediate-layout"
description="Runs FOP's intermediate format JUnit tests" if="xmlunit.present">
<junit-run title="intermediate format"
testsuite="org.apache.fop.intermediate.IntermediateFormatTestSuite"
outfile="TEST-intermediate-format"/>
</target>
<target name="junit-events" depends="junit-compile"
description="Runs FOP's event JUnit tests" if="junit.present">
<junit-run title="event" basedir="test/events"
testsuite="org.apache.fop.events.EventProcessingTestCase"
outfile="TEST-events"/>
<target name="junit-events" depends="junit-compile" description="Runs FOP's event JUnit tests" if="junit.present">
<junit-run title="event" testsuite="org.apache.fop.events.EventProcessingTestCase" outfile="TEST-events"/>
</target>
<target name="junit-text-linebreak" depends="junit-compile" description="Runs FOP's JUnit unicode linebreak tests" if="junit.present">
<echo message="Running tests for Unicode UAX#14 support"/>
<junit dir="${basedir}" haltonfailure="${junit.haltonfailure}" fork="${junit.fork}" errorproperty="fop.junit.error" failureproperty="fop.junit.failure">
<sysproperty key="basedir" value="${basedir}"/>
<sysproperty key="jawa.awt.headless" value="true"/>
<formatter type="brief" usefile="false"/>
<formatter type="plain" usefile="true"/>
<formatter type="xml" usefile="true"/>
<classpath>
<pathelement location="${build.dir}/test-classes"/>
<path refid="libs-build-classpath"/>
<fileset dir="build">
<include name="fop.jar"/>
</fileset>
</classpath>
<test name="org.apache.fop.text.linebreak.LineBreakStatusTest" todir="${junit.reports.dir}"/>
</junit>
<junit-run title="Unicode UAX#14 support" testsuite="org.apache.fop.text.linebreak.LineBreakStatusTestCase" outfile="TEST-linebreak"/>
</target>
<target name="junit-fonts" depends="junit-compile">
<echo message="Running tests for the fonts package"/>
<junit-run title="fonts" testsuite="org.apache.fop.fonts.FOPFontsTestSuite" outfile="TEST-fonts"/>
</target>
<target name="junit-render-ps" depends="junit-compile">
<echo message="Running tests for the render ps package"/>
<junit-run title="render-ps" testsuite="org.apache.fop.render.ps.RenderPSTestSuite" outfile="TEST-render-ps"/>
</target>
<target name="junit-render-pdf" depends="junit-compile">
<junit-run title="render-pdf" testsuite="org.apache.fop.render.pdf.RenderPDFTestSuite" outfile="TEST-render-pdf"/>
</target>
<target name="junit-fonts" depends="junit-compile">
<echo message="Running tests for the fonts package"/>
<junit-run title="fonts" testsuite="org.apache.fop.fonts.FOPFontsTestSuite" outfile="TEST-fonts"/>
</target>
<target name="junit-render-ps" depends="junit-compile">
<echo message="Running tests for the render ps package"/>
<junit-run title="render-ps" testsuite="org.apache.fop.render.ps.RenderPSTestSuite" outfile="TEST-render-ps"/>
</target>
<target name="junit-reduced" depends="junit-userconfig, junit-basic, junit-transcoder, junit-text-linebreak, junit-fotree, junit-fonts, junit-render-ps"/>
<target name="junit-full" depends="junit-reduced, junit-layout, junit-area-tree-xml-format, junit-intermediate-format"/>
<target name="junit" depends="junit-full" description="Runs all of FOP's JUnit tests" if="junit.present">
<fail><condition><or><isset property="fop.junit.error"/><isset property="fop.junit.failure"/><not><isset property="hyphenation.present"/></not></or></condition>
<target name="junit-complexscripts" depends="junit-compile">
<junit-run title="complexscripts" testsuite="org.apache.fop.complexscripts.ComplexScriptsTestSuite" outfile="TEST-complexscripts"/>
</target>
<target name="junit-reduced" depends="junit-userconfig, junit-basic, junit-transcoder,
junit-text-linebreak, junit-fotree, junit-fonts, junit-render-pdf, junit-render-ps,
junit-complexscripts"/>
<target name="junit" depends="junit-all" description="Runs all of FOP's JUnit tests"
if="junit.present">
<fail><condition><or><isset property="fop.junit.error"/><isset
property="fop.junit.failure"/><not><isset
property="hyphenation.present"/></not></or></condition>
NOTE:
**************************************************************************
* One or more of the Junit tests had Failures or Errors or were skipped! *
@@ -1105,28 +1031,34 @@ NOTE:
<!-- =================================================================== -->
<!-- Checkstyle -->
<!-- =================================================================== -->
<property name="checkstyle.location" value="${lib-tools}/checkstyle-all-5.1.jar" />
<property name="checkstyle.noframes.xslt" value="${basedir}/checkstyle-noframes.xsl" />
<property name="checkstyle.config" value="${basedir}/checkstyle-5.1.xml" />
<path id="checkstyle-classpath">
<path refid="libs-build-classpath"/>
<pathelement location="${checkstyle.location}"/>
</path>
<condition property="checkstyle.avail">
<and>
<and>
<available classname="com.puppycrawl.tools.checkstyle.CheckStyleTask">
<classpath>
<path refid="libs-tools-build-classpath"/>
</classpath>
<classpath refid="checkstyle-classpath"/>
</available>
<available file="${checkstyle.noframes.xslt}"/>
<available file="${checkstyle.config}"/>
</and>
</condition>
<target name="checkstyle-avail" unless="checkstyle.avail">
<echo message="Checkstyle support NOT present. Please download it from http://checkstyle.sf.net/ and"/>
<echo message="..copy or link checkstyle-all-5.1.jar to ${lib-tools}"/>
<echo message="..copy or link checkstyle-noframes.xsl to ${checkstyle.noframes.xslt}"/>
<echo message="... please provide ${checkstyle.location}"/>
<echo message="... please provide ${checkstyle.noframes.xslt}"/>
<echo message="... please provide ${checkstyle.config}"/>
</target>
<target name="checkstyle" depends="package, checkstyle-avail" if="checkstyle.avail" description="Runs Checkstyle for a code quality report">
<taskdef name="checkstyle" classname="com.puppycrawl.tools.checkstyle.CheckStyleTask" classpathref="libs-tools-build-classpath"/>
<taskdef name="checkstyle" classname="com.puppycrawl.tools.checkstyle.CheckStyleTask" classpathref="checkstyle-classpath"/>
<mkdir dir="${build.dir}"/>
<checkstyle config="checkstyle-5.1.xml" failonviolation="false">
<checkstyle config="${checkstyle.config}" failonviolation="false">
<classpath>
<path refid="libs-build-classpath"/>
<path refid="checkstyle-classpath"/>
<pathelement location="${build.classes.dir}"/>
<pathelement location="${build.sandbox-classes.dir}"/>
<pathelement location="${build.codegen-classes.dir}"/>
@@ -1342,11 +1274,11 @@ NOTE:
<!-- Nightly builds -->
<!-- =================================================================== -->
<target name="junit-nightly-build" depends="junit-userconfig,junit-text-linebreak,junit-fotree">
<fail>
<condition>
<or>
<isset property="fop.junit.error"/>
<isset property="fop.junit.failure"/>
<fail>
<condition>
<or>
<isset property="fop.junit.error"/>
<isset property="fop.junit.failure"/>
</or>
</condition>
NOTE:
@@ -1420,25 +1352,87 @@ NOTE:
</target>

<!-- =================================================================== -->
<!-- Helper task to generate source files that have already been checked -->
<!-- Helper tasks to generate source files that have already been checked -->
<!-- into the repository. For these files, the version in the -->
<!-- repository is the official one and may have updates that will *not* -->
<!-- be generated by below. This target should never be part of the -->
<!-- normal build process. -->
<!-- =================================================================== -->
<target name="codegen-unicode" >
<target name="codegen-unicode" depends="compile-java">
<mkdir dir="${build.codegen-classes.dir}"/>
<javac destdir="${build.codegen-classes.dir}" fork="${javac.fork}" debug="${javac.debug}" deprecation="${javac.deprecation}" optimize="${javac.optimize}" source="${javac.source}" target="${javac.target}">
<javac destdir="${build.codegen-classes.dir}">
<src path="${src.codegen.dir}/unicode/java"/>
<classpath>
<path refid="libs-build-classpath"/>
<pathelement location="${build.classes.dir}"/>
<pathelement location="${build.codegen-classes.dir}"/>
</classpath>
</javac>
<java classname="org.apache.fop.text.linebreak.GenerateLineBreakUtils" classpath="${build.codegen-classes.dir}">
<arg line="-o ${src.dir}/java/org/apache/fop/text/linebreak/LineBreakUtils.java"/>
</java>
</target>
<target name="codegen-unicode-bidi" depends="compile-java">
<mkdir dir="${build.codegen-classes.dir}"/>
<javac destdir="${build.codegen-classes.dir}" includeAntRuntime="true">
<src path="${src.codegen.dir}/unicode/java"/>
<classpath>
<path refid="libs-build-classpath"/>
<pathelement location="${build.classes.dir}"/>
<pathelement location="${build.codegen-classes.dir}"/>
</classpath>
</javac>
<java classname="org.apache.fop.complexscripts.bidi.GenerateBidiClass" classpath="${build.codegen-classes.dir}">
<arg line="-b http://www.unicode.org/Public/6.0.0/ucd/extracted/DerivedBidiClass.txt"/>
<arg line="-o ${src.dir}/java/org/apache/fop/complexscripts/bidi/BidiClass.java"/>
</java>
<delete>
<fileset dir="${test.dir}/java/org/apache/fop/complexscripts/bidi">
<include name="**/BidiTestData*.ser"/>
</fileset>
</delete>
<java classname="org.apache.fop.text.bidi.GenerateBidiTestData" classpath="${build.codegen-classes.dir}" fork="yes">
<arg line="-v"/>
<arg line="-i"/>
<arg line="-b http://www.unicode.org/Public/6.0.0/ucd/BidiTest.txt"/>
<arg line="-d http://www.unicode.org/Public/6.0.0/ucd/UnicodeData.txt"/>
<arg line="-o ${test.dir}/java/org/apache/fop/complexscripts/bidi/BidiTestData.java"/>
</java>
</target>
<target name="resgen-complexscripts" depends="compile-java">
<mkdir dir="${build.unit.tests.dir}"/>
<javac destdir="${build.unit.tests.dir}" includeAntRuntime="true" memoryMaximumSize="1024m">
<src path="${test.dir}/java/org/apache/fop/complexscripts/"/>
<classpath>
<path refid="libs-build-classpath"/>
<pathelement location="${build.classes.dir}"/>
</classpath>
</javac>
<java classname="org.apache.fop.complexscripts.scripts.arabic.GenerateArabicTestData">
<classpath>
<path refid="libs-build-classpath"/>
<pathelement location="${build.classes.dir}"/>
<pathelement location="${build.unit.tests.dir}"/>
</classpath>
<arg line="-c"/>
</java>
</target>
<!-- =================================================================== -->
<!-- Special target for Gump -->
<!-- =================================================================== -->
<target name="gump" depends="junit-reduced"/>
<target name="gump" depends="package,transcoder-pkg"/>
<target name="gump-test" depends="junit-all">
<fail>
<condition>
<or>
<isset property="fop.junit.error"/>
<isset property="fop.junit.failure"/>
</or>
</condition>
At least one unit test failed!
</fail>
<echo>All tests passed!</echo>
</target>
<!-- =================================================================== -->
<!-- Clean targets -->
<!-- =================================================================== -->
@@ -1451,7 +1445,7 @@ NOTE:
<delete>
<fileset dir="${basedir}" includes="${name}-*.tar.gz"/>
<fileset dir="${basedir}" includes="${name}-*.zip"/>
<fileset dir="${basedir}" includes="${name}-bundle.jar"/>
<fileset dir="${basedir}" includes="${name}-bundle.jar"/>
</delete>
</target>
<target name="validate-xdocs" description="Validate the xdocs. Point schemas.dir to Forrest's 'schemas' directory.">
@@ -1487,4 +1481,10 @@ NOTE:
</xmlcatalog>
</xmlvalidate>
</target>

<!-- =================================================================== -->
<!-- Local targets -->
<!-- =================================================================== -->
<import file="build-local.targets.xml" optional="true"/>

</project>

+ 274
- 0
checkstyle-5.5.xml View File

@@ -0,0 +1,274 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE module PUBLIC "-//Puppy Crawl//DTD Check Configuration 1.1//EN" "http://www.puppycrawl.com/dtds/configuration_1_1.dtd">
<module name="Checker">
<property name="severity" value="warning"/>

<!-- ===================================================================================================== -->
<module name="FileTabCharacter">
<property name="severity" value="error"/>
<property name="eachLine" value="true"/>
</module>
<!-- ===================================================================================================== -->

<!-- ===================================================================================================== -->
<module name="NewlineAtEndOfFile"/>
<!-- ===================================================================================================== -->

<!-- ===================================================================================================== -->
<module name="RegexpHeader">
<property name="severity" value="error"/>
<property name="header" value="\/\*\n \* Licensed to the Apache Software Foundation \(ASF\) under one or more\n \* contributor license agreements. See the NOTICE file distributed with\n \* this work for additional information regarding copyright ownership.\n \* The ASF licenses this file to You under the Apache License, Version 2.0\n \* \(the &quot;License&quot;\); you may not use this file except in compliance with\n \* the License. You may obtain a copy of the License at\n \*\n \* http://www.apache.org/licenses/LICENSE-2.0\n \*\n \* Unless required by applicable law or agreed to in writing, software\n \* distributed under the License is distributed on an &quot;AS IS&quot; BASIS,\n \* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n \* See the License for the specific language governing permissions and\n \* limitations under the License.\n \*\/\n\n"/>
</module>
<!-- ===================================================================================================== -->

<!-- ===================================================================================================== -->
<module name="RegexpSingleline">
<property name="format" value="\s+$"/>
<property name="message" value="Line has trailing spaces."/>
</module>
<!-- ===================================================================================================== -->

<!-- ===================================================================================================== -->
<module name="RegexpSingleline">
<property name="format" value="@author"/>
<property name="message" value="Use of @author javadoc keyword is prohibited."/>
</module>
<!-- ===================================================================================================== -->

<!-- ===================================================================================================== -->
<module name="SuppressionCommentFilter">
<property name="offCommentFormat" value="CSOFF\: ([\w\|]+)"/>
<property name="onCommentFormat" value="CSON\: ([\w\|]+)"/>
<property name="checkFormat" value="$1"/>
</module>
<!-- ===================================================================================================== -->

<!-- ===================================================================================================== -->
<module name="SuppressWithNearbyCommentFilter">
<property name="commentFormat" value="CSOK\: ([\w\|]+)"/>
<property name="checkFormat" value="$1"/>
<property name="influenceFormat" value="0"/>
</module>
<!-- ===================================================================================================== -->

<!-- ===================================================================================================== -->
<module name="TreeWalker">

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="AnnotationUseStyle"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="ArrayTypeStyle"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="AvoidNestedBlocks"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="AvoidStarImport">
<property name="severity" value="error"/>
</module>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="ConstantName">
<property name="format" value="^([A-Z](_?[A-Z0-9]+)*)|(log)$"/>
</module>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="DefaultComesLast"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="DoubleCheckedLocking"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="EmptyBlock">
<property name="tokens" value="LITERAL_CATCH,LITERAL_DO,LITERAL_ELSE,LITERAL_FINALLY,LITERAL_FOR,LITERAL_IF,LITERAL_TRY,LITERAL_WHILE,STATIC_INIT"/>
<property name="option" value="text"/> <!-- changing block policy to stmt produces 110 new errors -->
</module>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="EmptyStatement"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="EqualsHashCode"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<!-- <module name="ExplicitInitialization"/> produces 795 new errors -->
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="FileContentsHolder"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="FinalClass"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="GenericWhitespace"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="HideUtilityClassConstructor"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="IllegalImport"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="ImportOrder">
<property name="groups" value="java,javax,org,org.apache,org.apache.batik,org.apache.xmlgraphics,org.apache.fop,com"/>
<property name="separated" value="true"/>
</module>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="InnerAssignment">
<property name="tokens" value="ASSIGN,BAND_ASSIGN,BOR_ASSIGN,BSR_ASSIGN,BXOR_ASSIGN,DIV_ASSIGN,MINUS_ASSIGN,MOD_ASSIGN,PLUS_ASSIGN,SL_ASSIGN,SR_ASSIGN,STAR_ASSIGN"/>
</module>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="LeftCurly"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="LocalFinalVariableName"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="LocalVariableName"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="MemberName"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="MethodName"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<!-- <module name="MethodParamPad"/> produces 4316 new errors -->
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="MissingSwitchDefault"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="ModifierOrder"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="MultipleVariableDeclarations"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="NeedBraces"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="NoWhitespaceAfter">
<property name="allowLineBreaks" value="false"/>
<property name="tokens" value="BNOT,DEC,DOT,INC,LNOT,UNARY_MINUS,UNARY_PLUS"/>
</module>
<module name="NoWhitespaceAfter">
<property name="allowLineBreaks" value="true"/>
<property name="tokens" value="ARRAY_INIT"/>
</module>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="NoWhitespaceBefore"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="OneStatementPerLine"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="OperatorWrap"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="PackageName"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="ParameterName"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<!-- <module name="ParenPad"/> produces 16666 new errors -->
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="RedundantImport"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="RedundantModifier"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="RightCurly"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="SimplifyBooleanExpression"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="SimplifyBooleanReturn"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="StaticVariableName"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="TypeName"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="TypecastParenPad">
<property name="tokens" value="RPAREN,TYPECAST"/>
</module>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="UnusedImports"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="UpperEll"/>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="WhitespaceAfter">
<property name="tokens" value="COMMA,SEMI"/> <!-- adding TYPECAST produces 2203 new errors -->
</module>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->
<module name="WhitespaceAround">
<property name="tokens" value="ASSIGN,BAND,BAND_ASSIGN,BOR,BOR_ASSIGN,BSR,BSR_ASSIGN,BXOR,BXOR_ASSIGN,COLON,DIV,DIV_ASSIGN,EQUAL,GE,GT,LAND,LCURLY,LE,LITERAL_ASSERT,LITERAL_CATCH,LITERAL_DO,LITERAL_ELSE,LITERAL_FINALLY,LITERAL_FOR,LITERAL_IF,LITERAL_RETURN,LITERAL_SYNCHRONIZED,LITERAL_TRY,LITERAL_WHILE,LOR,LT,MINUS,MINUS_ASSIGN,MOD,MOD_ASSIGN,NOT_EQUAL,PLUS,PLUS_ASSIGN,QUESTION,RCURLY,SL,SLIST,SL_ASSIGN,SR,SR_ASSIGN,STAR,STAR_ASSIGN,TYPE_EXTENSION_AND,WILDCARD_TYPE"/>
<property name="ignoreEnhancedForColon" value="false"/>
</module>
<!-- ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... -->

</module>
<!-- ===================================================================================================== -->

</module>

+ 2
- 1
checkstyle-suppressions.xml View File

@@ -2,6 +2,7 @@
<!DOCTYPE suppressions PUBLIC "-//Puppy Crawl//DTD Suppressions 1.1//EN" "http://www.puppycrawl.com/dtds/suppressions_1_1.dtd">
<suppressions>
<suppress files="org/apache/fop/fo/FOPropertyMapping.java" checks="FileLengthCheck"/>
<suppress files="org/apache/fop/fonts/truetype/TTFFile.java" checks="FileLengthCheck"/>
<suppress files="org/apache/fop/complexscripts/fonts/GlyphPositioningTable.java" checks="FileLengthCheck"/>
<suppress files="org/apache/fop/complexscripts/fonts/OTFAdvancedTypographicTableReader.java" checks="FileLengthCheck"/>
<suppress files="org/apache/fop/Version.java" lines="40-50" checks="LineLengthCheck"/>
</suppressions>

+ 1
- 1
examples/embedding/build.xml View File

@@ -69,7 +69,7 @@
<!-- =================================================================== -->
<target name="compile" depends="prepare" description="Compiles the examples">
<echo message="Compiling the sources"/>
<javac srcdir="${src.dir}" destdir="${build.dest}" debug="${debug}" deprecation="${deprecation}" optimize="${optimize}">
<javac srcdir="${src.dir}" destdir="${build.dest}" debug="${debug}" deprecation="${deprecation}" optimize="${optimize}" includeAntRuntime="true">
<classpath refid="project.class.path"/>
</javac>
</target>

+ 1
- 2
examples/embedding/java/embedding/ExampleFO2JPSPrint.java View File

@@ -85,8 +85,7 @@ public class ExampleFO2JPSPrint {
//Set up a custom user agent so we can supply our own renderer instance
FOUserAgent userAgent = fopFactory.newFOUserAgent();

PageableRenderer renderer = new PageableRenderer();
renderer.setUserAgent(userAgent);
PageableRenderer renderer = new PageableRenderer(userAgent);
userAgent.setRendererOverride(renderer);

// Construct FOP with desired output format

+ 182
- 0
examples/embedding/java/embedding/ExampleJava2D2PDF.java View File

@@ -0,0 +1,182 @@
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

/* $Id$ */

package embedding;

import java.awt.Color;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.Graphics2D;
import java.io.File;
import java.io.IOException;
import java.io.OutputStream;
import java.io.StringReader;

import javax.swing.JEditorPane;

import org.apache.avalon.framework.configuration.Configuration;
import org.apache.avalon.framework.configuration.ConfigurationException;
import org.apache.avalon.framework.configuration.DefaultConfiguration;
import org.apache.commons.io.IOUtils;

import org.apache.xmlgraphics.util.UnitConv;

import org.apache.fop.svg.PDFDocumentGraphics2D;
import org.apache.fop.svg.PDFDocumentGraphics2DConfigurator;

/**
* This example class demonstrates the use of {@link PDFDocumentGraphics2D} that can be
* used to create a PDF file from Java2D graphics (using the {@link Graphics2D} API).
*/
public class ExampleJava2D2PDF {

private Configuration createAutoFontsConfiguration() {
//Create a default configuration using auto-detection of fonts.
//This can be a bit slow but covers most use cases.
DefaultConfiguration c = new DefaultConfiguration("cfg");
DefaultConfiguration fonts = new DefaultConfiguration("fonts");
c.addChild(fonts);
DefaultConfiguration autodetect = new DefaultConfiguration("auto-detect");
fonts.addChild(autodetect);
return c;

/* You can also load the configuration from a file:
DefaultConfigurationBuilder cfgBuilder = new DefaultConfigurationBuilder();
return cfgBuilder.buildFromFile(configFile);
*/
}

private void configure(PDFDocumentGraphics2D g2d, Configuration cfg)
throws ConfigurationException {

PDFDocumentGraphics2DConfigurator configurator = new PDFDocumentGraphics2DConfigurator();
boolean useComplexScriptFeatures = false;
configurator.configure(g2d, cfg, useComplexScriptFeatures);
}

/**
* Creates a PDF file. The contents are painted using a Graphics2D implementation that
* generates an PDF file.
* @param outputFile the target file
* @throws IOException In case of an I/O error
* @throws ConfigurationException if an error occurs configuring the PDF output
*/
public void generatePDF(File outputFile) throws IOException, ConfigurationException {
OutputStream out = new java.io.FileOutputStream(outputFile);
out = new java.io.BufferedOutputStream(out);
try {

//Instantiate the PDFDocumentGraphics2D instance
PDFDocumentGraphics2D g2d = new PDFDocumentGraphics2D(false);
g2d.setGraphicContext(new org.apache.xmlgraphics.java2d.GraphicContext());

//Configure the G2D with the necessary fonts
configure(g2d, createAutoFontsConfiguration());

//Set up the document size
Dimension pageSize = new Dimension(
(int)Math.ceil(UnitConv.mm2pt(210)),
(int)Math.ceil(UnitConv.mm2pt(297))); //page size A4 (in pt)
g2d.setupDocument(out, pageSize.width, pageSize.height);
g2d.translate(144, 72); //Establish some page borders

//A few rectangles rotated and with different color
Graphics2D copy = (Graphics2D)g2d.create();
int c = 12;
for (int i = 0; i < c; i++) {
float f = ((i + 1) / (float)c);
Color col = new Color(0.0f, 1 - f, 0.0f);
copy.setColor(col);
copy.fillRect(70, 90, 50, 50);
copy.rotate(-2 * Math.PI / c, 70, 90);
}
copy.dispose();

//Some text
g2d.rotate(-0.25);
g2d.setColor(Color.RED);
g2d.setFont(new Font("sans-serif", Font.PLAIN, 36));
g2d.drawString("Hello world!", 140, 140);
g2d.setColor(Color.RED.darker());
g2d.setFont(new Font("serif", Font.PLAIN, 36));
g2d.drawString("Hello world!", 140, 180);

pageSize = new Dimension(pageSize.height, pageSize.width);
g2d.nextPage(pageSize.width, pageSize.height);

//Demonstrate painting rich text
String someHTML = "<html><body style=\"font-family:Verdana\">"
+ "<p>Welcome to <b>page 2!</b></p>"
+ "<h2>PDFDocumentGraphics2D Demonstration</h2>"
+ "<p>We can <i>easily</i> paint some HTML here!</p>"
+ "<p style=\"color:green;\">"
+ "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin accumsan"
+ " condimentum ullamcorper. Sed varius quam id arcu fermentum luctus. Praesent"
+ " nisi ligula, cursus sed vestibulum vel, sodales sed lectus.</p>"
+ "</body></html>";
JEditorPane htmlComp = new JEditorPane();
htmlComp.setContentType("text/html");
htmlComp.read(new StringReader(someHTML), null);
htmlComp.setSize(new Dimension(pageSize.width - 72, pageSize.height - 72));
//htmlComp.setBackground(Color.ORANGE);
htmlComp.validate();
htmlComp.printAll(g2d);

//Cleanup
g2d.finish();
} finally {
IOUtils.closeQuietly(out);
}
}

/**
* Main method.
* @param args command-line arguments
*/
public static void main(String[] args) {
try {
System.out.println("FOP " + ExampleJava2D2PDF.class.getSimpleName() + "\n");
System.out.println("Preparing...");

//Setup directories
File baseDir = new File(".");
File outDir = new File(baseDir, "out");
if (!outDir.isDirectory()) {
if (!outDir.mkdirs()) {
throw new IOException("Could not create output directory: " + outDir);
}
}

//Setup output file
File pdffile = new File(outDir, "ResultJava2D2PDF.pdf");

System.out.println("Output: PDF (" + pdffile + ")");
System.out.println();
System.out.println("Generating...");

ExampleJava2D2PDF app = new ExampleJava2D2PDF();
app.generatePDF(pdffile);

System.out.println("Success!");
} catch (Throwable t) {
t.printStackTrace(System.err);
System.exit(-1);
}
}
}

+ 1
- 2
examples/embedding/java/embedding/atxml/ExampleConcat.java View File

@@ -93,8 +93,7 @@ public class ExampleConcat {
userAgent, MimeConstants.MIME_PDF);

//Create the XMLRenderer to create the area tree XML
XMLRenderer xmlRenderer = new XMLRenderer();
xmlRenderer.setUserAgent(userAgent);
XMLRenderer xmlRenderer = new XMLRenderer(userAgent);

//Tell the XMLRenderer to mimic the target renderer
xmlRenderer.mimicRenderer(targetRenderer);

+ 1
- 1
examples/embedding/java/embedding/tools/EasyGenerationContentHandlerProxy.java View File

@@ -211,4 +211,4 @@ public class EasyGenerationContentHandlerProxy implements ContentHandler {
target.skippedEntity(name);
}

}
}

+ 1
- 1
examples/plan/src/org/apache/fop/plan/PlanElementMapping.java View File

@@ -45,7 +45,7 @@ public class PlanElementMapping extends ElementMapping {
/** {@inheritDoc} */
protected void initialize() {
if (foObjs == null) {
foObjs = new java.util.HashMap();
foObjs = new java.util.HashMap<String, Maker>();
foObjs.put("plan", new PE());
foObjs.put(DEFAULT, new PlanMaker());
}

+ 496
- 309
findbugs-exclude.xml
File diff suppressed because it is too large
View File


+ 75
- 0
fop.bat View File

@@ -0,0 +1,75 @@
@ECHO OFF
REM Licensed to the Apache Software Foundation (ASF) under one or more
REM contributor license agreements. See the NOTICE file distributed with
REM this work for additional information regarding copyright ownership.
REM The ASF licenses this file to You under the Apache License, Version 2.0
REM (the "License"); you may not use this file except in compliance with
REM the License. You may obtain a copy of the License at
REM
REM http://www.apache.org/licenses/LICENSE-2.0
REM
REM Unless required by applicable law or agreed to in writing, software
REM distributed under the License is distributed on an "AS IS" BASIS,
REM WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
REM See the License for the specific language governing permissions and
REM limitations under the License.
REM $Id$
SETLOCAL ENABLEDELAYEDEXPANSION
rem %~dp0 is the expanded pathname of the current script under NT
set LOCAL_FOP_HOME=
if "%OS%"=="Windows_NT" set LOCAL_FOP_HOME="%~dp0"
rem Code from Apache Ant project
rem Slurp the command line arguments. This loop allows for an unlimited number
rem of arguments (up to the command line limit, anyway).
rem Could also do a "shift" and "%*" for all params, but apparently doesn't work
rem with Win9x.
set FOP_CMD_LINE_ARGS=%1
if ""%1""=="""" goto doneStart
shift
:setupArgs
if ""%1""=="""" goto doneStart
set FOP_CMD_LINE_ARGS=%FOP_CMD_LINE_ARGS% %1
shift
goto setupArgs
rem This label provides a place for the argument list loop to break out
rem and for NT handling to skip to.
:doneStart
set LOGCHOICE=
rem The default commons logger for JDK1.4 is JDK1.4Logger.
rem To use a different logger, uncomment the one desired below
rem set LOGCHOICE=-Dorg.apache.commons.logging.Log=org.apache.commons.logging.impl.NoOpLog
rem set LOGCHOICE=-Dorg.apache.commons.logging.Log=org.apache.commons.logging.impl.SimpleLog
rem set LOGCHOICE=-Dorg.apache.commons.logging.Log=org.apache.commons.logging.impl.Log4JLogger
set LOGLEVEL=
rem Logging levels
rem Below option is only if you are using SimpleLog instead of the default JDK1.4 Logger.
rem To set logging levels for JDK 1.4 Logger, edit the %JAVA_HOME%\JRE\LIB\logging.properties
rem file instead.
rem Possible SimpleLog values: "trace", "debug", "info" (default), "warn", "error", or "fatal".
rem set LOGLEVEL=-Dorg.apache.commons.logging.simplelog.defaultlog=INFO
set LIBDIR=%LOCAL_FOP_HOME%lib
set LOCALCLASSPATH=%FOP_HYPHENATION_PATH%
for %%l in (%LOCAL_FOP_HOME%build\*.jar %LIBDIR%\*.jar) do set LOCALCLASSPATH=!LOCALCLASSPATH!;%%l
set JAVAOPTS=-Denv.windir=%WINDIR%
if "%JAVA_HOME%" == "" goto noJavaHome
if not exist "%JAVA_HOME%\bin\java.exe" goto noJavaHome
if "%JAVACMD%" == "" set JAVACMD=%JAVA_HOME%\bin\java
goto runFop
:noJavaHome
if "%JAVACMD%" == "" set JAVACMD=java
:runFop
rem echo "%JAVACMD%" %LOGCHOICE% %LOGLEVEL% -cp "%LOCALCLASSPATH%" org.apache.fop.cli.Main %FOP_CMD_LINE_ARGS%
"%JAVACMD%" %JAVAOPTS% %LOGCHOICE% %LOGLEVEL% -cp "%LOCALCLASSPATH%" %FOP_OPTS% org.apache.fop.cli.Main %FOP_CMD_LINE_ARGS%
ENDLOCAL

+ 2
- 46
fop.cmd View File

@@ -15,17 +15,7 @@ REM See the License for the specific language governing permissions and
REM limitations under the License.
REM $Id$
SETLOCAL ENABLEDELAYEDEXPANSION
rem %~dp0 is the expanded pathname of the current script under NT
set LOCAL_FOP_HOME=
if "%OS%"=="Windows_NT" set LOCAL_FOP_HOME=%~dp0
rem Code from Apache Ant project
rem Slurp the command line arguments. This loop allows for an unlimited number
rem of arguments (up to the command line limit, anyway).
rem Could also do a "shift" and "%*" for all params, but apparently doesn't work
rem with Win9x.
set LOCAL_FOP_HOME=%~dp0
set FOP_CMD_LINE_ARGS=%1
if ""%1""=="""" goto doneStart
shift
@@ -35,41 +25,7 @@ set FOP_CMD_LINE_ARGS=%FOP_CMD_LINE_ARGS% %1
shift
goto setupArgs
rem This label provides a place for the argument list loop to break out
rem and for NT handling to skip to.
:doneStart
set LOGCHOICE=
rem The default commons logger for JDK1.4 is JDK1.4Logger.
rem To use a different logger, uncomment the one desired below
rem set LOGCHOICE=-Dorg.apache.commons.logging.Log=org.apache.commons.logging.impl.NoOpLog
rem set LOGCHOICE=-Dorg.apache.commons.logging.Log=org.apache.commons.logging.impl.SimpleLog
rem set LOGCHOICE=-Dorg.apache.commons.logging.Log=org.apache.commons.logging.impl.Log4JLogger
set LOGLEVEL=
rem Logging levels
rem Below option is only if you are using SimpleLog instead of the default JDK1.4 Logger.
rem To set logging levels for JDK 1.4 Logger, edit the %JAVA_HOME%\JRE\LIB\logging.properties
rem file instead.
rem Possible SimpleLog values: "trace", "debug", "info" (default), "warn", "error", or "fatal".
rem set LOGLEVEL=-Dorg.apache.commons.logging.simplelog.defaultlog=INFO
set LIBDIR=%LOCAL_FOP_HOME%lib
set LOCALCLASSPATH=%FOP_HYPHENATION_PATH%
for %%l in (%LOCAL_FOP_HOME%build\*.jar %LIBDIR%\*.jar) do set LOCALCLASSPATH=!LOCALCLASSPATH!;%%l
set JAVAOPTS=-Denv.windir=%WINDIR%
if "%JAVA_HOME%" == "" goto noJavaHome
if not exist "%JAVA_HOME%\bin\java.exe" goto noJavaHome
if "%JAVACMD%" == "" set JAVACMD=%JAVA_HOME%\bin\java
goto runFop
:noJavaHome
if "%JAVACMD%" == "" set JAVACMD=java
:runFop
rem echo "%JAVACMD%" %LOGCHOICE% %LOGLEVEL% -cp "%LOCALCLASSPATH%" org.apache.fop.cli.Main %FOP_CMD_LINE_ARGS%
"%JAVACMD%" %JAVAOPTS% %LOGCHOICE% %LOGLEVEL% -cp "%LOCALCLASSPATH%" %FOP_OPTS% org.apache.fop.cli.Main %FOP_CMD_LINE_ARGS%
call "%LOCAL_FOP_HOME%\fop.bat" %FOP_CMD_LINE_ARGS%
ENDLOCAL

+ 1
- 1
fop.js View File

@@ -223,7 +223,7 @@ function fop_exec() {
+ (config.Exists("JAVA_OPTS")?config.Item("JAVA_OPTS") + " ":"")
+ (config.Exists("LOGCHOICE")?config.Item("LOGCHOICE") + " ":"")
+ (config.Exists("LOGLEVEL")?config.Item("LOGLEVEL") + " ":"")
"-classpath \"" + local_classpath + "\" "
+ "-classpath \"" + local_classpath + "\" "
+ (config.Exists("FOP_OPTS")?config.Item("FOP_OPTS"):"")
+ "org.apache.fop.cli.Main " + fop_exec_args;
if (debug || fop_exec_debug) {

+ 38
- 0
jacoco.xml View File

@@ -0,0 +1,38 @@
<?xml version="1.0"?>
<project xmlns:jacoco="antlib:org.jacoco.ant" name="JaCoCo" default="coverage-report">
<import file="build.xml"/>
<property name="jacoco.report.dir" value="${build.dir}/report_jacoco"/>
<taskdef uri="antlib:org.jacoco.ant" resource="org/jacoco/ant/antlib.xml">
<classpath location="${jacocoant.jar}"/>
</taskdef>
<target name="test-coverage" depends="junit-compile, setup-xml-schema">
<jacoco:coverage destfile="${jacoco.report.dir}/jacoco.exec">
<junit dir="${basedir}" haltonfailure="yes" fork="on" forkmode="once">
<sysproperty key="jawa.awt.headless" value="true"/>
<classpath>
<path refid="standard-junit-classpath"/>
</classpath>
<batchtest>
<fileset dir="${build.unit.tests.dir}" includes="**/*TestCase.class"/>
</batchtest>
</junit>
</jacoco:coverage>
</target>
<target name="coverage-report" depends="test-coverage"
description="Runs JaCoCo for a code coverage report">
<jacoco:report>
<executiondata>
<file file="${jacoco.report.dir}/jacoco.exec"/>
</executiondata>
<structure name="Apache FOP">
<classfiles>
<fileset dir="${build.classes.dir}"/>
</classfiles>
<sourcefiles>
<fileset dir="${src.java.dir}"/>
</sourcefiles>
</structure>
<html destdir="${jacoco.report.dir}"/>
</jacoco:report>
</target>
</project>

+ 27
- 0
lib/build/hamcrest.core-1.1.0.LICENSE.txt View File

@@ -0,0 +1,27 @@
BSD License

Copyright (c) 2000-2006, www.hamcrest.org
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

Redistributions of source code must retain the above copyright notice, this list of
conditions and the following disclaimer. Redistributions in binary form must reproduce
the above copyright notice, this list of conditions and the following disclaimer in
the documentation and/or other materials provided with the distribution.

Neither the name of Hamcrest nor the names of its contributors may be used to endorse
or promote products derived from this software without specific prior written
permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
DAMAGE.

BIN
lib/build/hamcrest.core-1.1.0.jar View File


+ 21
- 0
lib/build/mockito-core-1.8.5.LICENCE.txt View File

@@ -0,0 +1,21 @@
The MIT License

Copyright (c) 2007 Mockito contributors

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.

+ 11
- 0
lib/build/mockito-core-1.8.5.NOTICE.txt View File

@@ -0,0 +1,11 @@
Mockito license - MIT.

Libraries used:

Cglib - Apache License 2.0
ASM - BSD license

Mockito all distribution:

Objenesis - MIT license
Hamcrest - BSD license

BIN
lib/build/mockito-core-1.8.5.jar View File


+ 18
- 0
lib/build/objenesis-1.0.0.LICENSE.txt View File

@@ -0,0 +1,18 @@
Copyright (c) 2003-2008, Objenesis Team and all contributors

Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

BIN
lib/build/objenesis-1.0.0.jar View File


BIN
lib/build/qdox-1.12.jar View File


BIN
lib/build/qdox-1.6.3.jar View File


BIN
lib/xmlgraphics-commons-1.5svn.jar View File


+ 7
- 8
src/codegen/java/org/apache/fop/tools/EventProducerCollector.java View File

@@ -21,7 +21,6 @@ package org.apache.fop.tools;

import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Map;
@@ -47,10 +46,10 @@ import com.thoughtworks.qdox.model.Type;
class EventProducerCollector {

private static final String CLASSNAME_EVENT_PRODUCER = EventProducer.class.getName();
private static final Map PRIMITIVE_MAP;
private static final Map<String, Class<?>> PRIMITIVE_MAP;

static {
Map m = new java.util.HashMap();
Map<String, Class<?>> m = new java.util.HashMap<String, Class<?>>();
m.put("boolean", Boolean.class);
m.put("byte", Byte.class);
m.put("char", Character.class);
@@ -63,7 +62,7 @@ class EventProducerCollector {
}

private DocletTagFactory tagFactory;
private List models = new ArrayList();
private List<EventModel> models = new java.util.ArrayList<EventModel>();

/**
* Creates a new EventProducerCollector.
@@ -139,7 +138,7 @@ class EventProducerCollector {
throws EventConventionException, ClassNotFoundException {
JavaClass clazz = method.getParentClass();
//Check EventProducer conventions
if (!method.getReturns().isVoid()) {
if (!method.getReturnType().isVoid()) {
throw new EventConventionException("All methods of interface "
+ clazz.getFullyQualifiedName() + " must have return type 'void'!");
}
@@ -168,10 +167,10 @@ class EventProducerCollector {
if (params.length > 1) {
for (int j = 1, cj = params.length; j < cj; j++) {
JavaParameter p = params[j];
Class type;
Class<?> type;
JavaClass pClass = p.getType().getJavaClass();
if (p.getType().isPrimitive()) {
type = (Class)PRIMITIVE_MAP.get(pClass.getName());
type = PRIMITIVE_MAP.get(pClass.getName());
if (type == null) {
throw new UnsupportedOperationException(
"Primitive datatype not supported: " + pClass.getName());
@@ -197,7 +196,7 @@ class EventProducerCollector {
* Returns the event model that has been accumulated.
* @return the event model.
*/
public List getModels() {
public List<EventModel> getModels() {
return this.models;
}


+ 2
- 2
src/codegen/java/org/apache/fop/tools/EventProducerCollectorTask.java View File

@@ -56,7 +56,7 @@ import org.w3c.dom.Node;
*/
public class EventProducerCollectorTask extends Task {

private List filesets = new java.util.ArrayList();
private List<FileSet> filesets = new java.util.ArrayList<FileSet>();
private File destDir;
private File translationFile;

@@ -200,7 +200,7 @@ public class EventProducerCollectorTask extends Task {
protected long processFileSets(EventProducerCollector collector)
throws IOException, EventConventionException, ClassNotFoundException {
long lastModified = 0;
Iterator iter = filesets.iterator();
Iterator<FileSet> iter = filesets.iterator();
while (iter.hasNext()) {
FileSet fs = (FileSet)iter.next();
DirectoryScanner ds = fs.getDirectoryScanner(getProject());

+ 571
- 0
src/codegen/unicode/java/org/apache/fop/complexscripts/bidi/GenerateBidiClass.java View File

@@ -0,0 +1,571 @@
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

/* $Id$ */

package org.apache.fop.complexscripts.bidi;

import java.io.BufferedReader;
import java.io.FileWriter;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.URL;
import java.util.Arrays;
import java.util.Iterator;
import java.util.SortedSet;
import java.util.TreeSet;

import org.apache.fop.util.License;

// CSOFF: LineLength
// CSOFF: NoWhitespaceAfter

/**
* <p>Utility for generating a Java class representing bidirectional
* class properties from the Unicode property files.</p>
*
* <p>This code is derived in part from GenerateLineBreakUtils.java.</p>
*
* <p>This work was originally authored by Glenn Adams (gadams@apache.org).</p>
*/
public final class GenerateBidiClass {

private GenerateBidiClass() {
}

private static byte[] bcL1 = new byte[256]; // ascii and basic latin blocks ( 0x0000 - 0x00FF )
private static byte[] bcR1 = new byte[368]; // hebrew and arabic blocks ( 0x0590 - 0x06FF )
private static int[] bcS1; // interval start indices
private static int[] bcE1; // interval end indices
private static byte[] bcC1; // interval bid classes

/**
* Generate a class managing bidi class properties for Unicode characters.
*
* @param bidiFileName name (as URL) of file containing bidi type data
* @param outFileName name of the output file
* @throws Exception
*/
private static void convertBidiClassProperties(String bidiFileName, String outFileName) throws Exception {

readBidiClassProperties(bidiFileName);

// generate class
PrintWriter out = new PrintWriter(new FileWriter(outFileName));
License.writeJavaLicenseId(out);
out.println();
out.println("package org.apache.fop.complexscripts.bidi;");
out.println();
out.println("import java.util.Arrays;");
out.println("import org.apache.fop.complexscripts.bidi.BidiConstants;");
out.println();
out.println("// CSOFF: WhitespaceAfterCheck");
out.println("// CSOFF: LineLengthCheck");
out.println();
out.println("/*");
out.println(" * !!! THIS IS A GENERATED FILE !!!");
out.println(" * If updates to the source are needed, then:");
out.println(" * - apply the necessary modifications to");
out.println(" * 'src/codegen/unicode/java/org/apache/fop/complexscripts/bidi/GenerateBidiClass.java'");
out.println(" * - run 'ant codegen-unicode', which will generate a new BidiClass.java");
out.println(" * in 'src/java/org/apache/fop/complexscripts/bidi'");
out.println(" * - commit BOTH changed files");
out.println(" */");
out.println();
out.println("/** Bidirectional class utilities. */");
out.println("public final class BidiClass {");
out.println();
out.println("private BidiClass() {");
out.println("}");
out.println();
dumpData(out);
out.println ("/**");
out.println (" * Lookup bidi class for character expressed as unicode scalar value.");
out.println (" * @param ch a unicode scalar value");
out.println (" * @return bidi class");
out.println (" */");
out.println("public static int getBidiClass ( int ch ) {");
out.println(" if ( ch <= 0x00FF ) {");
out.println(" return bcL1 [ ch - 0x0000 ];");
out.println(" } else if ( ( ch >= 0x0590 ) && ( ch <= 0x06FF ) ) {");
out.println(" return bcR1 [ ch - 0x0590 ];");
out.println(" } else {");
out.println(" return getBidiClass ( ch, bcS1, bcE1, bcC1 );");
out.println(" }");
out.println("}");
out.println();
out.println("private static int getBidiClass ( int ch, int[] sa, int[] ea, byte[] ca ) {");
out.println(" int k = Arrays.binarySearch ( sa, ch );");
out.println(" if ( k >= 0 ) {");
out.println(" return ca [ k ];");
out.println(" } else {");
out.println(" k = - ( k + 1 );");
out.println(" if ( k == 0 ) {");
out.println(" return BidiConstants.L;");
out.println(" } else if ( ch <= ea [ k - 1 ] ) {");
out.println(" return ca [ k - 1 ];");
out.println(" } else {");
out.println(" return BidiConstants.L;");
out.println(" }");
out.println(" }");
out.println("}");
out.println();
out.println("}");
out.flush();
out.close();
}

/**
* Read bidi class property data.
*
* @param bidiFileName name (as URL) of bidi type data
*/
private static void readBidiClassProperties(String bidiFileName) throws Exception {
// read property names
BufferedReader b = new BufferedReader(new InputStreamReader(new URL(bidiFileName).openStream()));
String line;
int lineNumber = 0;
TreeSet intervals = new TreeSet();
while ( ( line = b.readLine() ) != null ) {
lineNumber++;
if ( line.startsWith("#") ) {
continue;
} else if ( line.length() == 0 ) {
continue;
} else {
if ( line.indexOf ( "#" ) != -1 ) {
line = ( line.split ( "#" ) ) [ 0 ];
}
String[] fa = line.split ( ";" );
if ( fa.length == 2 ) {
int[] interval = parseInterval ( fa[0].trim() );
byte bidiClass = (byte) parseBidiClass ( fa[1].trim() );
if ( interval[1] == interval[0] ) { // singleton
int c = interval[0];
if ( c <= 0x00FF ) {
if ( bcL1 [ c - 0x0000 ] == 0 ) {
bcL1 [ c - 0x0000 ] = bidiClass;
} else {
throw new Exception ( "duplicate singleton entry: " + c );
}
} else if ( ( c >= 0x0590 ) && ( c <= 0x06FF ) ) {
if ( bcR1 [ c - 0x0590 ] == 0 ) {
bcR1 [ c - 0x0590 ] = bidiClass;
} else {
throw new Exception ( "duplicate singleton entry: " + c );
}
} else {
addInterval ( intervals, c, c, bidiClass );
}
} else { // non-singleton
int s = interval[0];
int e = interval[1]; // inclusive
if ( s <= 0x00FF ) {
for ( int i = s; i <= e; i++ ) {
if ( i <= 0x00FF ) {
if ( bcL1 [ i - 0x0000 ] == 0 ) {
bcL1 [ i - 0x0000 ] = bidiClass;
} else {
throw new Exception ( "duplicate singleton entry: " + i );
}
} else {
addInterval ( intervals, i, e, bidiClass );
break;
}
}
} else if ( ( s >= 0x0590 ) && ( s <= 0x06FF ) ) {
for ( int i = s; i <= e; i++ ) {
if ( i <= 0x06FF ) {
if ( bcR1 [ i - 0x0590 ] == 0 ) {
bcR1 [ i - 0x0590 ] = bidiClass;
} else {
throw new Exception ( "duplicate singleton entry: " + i );
}
} else {
addInterval ( intervals, i, e, bidiClass );
break;
}
}
} else {
addInterval ( intervals, s, e, bidiClass );
}
}
} else {
throw new Exception ( "bad syntax, line(" + lineNumber + "): " + line );
}
}
}
// compile interval search data
int ivIndex = 0;
int niv = intervals.size();
bcS1 = new int [ niv ];
bcE1 = new int [ niv ];
bcC1 = new byte [ niv ];
for ( Iterator it = intervals.iterator(); it.hasNext(); ivIndex++ ) {
Interval iv = (Interval) it.next();
bcS1[ivIndex] = iv.start;
bcE1[ivIndex] = iv.end;
bcC1[ivIndex] = (byte) iv.bidiClass;
}
// test data
test();
}

private static int[] parseInterval ( String interval ) throws Exception {
int s;
int e;
String[] fa = interval.split("\\.\\.");
if ( fa.length == 1 ) {
s = Integer.parseInt ( fa[0], 16 );
e = s;
} else if ( fa.length == 2 ) {
s = Integer.parseInt ( fa[0], 16 );
e = Integer.parseInt ( fa[1], 16 );
} else {
throw new Exception ( "bad interval syntax: " + interval );
}
if ( e < s ) {
throw new Exception ( "bad interval, start must be less than or equal to end: " + interval );
}
return new int[] {s, e};
}

private static int parseBidiClass ( String bidiClass ) {
int bc = 0;
if ( "L".equals ( bidiClass ) ) {
bc = BidiConstants.L;
} else if ( "LRE".equals ( bidiClass ) ) {
bc = BidiConstants.LRE;
} else if ( "LRO".equals ( bidiClass ) ) {
bc = BidiConstants.LRO;
} else if ( "R".equals ( bidiClass ) ) {
bc = BidiConstants.R;
} else if ( "AL".equals ( bidiClass ) ) {
bc = BidiConstants.AL;
} else if ( "RLE".equals ( bidiClass ) ) {
bc = BidiConstants.RLE;
} else if ( "RLO".equals ( bidiClass ) ) {
bc = BidiConstants.RLO;
} else if ( "PDF".equals ( bidiClass ) ) {
bc = BidiConstants.PDF;
} else if ( "EN".equals ( bidiClass ) ) {
bc = BidiConstants.EN;
} else if ( "ES".equals ( bidiClass ) ) {
bc = BidiConstants.ES;
} else if ( "ET".equals ( bidiClass ) ) {
bc = BidiConstants.ET;
} else if ( "AN".equals ( bidiClass ) ) {
bc = BidiConstants.AN;
} else if ( "CS".equals ( bidiClass ) ) {
bc = BidiConstants.CS;
} else if ( "NSM".equals ( bidiClass ) ) {
bc = BidiConstants.NSM;
} else if ( "BN".equals ( bidiClass ) ) {
bc = BidiConstants.BN;
} else if ( "B".equals ( bidiClass ) ) {
bc = BidiConstants.B;
} else if ( "S".equals ( bidiClass ) ) {
bc = BidiConstants.S;
} else if ( "WS".equals ( bidiClass ) ) {
bc = BidiConstants.WS;
} else if ( "ON".equals ( bidiClass ) ) {
bc = BidiConstants.ON;
} else {
throw new IllegalArgumentException ( "unknown bidi class: " + bidiClass );
}
return bc;
}

private static void addInterval ( SortedSet intervals, int start, int end, int bidiClass ) {
intervals.add ( new Interval ( start, end, bidiClass ) );
}

private static void dumpData ( PrintWriter out ) {
boolean first;
StringBuffer sb = new StringBuffer();

// bcL1
first = true;
sb.setLength(0);
out.println ( "private static byte[] bcL1 = {" );
for ( int i = 0; i < bcL1.length; i++ ) {
if ( ! first ) {
sb.append ( "," );
} else {
first = false;
}
sb.append ( bcL1[i] );
if ( sb.length() > 120 ) {
sb.append(',');
out.println(sb);
first = true;
sb.setLength(0);
}
}
if ( sb.length() > 0 ) {
out.println(sb);
}
out.println ( "};" );
out.println();

// bcR1
first = true;
sb.setLength(0);
out.println ( "private static byte[] bcR1 = {" );
for ( int i = 0; i < bcR1.length; i++ ) {
if ( ! first ) {
sb.append ( "," );
} else {
first = false;
}
sb.append ( bcR1[i] );
if ( sb.length() > 120 ) {
sb.append(',');
out.println(sb);
first = true;
sb.setLength(0);
}
}
if ( sb.length() > 0 ) {
out.println(sb);
}
out.println ( "};" );
out.println();

// bcS1
first = true;
sb.setLength(0);
out.println ( "private static int[] bcS1 = {" );
for ( int i = 0; i < bcS1.length; i++ ) {
if ( ! first ) {
sb.append ( "," );
} else {
first = false;
}
sb.append ( bcS1[i] );
if ( sb.length() > 120 ) {
sb.append(',');
out.println(sb);
first = true;
sb.setLength(0);
}
}
if ( sb.length() > 0 ) {
out.println(sb);
}
out.println ( "};" );
out.println();

// bcE1
first = true;
sb.setLength(0);
out.println ( "private static int[] bcE1 = {" );
for ( int i = 0; i < bcE1.length; i++ ) {
if ( ! first ) {
sb.append ( "," );
} else {
first = false;
}
sb.append ( bcE1[i] );
if ( sb.length() > 120 ) {
sb.append(',');
out.println(sb);
first = true;
sb.setLength(0);
}
}
if ( sb.length() > 0 ) {
out.println(sb);
}
out.println ( "};" );
out.println();

// bcC1
first = true;
sb.setLength(0);
out.println ( "private static byte[] bcC1 = {" );
for ( int i = 0; i < bcC1.length; i++ ) {
if ( ! first ) {
sb.append ( "," );
} else {
first = false;
}
sb.append ( bcC1[i] );
if ( sb.length() > 120 ) {
sb.append(',');
out.println(sb);
first = true;
sb.setLength(0);
}
}
if ( sb.length() > 0 ) {
out.println(sb);
}
out.println ( "};" );
out.println();
}

private static int getBidiClass ( int ch ) {
if ( ch <= 0x00FF ) {
return bcL1 [ ch - 0x0000 ];
} else if ( ( ch >= 0x0590 ) && ( ch <= 0x06FF ) ) {
return bcR1 [ ch - 0x0590 ];
} else {
return getBidiClass ( ch, bcS1, bcE1, bcC1 );
}
}

private static int getBidiClass ( int ch, int[] sa, int[] ea, byte[] ca ) {
int k = Arrays.binarySearch ( sa, ch );
if ( k >= 0 ) {
return ca [ k ];
} else {
k = - ( k + 1 );
if ( k == 0 ) {
return BidiConstants.L;
} else if ( ch <= ea [ k - 1 ] ) {
return ca [ k - 1 ];
} else {
return BidiConstants.L;
}
}
}

private static final int[] testData = // CSOK: ConstantName
{
0x000000, BidiConstants.BN,
0x000009, BidiConstants.S,
0x00000A, BidiConstants.B,
0x00000C, BidiConstants.WS,
0x000020, BidiConstants.WS,
0x000023, BidiConstants.ET,
0x000028, BidiConstants.ON,
0x00002B, BidiConstants.ES,
0x00002C, BidiConstants.CS,
0x000031, BidiConstants.EN,
0x00003A, BidiConstants.CS,
0x000041, BidiConstants.L,
0x000300, BidiConstants.NSM,
0x000374, BidiConstants.ON,
0x0005BE, BidiConstants.R,
0x000601, BidiConstants.AN,
0x000608, BidiConstants.AL,
0x000670, BidiConstants.NSM,
0x000710, BidiConstants.AL,
0x0007FA, BidiConstants.R,
0x000970, BidiConstants.L,
0x001392, BidiConstants.ON,
0x002000, BidiConstants.WS,
0x00200E, BidiConstants.L,
0x00200F, BidiConstants.R,
0x00202A, BidiConstants.LRE,
0x00202B, BidiConstants.RLE,
0x00202C, BidiConstants.PDF,
0x00202D, BidiConstants.LRO,
0x00202E, BidiConstants.RLO,
0x0020E1, BidiConstants.NSM,
0x002212, BidiConstants.ES,
0x002070, BidiConstants.EN,
0x003000, BidiConstants.WS,
0x003009, BidiConstants.ON,
0x00FBD4, BidiConstants.AL,
0x00FE69, BidiConstants.ET,
0x00FF0C, BidiConstants.CS,
0x00FEFF, BidiConstants.BN,
0x01034A, BidiConstants.L,
0x010E60, BidiConstants.AN,
0x01F100, BidiConstants.EN,
0x0E0001, BidiConstants.BN,
0x0E0100, BidiConstants.NSM,
0x10FFFF, BidiConstants.BN
};

private static void test() throws Exception {
for ( int i = 0, n = testData.length / 2; i < n; i++ ) {
int ch = testData [ i * 2 + 0 ];
int tc = testData [ i * 2 + 1 ];
int bc = getBidiClass ( ch );
if ( bc != tc ) {
throw new Exception ( "test mapping failed for character (0x" + Integer.toHexString(ch) + "): expected " + tc + ", got " + bc );
}
}
}

/**
* Main entry point for generator.
* @param args array of command line arguments
*/
public static void main(String[] args) {
String bidiFileName = "http://www.unicode.org/Public/UNIDATA/extracted/DerivedBidiClass.txt";
String outFileName = "BidiClass.java";
boolean ok = true;
for (int i = 0; i < args.length; i = i + 2) {
if (i + 1 == args.length) {
ok = false;
} else {
String opt = args[i];
if ("-b".equals(opt)) {
bidiFileName = args [i + 1];
} else if ("-o".equals(opt)) {
outFileName = args [i + 1];
} else {
ok = false;
}
}
}
if (!ok) {
System.out.println("Usage: GenerateBidiClass [-b <bidiFile>] [-o <outputFile>]");
System.out.println(" defaults:");
System.out.println(" <bidiFile>: " + bidiFileName);
System.out.println(" <outputFile>: " + outFileName);
} else {
try {
convertBidiClassProperties(bidiFileName, outFileName);
System.out.println("Generated " + outFileName + " from");
System.out.println(" <bidiFile>: " + bidiFileName);
} catch (Exception e) {
System.out.println("An unexpected error occured");
e.printStackTrace();
}
}
}

private static class Interval implements Comparable {
int start; // CSOK: VisibilityModifier
int end; // CSOK: VisibilityModifier
int bidiClass; // CSOK: VisibilityModifier
Interval ( int start, int end, int bidiClass ) {
this.start = start;
this.end = end;
this.bidiClass = bidiClass;
}
public int compareTo ( Object o ) {
Interval iv = (Interval) o;
if ( start < iv.start ) {
return -1;
} else if ( start > iv.start ) {
return 1;
} else if ( end < iv.end ) {
return -1;
} else if ( end > iv.end ) {
return 1;
} else {
return 0;
}
}
}
}

+ 1269
- 0
src/codegen/unicode/java/org/apache/fop/complexscripts/bidi/GenerateBidiTestData.java
File diff suppressed because it is too large
View File


+ 19
- 9
src/codegen/unicode/java/org/apache/fop/hyphenation/UnicodeClasses.java View File

@@ -148,11 +148,18 @@ public final class UnicodeClasses {
}


/**
* The column numbers in the UCD file
*/
public static final int UNICODE = 0, GENERAL_CATEGORY = 2, SIMPLE_UPPERCASE_MAPPING = 12,
SIMPLE_LOWERCASE_MAPPING = 13, SIMPLE_TITLECASE_MAPPING = 14, NUM_FIELDS = 15;
/** The 1st column in the UCD file. */
public static final int UNICODE = 0;
/** The 3rd column in the UCD file. */
public static final int GENERAL_CATEGORY = 2;
/** The 13th column in the UCD file. */
public static final int SIMPLE_UPPERCASE_MAPPING = 12;
/** The 14th column in the UCD file. */
public static final int SIMPLE_LOWERCASE_MAPPING = 13;
/** The 15th column in the UCD file. */
public static final int SIMPLE_TITLECASE_MAPPING = 14;
/** The number of columns in the UCD file. */
public static final int NUM_FIELDS = 15;

/**
* Generate classes.xml from Unicode Character Database files
@@ -254,7 +261,8 @@ public final class UnicodeClasses {
continue;
}

int uppercode = -1, titlecode = -1;
int uppercode = -1;
int titlecode = -1;
if (!"".equals(fields[SIMPLE_UPPERCASE_MAPPING])) {
uppercode = Integer.parseInt(fields[SIMPLE_UPPERCASE_MAPPING], 16);
}
@@ -322,8 +330,7 @@ public final class UnicodeClasses {
if (codes[0].equals("\\l") && codes.length != 2) {
ow.write("\"" + line + "\" should have one code");
continue;
}
else if (codes[0].equals("\\L") && codes.length != 4) {
} else if (codes[0].equals("\\L") && codes.length != 4) {
ow.write("\"" + line + "\" should have three codes");
continue;
}
@@ -352,7 +359,10 @@ public final class UnicodeClasses {
* @throws URISyntaxException if the input URI is incorrect
*/
public static void main(String[] args) throws IOException, URISyntaxException {
String type = "ucd", prefix = "--", infile = null, outfile = null;
String type = "ucd";
String prefix = "--";
String infile = null;
String outfile = null;
boolean hexcode = false;
int i;
for (i = 0; i < args.length && args[i].startsWith(prefix); ++i) {

+ 2
- 1
src/codegen/unicode/java/org/apache/fop/text/linebreak/GenerateLineBreakUtils.java View File

@@ -558,7 +558,8 @@ public final class GenerateLineBreakUtils {
throw new Exception(lineBreakFileName + ':' + lineNumber + ": Unknown property value in " + line);
}
String codepoint = line.substring(0, idx);
int low, high;
int low;
int high;
idx = codepoint.indexOf("..");
try {
if (idx >= 0) {

+ 6
- 3
src/documentation/content/xdocs/0.95/anttask.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,12 +19,12 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document>
<header>
<title>Ant task</title>
<title>Apache™ FOP: Ant task</title>
<version>$Revision$</version>
</header>
<body>
<p>
Apache FOP provides an Ant task for automating the document build process.
Apache FOP provides an Ant task for automating the document build process.
</p>
<section id="basics">
<title>Description</title>
@@ -195,3 +195,6 @@
</body>
</document>





+ 4
- 5
src/documentation/content/xdocs/0.95/compiling.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,14 +19,14 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document>
<header>
<title>Apache FOP: Building from Source Code</title>
<title>Apache FOP: Building from Source Code</title>
<version>$Revision$</version>
</header>
<body>
<section id="build-needed">
<title>Do You Need To Build?</title>
<p>
FOP distributions are either pre-compiled binary or source.
Apache™ FOP distributions are either pre-compiled binary or source.
If you are using a binary distribution, it is already built and there is no need to build it again.
See the <a href="../download.html">Download Instructions</a> for information about whether a
binary or source distribution is best for your needs.
@@ -137,5 +137,4 @@
</ul>
</section>
</body>
</document>

</document>

+ 3
- 4
src/documentation/content/xdocs/0.95/configuration.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,7 +19,7 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document>
<header>
<title>Apache FOP: Configuration</title>
<title>Apache FOP: Configuration</title>
<version>$Revision$</version>
</header>

@@ -390,5 +390,4 @@ information it finds. Check if FOP finds what you expect.</li>

</section>
</body>
</document>

</document>

+ 6
- 7
src/documentation/content/xdocs/0.95/embedding.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -20,8 +20,8 @@
<!-- Embedding FOP -->
<document>
<header>
<title>Apache FOP: Embedding</title>
<subtitle>How to Embed FOP in a Java application</subtitle>
<title>Apache FOP: Embedding</title>
<subtitle>How to Embed Apache™ FOP in a Java application</subtitle>
<version>$Revision$</version>
</header>

@@ -29,11 +29,11 @@
<section id="overview">
<title>Overview</title>
<p>
Review <a href="running.html">Running FOP</a> for important information that applies
Review <a href="running.html">Running Apache™ FOP</a> for important information that applies
to embedded applications as well as command-line use, such as options and performance.
</p>
<p>
To embed Apache FOP in your application, first create a new
To embed Apache FOP in your application, first create a new
org.apache.fop.apps.FopFactory instance. This object can be used to launch multiple
rendering runs. For each run, create a new org.apache.fop.apps.Fop instance through
one of the factory methods of FopFactory. In the method call you specify which output
@@ -685,5 +685,4 @@ mailing list.
</section>
</section>
</body>
</document>

</document>

+ 3
- 4
src/documentation/content/xdocs/0.95/extensions.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,7 +19,7 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document>
<header>
<title>Standard FOP Extensions</title>
<title>Standard Apache™ FOP Extensions</title>
<version>$Revision$</version>
</header>
<body>
@@ -230,5 +230,4 @@ to following pages. Here is an example of FO code creating such a table-header:<
</section>
</body>
</document>

</document>

+ 3
- 3
src/documentation/content/xdocs/0.95/fonts.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,7 +19,7 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document>
<header>
<title>Apache FOP: Fonts</title>
<title>Apache FOP: Fonts</title>
<version>$Revision$</version>
<authors>
<person name="Jeremias Märki" email=""/>
@@ -407,4 +407,4 @@
</section-->
</section>
</body>
</document>
</document>

+ 35
- 35
src/documentation/content/xdocs/0.95/graphics.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,14 +19,14 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document>
<header>
<title>Apache FOP: Graphics Formats</title>
<title>Apache FOP: Graphics Formats</title>
<version>$Revision$</version>
</header>
<body>
<section id="introduction">
<title>Introduction</title>
<p>
After the Apache FOP 0.94 release, the image handling subsystem has been rewritten in
After the Apache FOP 0.94 release, the image handling subsystem has been rewritten in
order to improve the range of supported images and image subtypes, to lower the
overall memory consumption when handling images, to produce smaller output files and to
increase the performance in certain areas. Of course, this causes a few changes most of
@@ -77,65 +77,65 @@
<tr>
<td><a href="#bmp">BMP</a> (Microsoft Windows Bitmap)</td>
<td>bitmap</td>
<td></td>
<td></td>
<td/>
<td/>
<td>X [1]</td>
</tr>
<tr>
<td><a href="#emf">EMF</a> (Windows Enhanced Metafile)</td>
<td>vector (with embedded bitmaps)</td>
<td>(X)</td>
<td></td>
<td></td>
<td/>
<td/>
</tr>
<tr>
<td><a href="#eps">EPS</a> (Encapsulated PostScript)</td>
<td>metafile (both bitmap and vector), most frequently used for vector drawings</td>
<td>(X)</td>
<td></td>
<td></td>
<td/>
<td/>
</tr>
<tr>
<td>GIF (Graphics Interchange Format)</td>
<td>bitmap</td>
<td></td>
<td></td>
<td/>
<td/>
<td>X</td>
</tr>
<tr>
<td><a href="#jpeg">JPEG</a> (Joint Photographic Experts Group)</td>
<td>bitmap</td>
<td>(X)</td>
<td></td>
<td/>
<td>X</td>
</tr>
<tr>
<td><a href="#png">PNG</a> (Portable Network Graphic)</td>
<td>bitmap</td>
<td></td>
<td></td>
<td/>
<td/>
<td>X</td>
</tr>
<tr>
<td><a href="#svg">SVG</a> (Scalable Vector Graphics)</td>
<td>vector (with embedded bitmaps)</td>
<td></td>
<td/>
<td>X</td>
<td></td>
<td/>
</tr>
<tr>
<td><a href="#tiff">TIFF</a> (Tag Image Format File)</td>
<td>bitmap</td>
<td>(X)</td>
<td></td>
<td/>
<td>X [1]</td>
</tr>
<tr>
<td><a href="#wmf">WMF</a> (Windows Metafile)</td>
<td>vector (with embedded bitmaps)</td>
<td></td>
<td/>
<td>(X)</td>
<td></td>
<td/>
</tr>
</table>
<p>
@@ -153,7 +153,7 @@
<note>
<a href="http://jai-imageio.dev.java.net/">JAI Image I/O Tools</a> is not the same as the
<a href="http://java.sun.com/javase/technologies/desktop/media/jai/">JAI library</a>! The
former simply exposes JAI's codecs using the Image&nbsp;I/O API but does not include all
former simply exposes JAI's codecs using the Image&amp;nbsp;I/O API but does not include all
the image manipulation functionality.
</note>
<section id="format-map">
@@ -185,21 +185,21 @@
</tr>
<tr>
<td><a href="#emf">EMF</a> (Windows Enhanced Metafile)</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td/>
<td/>
<td/>
<td/>
<td/>
<td>X [1]</td>
</tr>
<tr>
<td><a href="#eps">EPS</a> (Encapsulated PostScript)</td>
<td></td>
<td/>
<td>X [1]</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td/>
<td/>
<td/>
<td/>
</tr>
<tr>
<td>GIF (Graphics Interchange Format)</td>
@@ -365,7 +365,7 @@
<section id="gif">
<title>GIF</title>
<p>
GIF images are supported through an Image&nbsp;I/O codec. Transparency is supported but
GIF images are supported through an Image&amp;nbsp;I/O codec. Transparency is supported but
not guaranteed to work with every output format.
</p>
</section>
@@ -380,14 +380,14 @@
through without decompression. User reports indicate that grayscale, RGB, and
CMYK color spaces are all rendered properly. However, for other output formats, the
JPEG images have to be decompressed. Tests have shown that there are some limitation
in some Image&nbsp;I/O codecs concerning images in the CMYK color space. Work-arounds are
in some Image&amp;nbsp;I/O codecs concerning images in the CMYK color space. Work-arounds are
in place but may not always work as expected.
</p>
</section>
<section id="png">
<title>PNG</title>
<p>
PNG images are supported through an Image&nbsp;I/O codec. Transparency is supported but
PNG images are supported through an Image&amp;nbsp;I/O codec. Transparency is supported but
not guaranteed to work with every output format.
</p>
</section>
@@ -497,7 +497,7 @@
<p>
FOP can embed TIFF images without decompression into PDF, PostScript and AFP if they
have either CCITT T.4, CCITT T.6, or JPEG compression. Otherwise, a TIFF-capable
Image&nbsp;I/O codec is necessary for decoding the image.
Image&amp;nbsp;I/O codec is necessary for decoding the image.
</p>
<p>
There may be some limitation concerning images in the CMYK color space.
@@ -564,4 +564,4 @@
</p>
</section>
</body>
</document>
</document>

+ 15
- 15
src/documentation/content/xdocs/0.95/hyphenation.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,7 +19,7 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document>
<header>
<title>Apache FOP: Hyphenation</title>
<title>Apache FOP: Hyphenation</title>
<version>$Revision$</version>
</header>
<body>
@@ -27,7 +27,7 @@
<title>Hyphenation Support</title>
<section id="intro">
<title>Introduction</title>
<p>FOP uses Liang's hyphenation algorithm, well known from TeX. It needs
<p>Apache™ FOP uses Liang's hyphenation algorithm, well known from TeX. It needs
language specific pattern and other data for operation.</p>
<p>Because of <a href="#license-issues">licensing issues</a> (and for
convenience), all hyphenation patterns for FOP are made available through
@@ -145,16 +145,16 @@
confirming their accuracy, or raising specific problems that we can
address.</warning>
<ul>
<li>The root of the pattern file is the &lt;hyphenation-info> element.</li>
<li>&lt;hyphen-char>: its attribute "value" contains the character signalling
a hyphen in the &lt;exceptions> section. It has nothing to do with the
<li>The root of the pattern file is the &lt;hyphenation-info&gt; element.</li>
<li>&lt;hyphen-char&gt;: its attribute "value" contains the character signalling
a hyphen in the &lt;exceptions&gt; section. It has nothing to do with the
hyphenation character used in FOP, use the XSLFO hyphenation-character
property for defining the hyphenation character there. At some points
a dash U+002D is hardwired in the code, so you'd better use this too
(patches to rectify the situation are welcome). There is no default,
if you declare exceptions with hyphenations, you must declare the
hyphen-char too.</li>
<li>&lt;hyphen-min> contains two attributes:
<li>&lt;hyphen-min&gt; contains two attributes:
<ul>
<li>before: the minimum number of characters in a word allowed to exist
on a line immediately preceding a hyphenated word-break.</li>
@@ -164,23 +164,23 @@
This element is unused and not even read. It should be considered a
documentation for parameters used during pattern generation.
</li>
<li>&lt;classes> contains whitespace-separated character sets. The members
<li>&lt;classes&gt; contains whitespace-separated character sets. The members
of each set should be treated as equivalent for purposes of hyphenation,
usually upper and lower case of the same character. The first character
of the set is the canonical character, the patterns and exceptions
should only contain these canonical representation characters (except
digits for weight, the period (.) as word delimiter in the patterns and
the hyphen char in exceptions, of course).</li>
<li>&lt;exceptions> contains whitespace-separated words, each of which
<li>&lt;exceptions&gt; contains whitespace-separated words, each of which
has either explicit hyphen characters to denote acceptable breakage
points, or no hyphen characters, to indicate that this word should
never be hyphenated, or contain explicit &lt;hyp> elements for specifying
changes of spelling due to hyphenation (like backen -> bak-ken or
Stoffarbe -> Stoff-farbe in the old german spelling). Exceptions override
the patterns described below. Explicit &lt;hyp> declarations don't work
never be hyphenated, or contain explicit &lt;hyp&gt; elements for specifying
changes of spelling due to hyphenation (like backen -&gt; bak-ken or
Stoffarbe -&gt; Stoff-farbe in the old german spelling). Exceptions override
the patterns described below. Explicit &lt;hyp&gt; declarations don't work
yet (patches welcome). Exceptions are generally a bit brittle, test
carefully.</li>
<li>&lt;patterns> includes whitespace-separated patterns, which are what
<li>&lt;patterns&gt; includes whitespace-separated patterns, which are what
drive most hyphenation decisions. The characters in these patterns are
explained as follows:
<ul>
@@ -234,4 +234,4 @@
hyphenation.</p>
</section>
</body>
</document>
</document>

+ 3
- 3
src/documentation/content/xdocs/0.95/index.xml View File

@@ -19,14 +19,14 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document>
<header>
<title>Apache FOP Version 0.95</title>
<title>Apache FOP Version 0.95</title>
<version>$Revision$</version>
</header>
<body>
<section id="intro">
<title>Introduction</title>
<p>
The Apache FOP team is proud to present to you this production quality release.
The Apache FOP team is proud to present to you this production quality release.
We're still in the process of adding new features. We welcome any feedback you
might have and even more, any other form of help to get the project forward.
</p>
@@ -51,4 +51,4 @@
</p>
</section>
</body>
</document>
</document>

+ 3
- 3
src/documentation/content/xdocs/0.95/intermediate.xml View File

@@ -19,13 +19,13 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document>
<header>
<title>Intermediate Format</title>
<title>Apache™ FOP: Intermediate Format</title>
<version>$Revision$</version>
</header>
<body>
<note>
Please note that the intermediate format is an <strong>advanced feature</strong> and can be ignored by most
users of Apache FOP.
users of Apache FOP.
</note>
<section id="introduction">
<title>Introduction</title>
@@ -143,4 +143,4 @@ try {
</section>
</section>
</body>
</document>
</document>

+ 4
- 5
src/documentation/content/xdocs/0.95/knownissues_overview.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,7 +19,7 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document xmlns:xi="http://www.w3.org/2001/XInclude">
<header>
<title>Apache FOP: Known Issues</title>
<title>Apache FOP: Known Issues</title>
<version>$Revision$</version>
</header>
<body>
@@ -30,7 +30,7 @@
</p>
<note>
<p>
For additional information on known issues in Apache FOP, please have a look at the following pages, too:
For additional information on known issues in Apache FOP, please have a look at the following pages, too:
</p>
<ul>
<li><a href="../bugs.html">the bug list in Bugzilla</a></li>
@@ -66,5 +66,4 @@
</section>
</section>
</body>
</document>

</document>

+ 4
- 4
src/documentation/content/xdocs/0.95/metadata.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,7 +19,7 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "document-v20.dtd">
<document>
<header>
<title>Metadata</title>
<title>Apache™ FOP: Metadata</title>
</header>
<body>
<section id="overview">
@@ -42,7 +42,7 @@
<title>Embedding XMP in an XSL-FO document</title>
<p>
As noted above, there's no officially recommended way to embed metadata in XSL-FO.
Apache FOP supports embedding XMP in XSL-FO. Currently, only support for document-level
Apache FOP supports embedding XMP in XSL-FO. Currently, only support for document-level
metadata is implemented. Object-level metadata will be implemented when there's
interest.
</p>
@@ -240,4 +240,4 @@
</ul>
</section>
</body>
</document>
</document>

+ 4
- 6
src/documentation/content/xdocs/0.95/output.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -20,7 +20,7 @@
<!-- Output Formats: Renderers -->
<document>
<header>
<title>Apache FOP Output Formats</title>
<title>Apache FOP Output Formats</title>
<version>$Revision$</version>
<authors>
<person name="Keiron Liddle" email="keiron@aftexsw.com"/>
@@ -30,7 +30,7 @@

<body>
<p>
FOP supports multiple output formats by using a different renderer for each format.
Apache™ FOP supports multiple output formats by using a different renderer for each format.
The renderers do not all have the same set of capabilities, sometimes because of
the output format itself, sometimes because some renderers get more development
attention than others.
@@ -911,6 +911,4 @@ out = proc.getOutputStream();]]></source>
</section>

</body>
</document>


</document>

+ 3
- 3
src/documentation/content/xdocs/0.95/pdfa.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,7 +19,7 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "document-v20.dtd">
<document>
<header>
<title>PDF/A (ISO 19005)</title>
<title>Apache™ FOP: PDF/A (ISO 19005)</title>
<version>$Revision$</version>
<authors>
<person name="Jeremias Märki" email="jeremias@apache.org"/>
@@ -153,4 +153,4 @@ Fop fop = fopFactory.newFop(MimeConstants.MIME_PDF, userAgent);
</p>
</section>
</body>
</document>
</document>

+ 4
- 4
src/documentation/content/xdocs/0.95/pdfencryption.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,7 +19,7 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document>
<header>
<title>PDF encryption.</title>
<title>Apache™ FOP: PDF encryption.</title>
<version>$Revision$</version>
<authors>
<person name="J.Pietschmann" email="pietsch@apache.org"/>
@@ -30,7 +30,7 @@
<section>
<title>Overview</title>
<p>
FOP supports encryption of PDF output, thanks to Patrick
Apache™ FOP supports encryption of PDF output, thanks to Patrick
C. Lankswert. This feature is commonly used to prevent
unauthorized viewing, printing, editing, copying text from the
document and doing annotations. It is also possible to ask the
@@ -222,4 +222,4 @@ Fop fop = fopFactory.newFop(MimeConstants.MIME_PDF, userAgent);
</p>
</section>
</body>
</document>
</document>

+ 3
- 3
src/documentation/content/xdocs/0.95/pdfx.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Copyright 2006 The Apache Software Foundation

@@ -18,7 +18,7 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "document-v20.dtd">
<document>
<header>
<title>PDF/X (ISO 15930)</title>
<title>Apache™ FOP: PDF/X (ISO 15930)</title>
<version>$Revision$</version>
<authors>
<person name="Jeremias Märki" email="jeremias@apache.org"/>
@@ -133,4 +133,4 @@ Fop fop = fopFactory.newFop(MimeConstants.MIME_PDF, userAgent);
</p>
</section>
</body>
</document>
</document>

+ 9
- 9
src/documentation/content/xdocs/0.95/running.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,7 +19,7 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document>
<header>
<title>Running Apache FOP</title>
<title>Running Apache FOP</title>
<version>$Revision$</version>
</header>

@@ -32,13 +32,13 @@
Java 1.4.x or later Runtime Environment.
<ul>
<li>
Many JREs >=1.4 contain older JAXP implementations (which often contain bugs). It's
Many JREs &gt;=1.4 contain older JAXP implementations (which often contain bugs). It's
usually a good idea to replace them with a current implementation.
</li>
</ul>
</li>
<li>
Apache FOP. The <a href="../download.html">FOP distribution</a> includes all libraries that you will
Apache FOP. The <a href="../download.html">FOP distribution</a> includes all libraries that you will
need to run a basic FOP installation. These can be found in the [fop-root]/lib directory. These
libraries include the following:
<ul>
@@ -190,8 +190,8 @@ Fop [options] [-fo|-xml] infile [-xsl file] [-awt|-pdf|-mif|-rtf|-tiff|-png|-pcl
<title>Writing your own script</title>
<p>FOP's entry point for your own scripts is the class
<code>org.apache.fop.cli.Main</code>. The general pattern for the
command line is: <code>java -classpath &lt;CLASSPATH>
org.apache.fop.cli.Main &lt;arguments></code>. The arguments
command line is: <code>java -classpath &lt;CLASSPATH&gt;
org.apache.fop.cli.Main &lt;arguments&gt;</code>. The arguments
consist of the options and infile and outfile specifications
as shown above for the standard scripts. You may wish to review
the standard scripts to make sure that
@@ -202,7 +202,7 @@ Fop [options] [-fo|-xml] infile [-xsl file] [-awt|-pdf|-mif|-rtf|-tiff|-png|-pcl
<title>Running with java's <code>-jar</code> option</title>
<p>
As an alternative to the start scripts you can run <code>java
-jar path/to/build/fop.jar &lt;arguments></code>, relying on
-jar path/to/build/fop.jar &lt;arguments&gt;</code>, relying on
FOP to build the classpath for running FOP dynamically, see <a
href="#dynamical-classpath">below</a>. If you use hyphenation,
you must put <code>fop-hyph.jar</code> in the <code>lib</code>
@@ -210,7 +210,7 @@ Fop [options] [-fo|-xml] infile [-xsl file] [-awt|-pdf|-mif|-rtf|-tiff|-png|-pcl
</p>

<p>You can also run <code>java -jar path/to/fop.jar
&lt;arguments></code>, relying on the <code>Class-Path</code>
&lt;arguments&gt;</code>, relying on the <code>Class-Path</code>
entry in the manifest file. This works if you put
<code>fop.jar</code> and all jar files from the <code>lib</code>
directory in a single directory. If you use hyphenation, you
@@ -347,4 +347,4 @@ Fop [options] [-fo|-xml] infile [-xsl file] [-awt|-pdf|-mif|-rtf|-tiff|-png|-pcl
<p>If you have problems running FOP, please see the <a href="../gethelp.html">"How to get Help" page</a>.</p>
</section>
</body>
</document>
</document>

+ 4
- 4
src/documentation/content/xdocs/0.95/servlets.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,15 +19,15 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document>
<header>
<title>Servlets</title>
<subtitle>How to use Apache FOP in a Servlet</subtitle>
<title>Apache™ FOP: Servlets</title>
<subtitle>How to use Apache FOP in a Servlet</subtitle>
<version>$Revision$</version>
</header>
<body>
<section id="overview">
<title>Overview</title>
<p>
This page discusses topic all around using Apache FOP in a servlet environment.
This page discusses topic all around using Apache FOP in a servlet environment.
</p>
</section>
<section id="example-servlets">

+ 3
- 3
src/documentation/content/xdocs/0.95/upgrading.xml View File

@@ -19,14 +19,14 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document>
<header>
<title>Upgrading from an Earlier Version of Apache FOP</title>
<title>Upgrading from an Earlier Version of Apache FOP</title>
<version>$Revision$</version>
</header>
<body>
<section id="important">
<title>Important!</title>
<p>
If you're planning to upgrade to the latest FOP version there are a few very important things
If you're planning to upgrade to the latest Apache™ FOP version there are a few very important things
to consider:
</p>
<ul>
@@ -123,4 +123,4 @@
</ul>
</section>
</body>
</document>
</document>

+ 4
- 4
src/documentation/content/xdocs/1.0/accessibility.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,7 +19,7 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "document-v20.dtd">
<document>
<header>
<title>Accessibility</title>
<title>Apache™ FOP: Accessibility</title>
</header>
<body>
<section id="overview">
@@ -27,7 +27,7 @@
<p>
This page describes the
<a href="http://en.wikipedia.org/wiki/Accessibility">accessibility</a>
features of Apache FOP.
features of Apache FOP.
<a href="http://www.section508.gov/">Section 508</a> defines accessibility in the context
of electronic documents for the USA but other countries have similar requirements.
</p>
@@ -164,4 +164,4 @@
</ul>
</section>
</body>
</document>
</document>

+ 4
- 5
src/documentation/content/xdocs/1.0/anttask.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,12 +19,12 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document>
<header>
<title>Ant task</title>
<title>Apache™ FOP: Ant task</title>
<version>$Revision$</version>
</header>
<body>
<p>
Apache FOP provides an Ant task for automating the document build process.
Apache FOP provides an Ant task for automating the document build process.
</p>
<section id="basics">
<title>Description</title>
@@ -233,5 +233,4 @@
]]></source>
</section>
</body>
</document>

</document>

+ 4
- 5
src/documentation/content/xdocs/1.0/compiling.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,14 +19,14 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document>
<header>
<title>Apache FOP: Building from Source Code</title>
<title>Apache FOP: Building from Source Code</title>
<version>$Revision$</version>
</header>
<body>
<section id="build-needed">
<title>Do You Need To Build?</title>
<p>
FOP distributions are either pre-compiled binary or source.
Apache™ FOP distributions are either pre-compiled binary or source.
If you are using a binary distribution, it is already built and there is no need to build it again.
See the <a href="../download.html">Download Instructions</a> for information about whether a
binary or source distribution is best for your needs.
@@ -137,5 +137,4 @@
</ul>
</section>
</body>
</document>

</document>

+ 3
- 4
src/documentation/content/xdocs/1.0/configuration.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,7 +19,7 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document>
<header>
<title>Apache FOP: Configuration</title>
<title>Apache FOP: Configuration</title>
<version>$Revision$</version>
</header>

@@ -489,5 +489,4 @@ information it finds. Check if FOP finds what you expect.</li>

</section>
</body>
</document>

</document>

+ 5
- 6
src/documentation/content/xdocs/1.0/embedding.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -20,8 +20,8 @@
<!-- Embedding FOP -->
<document>
<header>
<title>Apache FOP: Embedding</title>
<subtitle>How to Embed FOP in a Java application</subtitle>
<title>Apache FOP: Embedding</title>
<subtitle>How to Embed Apache� FOP in a Java application</subtitle>
<version>$Revision$</version>
</header>

@@ -33,7 +33,7 @@
to embedded applications as well as command-line use, such as options and performance.
</p>
<p>
To embed Apache FOP in your application, first create a new
To embed Apache FOP in your application, first create a new
org.apache.fop.apps.FopFactory instance. This object can be used to launch multiple
rendering runs. For each run, create a new org.apache.fop.apps.Fop instance through
one of the factory methods of FopFactory. In the method call you specify which output
@@ -698,5 +698,4 @@ mailing list.
</section>
</section>
</body>
</document>

</document>

+ 3
- 3
src/documentation/content/xdocs/1.0/events.xml View File

@@ -19,14 +19,14 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document>
<header>
<title>Events/Processing Feedback</title>
<title>Apache™ FOP: Events/Processing Feedback</title>
<version>$Revision$</version>
</header>
<body>
<section id="introduction">
<title>Introduction</title>
<p>
In versions until 0.20.5, FOP used
In versions until 0.20.5, Apache™ FOP used
<a href="http://excalibur.apache.org/framework/index.html">Avalon-style Logging</a> where
it was possible to supply a logger per processing run. During the redesign
the logging infrastructure was switched over to
@@ -446,4 +446,4 @@ producer.complain(this, "I'm tired", 23);]]></source>
</section>
</section>
</body>
</document>
</document>

+ 4
- 5
src/documentation/content/xdocs/1.0/extensions.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,14 +19,14 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document>
<header>
<title>Standard FOP Extensions</title>
<title>Standard Apache™ FOP Extensions</title>
<version>$Revision$</version>
</header>
<body>
<p>
By "extension", we mean any data that can be placed in the input XML document that
is not addressed by the XSL-FO standard.
By having a mechanism for supporting extensions, FOP is able to add features that
By having a mechanism for supporting extensions, Apache™ FOP is able to add features that
are not covered in the specification.
</p>
<p>
@@ -336,5 +336,4 @@ to following pages. Here is an example of FO code creating such a table-header:<
</section>
</section>
</body>
</document>

</document>

+ 4
- 4
src/documentation/content/xdocs/1.0/fonts.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,7 +19,7 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document>
<header>
<title>Apache FOP: Fonts</title>
<title>Apache FOP: Fonts</title>
<version>$Revision$</version>
<authors>
<person name="Jeremias M&#xE4;rki" email=""/>
@@ -31,7 +31,7 @@
<body>
<section id="intro">
<title>Summary</title>
<p>The following table summarizes the font capabilities of the various FOP renderers:</p>
<p>The following table summarizes the font capabilities of the various Apache� FOP renderers:</p>
<table>
<tr>
<th>Renderer</th>
@@ -561,4 +561,4 @@
</p>
</section>
</body>
</document>
</document>

+ 35
- 35
src/documentation/content/xdocs/1.0/graphics.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,7 +19,7 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document>
<header>
<title>Apache FOP: Graphics Formats</title>
<title>Apache FOP: Graphics Formats</title>
<version>$Revision$</version>
</header>
<body>
@@ -30,7 +30,7 @@
</p>
<ul>
<li>
The image libraries Jimi and JAI are not supported. Instead, Apache FOP uses the
The image libraries Jimi and JAI are not supported. Instead, Apache FOP uses the
Image I/O API that was introduced with Java 1.4 for all bitmap codecs.
</li>
<li>
@@ -73,65 +73,65 @@
<tr>
<td><a href="#bmp">BMP</a> (Microsoft Windows Bitmap)</td>
<td>bitmap</td>
<td></td>
<td></td>
<td/>
<td/>
<td>X [1]</td>
</tr>
<tr>
<td><a href="#emf">EMF</a> (Windows Enhanced Metafile)</td>
<td>vector (with embedded bitmaps)</td>
<td>(X)</td>
<td></td>
<td></td>
<td/>
<td/>
</tr>
<tr>
<td><a href="#eps">EPS</a> (Encapsulated PostScript)</td>
<td>metafile (both bitmap and vector), most frequently used for vector drawings</td>
<td>(X)</td>
<td></td>
<td></td>
<td/>
<td/>
</tr>
<tr>
<td>GIF (Graphics Interchange Format)</td>
<td>bitmap</td>
<td></td>
<td></td>
<td/>
<td/>
<td>X</td>
</tr>
<tr>
<td><a href="#jpeg">JPEG</a> (Joint Photographic Experts Group)</td>
<td>bitmap</td>
<td>(X)</td>
<td></td>
<td/>
<td>X</td>
</tr>
<tr>
<td><a href="#png">PNG</a> (Portable Network Graphic)</td>
<td>bitmap</td>
<td></td>
<td></td>
<td/>
<td/>
<td>X</td>
</tr>
<tr>
<td><a href="#svg">SVG</a> (Scalable Vector Graphics)</td>
<td>vector (with embedded bitmaps)</td>
<td></td>
<td/>
<td>X</td>
<td></td>
<td/>
</tr>
<tr>
<td><a href="#tiff">TIFF</a> (Tag Image Format File)</td>
<td>bitmap</td>
<td>(X)</td>
<td></td>
<td/>
<td>X [1]</td>
</tr>
<tr>
<td><a href="#wmf">WMF</a> (Windows Metafile)</td>
<td>vector (with embedded bitmaps)</td>
<td></td>
<td/>
<td>(X)</td>
<td></td>
<td/>
</tr>
</table>
<p>
@@ -149,7 +149,7 @@
<note>
<a href="http://jai-imageio.dev.java.net/">JAI Image I/O Tools</a> is not the same as the
<a href="http://java.sun.com/javase/technologies/desktop/media/jai/">JAI library</a>! The
former simply exposes JAI's codecs using the Image&nbsp;I/O API but does not include all
former simply exposes JAI's codecs using the Image&amp;nbsp;I/O API but does not include all
the image manipulation functionality.
</note>
<section id="format-map">
@@ -181,21 +181,21 @@
</tr>
<tr>
<td><a href="#emf">EMF</a> (Windows Enhanced Metafile)</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td/>
<td/>
<td/>
<td/>
<td/>
<td>X [1]</td>
</tr>
<tr>
<td><a href="#eps">EPS</a> (Encapsulated PostScript)</td>
<td></td>
<td/>
<td>X [1]</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td/>
<td/>
<td/>
<td/>
</tr>
<tr>
<td>GIF (Graphics Interchange Format)</td>
@@ -361,7 +361,7 @@
<section id="gif">
<title>GIF</title>
<p>
GIF images are supported through an Image&nbsp;I/O codec. Transparency is supported but
GIF images are supported through an Image&amp;nbsp;I/O codec. Transparency is supported but
not guaranteed to work with every output format.
</p>
</section>
@@ -376,14 +376,14 @@
through without decompression. User reports indicate that grayscale, RGB, and
CMYK color spaces are all rendered properly. However, for other output formats, the
JPEG images have to be decompressed. Tests have shown that there are some limitation
in some Image&nbsp;I/O codecs concerning images in the CMYK color space. Work-arounds are
in some Image&amp;nbsp;I/O codecs concerning images in the CMYK color space. Work-arounds are
in place but may not always work as expected.
</p>
</section>
<section id="png">
<title>PNG</title>
<p>
PNG images are supported through an Image&nbsp;I/O codec. Transparency is supported but
PNG images are supported through an Image&amp;nbsp;I/O codec. Transparency is supported but
not guaranteed to work with every output format.
</p>
</section>
@@ -520,7 +520,7 @@
<p>
FOP can embed TIFF images without decompression into PDF, PostScript and AFP if they
have either CCITT T.4, CCITT T.6, or JPEG compression. Otherwise, a TIFF-capable
Image&nbsp;I/O codec is necessary for decoding the image.
Image&amp;nbsp;I/O codec is necessary for decoding the image.
</p>
<p>
There may be some limitation concerning images in the CMYK color space.
@@ -587,4 +587,4 @@
</p>
</section>
</body>
</document>
</document>

+ 15
- 15
src/documentation/content/xdocs/1.0/hyphenation.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,7 +19,7 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document>
<header>
<title>Apache FOP: Hyphenation</title>
<title>Apache FOP: Hyphenation</title>
<version>$Revision$</version>
</header>
<body>
@@ -27,7 +27,7 @@
<title>Hyphenation Support</title>
<section id="intro">
<title>Introduction</title>
<p>FOP uses Liang's hyphenation algorithm, well known from TeX. It needs
<p>Apache™ FOP uses Liang's hyphenation algorithm, well known from TeX. It needs
language specific pattern and other data for operation.</p>
<p>Because of <a href="#license-issues">licensing issues</a> (and for
convenience), all hyphenation patterns for FOP are made available through
@@ -145,16 +145,16 @@
confirming their accuracy, or raising specific problems that we can
address.</warning>
<ul>
<li>The root of the pattern file is the &lt;hyphenation-info> element.</li>
<li>&lt;hyphen-char>: its attribute "value" contains the character signalling
a hyphen in the &lt;exceptions> section. It has nothing to do with the
<li>The root of the pattern file is the &lt;hyphenation-info&gt; element.</li>
<li>&lt;hyphen-char&gt;: its attribute "value" contains the character signalling
a hyphen in the &lt;exceptions&gt; section. It has nothing to do with the
hyphenation character used in FOP, use the XSLFO hyphenation-character
property for defining the hyphenation character there. At some points
a dash U+002D is hardwired in the code, so you'd better use this too
(patches to rectify the situation are welcome). There is no default,
if you declare exceptions with hyphenations, you must declare the
hyphen-char too.</li>
<li>&lt;hyphen-min> contains two attributes:
<li>&lt;hyphen-min&gt; contains two attributes:
<ul>
<li>before: the minimum number of characters in a word allowed to exist
on a line immediately preceding a hyphenated word-break.</li>
@@ -164,23 +164,23 @@
This element is unused and not even read. It should be considered a
documentation for parameters used during pattern generation.
</li>
<li>&lt;classes> contains whitespace-separated character sets. The members
<li>&lt;classes&gt; contains whitespace-separated character sets. The members
of each set should be treated as equivalent for purposes of hyphenation,
usually upper and lower case of the same character. The first character
of the set is the canonical character, the patterns and exceptions
should only contain these canonical representation characters (except
digits for weight, the period (.) as word delimiter in the patterns and
the hyphen char in exceptions, of course).</li>
<li>&lt;exceptions> contains whitespace-separated words, each of which
<li>&lt;exceptions&gt; contains whitespace-separated words, each of which
has either explicit hyphen characters to denote acceptable breakage
points, or no hyphen characters, to indicate that this word should
never be hyphenated, or contain explicit &lt;hyp> elements for specifying
changes of spelling due to hyphenation (like backen -> bak-ken or
Stoffarbe -> Stoff-farbe in the old german spelling). Exceptions override
the patterns described below. Explicit &lt;hyp> declarations don't work
never be hyphenated, or contain explicit &lt;hyp&gt; elements for specifying
changes of spelling due to hyphenation (like backen -&gt; bak-ken or
Stoffarbe -&gt; Stoff-farbe in the old german spelling). Exceptions override
the patterns described below. Explicit &lt;hyp&gt; declarations don't work
yet (patches welcome). Exceptions are generally a bit brittle, test
carefully.</li>
<li>&lt;patterns> includes whitespace-separated patterns, which are what
<li>&lt;patterns&gt; includes whitespace-separated patterns, which are what
drive most hyphenation decisions. The characters in these patterns are
explained as follows:
<ul>
@@ -234,4 +234,4 @@
hyphenation.</p>
</section>
</body>
</document>
</document>

+ 3
- 3
src/documentation/content/xdocs/1.0/index.xml View File

@@ -19,14 +19,14 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document>
<header>
<title>Apache FOP Version 1.0</title>
<title>Apache FOP Version 1.0</title>
<version>$Revision$</version>
</header>
<body>
<section id="intro">
<title>Introduction</title>
<p>
The Apache FOP team is proud to present to you this production
The Apache FOP team is proud to present to you this production
quality codebase. FOP 1.0 provides a good subset of the W3C
XSL-FO 1.0 and 1.1 Standards. Its stable, 1.0 designation
provides added recognition as the productive tool it has been
@@ -64,4 +64,4 @@
</p>
</section>
</body>
</document>
</document>

+ 3
- 3
src/documentation/content/xdocs/1.0/intermediate.xml View File

@@ -19,13 +19,13 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document>
<header>
<title>Intermediate Format</title>
<title>Apache™ FOP: Intermediate Format</title>
<version>$Revision$</version>
</header>
<body>
<note>
Please note that the intermediate formats described here are
<strong>advanced features</strong> and can be ignored by most users of Apache FOP.
<strong>advanced features</strong> and can be ignored by most users of Apache FOP.
</note>
<section id="introduction">
<title>Introduction</title>
@@ -328,4 +328,4 @@ try {
</section>
</section>
</body>
</document>
</document>

+ 5
- 6
src/documentation/content/xdocs/1.0/knownissues_overview.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,7 +19,7 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document xmlns:xi="http://www.w3.org/2001/XInclude">
<header>
<title>Apache FOP: Known Issues</title>
<title>Apache FOP: Known Issues</title>
<version>$Revision$</version>
</header>
<body>
@@ -30,7 +30,7 @@
</p>
<note>
<p>
For additional information on known issues in Apache FOP, please have a look at the following pages, too:
For additional information on known issues in Apache FOP, please have a look at the following pages, too:
</p>
<ul>
<li><a href="../bugs.html">the bug list in Bugzilla</a></li>
@@ -38,7 +38,7 @@
</ul>
</note>
<p>
Apache FOP has an extensive automated testing infrastructure. Parts of this infrastructure are several
Apache FOP has an extensive automated testing infrastructure. Parts of this infrastructure are several
sets of test cases. When a test case is listed in disabled-testcases.xml it is disabled in the JUnit
tests during the normal build process. This indicates a problem in the current codebase. When a bug is
fixed or a missing feature is added the entry for the relevant test case(s) are removed.
@@ -66,5 +66,4 @@
</section>
</section>
</body>
</document>

</document>

+ 3
- 3
src/documentation/content/xdocs/1.0/metadata.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,7 +19,7 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "document-v20.dtd">
<document>
<header>
<title>Metadata</title>
<title>Apache™ FOP: Metadata</title>
</header>
<body>
<section id="overview">
@@ -240,4 +240,4 @@
</ul>
</section>
</body>
</document>
</document>

+ 5
- 8
src/documentation/content/xdocs/1.0/output.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -20,7 +20,7 @@
<!-- Output Formats: Renderers -->
<document>
<header>
<title>Apache FOP Output Formats</title>
<title>Apache FOP Output Formats</title>
<version>$Revision$</version>
<authors>
<person name="Keiron Liddle" email="keiron@aftexsw.com"/>
@@ -30,7 +30,7 @@

<body>
<p>
FOP supports multiple output formats by using a different renderer for each format.
Apache™ FOP supports multiple output formats by using a different renderer for each format.
The renderers do not all have the same set of capabilities, sometimes because of
the output format itself, sometimes because some renderers get more development
attention than others.
@@ -974,7 +974,7 @@ Note that the value of the encoding attribute in the example is the double-byte
Please refer to the <link href="#afp-resource-level-defaults">Resource Level Defaults</link>
above to see what is used if the resource-level attribute is not specified.
</p>
<p></p>
<p/>
</section>
</section>
</section>
@@ -1262,7 +1262,4 @@ Note that the value of the encoding attribute in the example is the double-byte
</section>

</body>
</document>



</document>

+ 3
- 3
src/documentation/content/xdocs/1.0/pdfa.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,7 +19,7 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "document-v20.dtd">
<document>
<header>
<title>PDF/A (ISO 19005)</title>
<title>Apache™ FOP: PDF/A (ISO 19005)</title>
<version>$Revision$</version>
<authors>
<person name="Jeremias Märki" email="jeremias@apache.org"/>
@@ -165,4 +165,4 @@ Fop fop = fopFactory.newFop(MimeConstants.MIME_PDF, userAgent);
</p>
</section>
</body>
</document>
</document>

+ 4
- 4
src/documentation/content/xdocs/1.0/pdfencryption.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,7 +19,7 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document>
<header>
<title>PDF encryption.</title>
<title>Apache™ FOP: PDF encryption.</title>
<version>$Revision$</version>
<authors>
<person name="J.Pietschmann" email="pietsch@apache.org"/>
@@ -30,7 +30,7 @@
<section>
<title>Overview</title>
<p>
FOP supports encryption of PDF output, thanks to Patrick
Apache™ FOP supports encryption of PDF output, thanks to Patrick
C. Lankswert. This feature is commonly used to prevent
unauthorized viewing, printing, editing, copying text from the
document and doing annotations. It is also possible to ask the
@@ -225,4 +225,4 @@ Fop fop = fopFactory.newFop(MimeConstants.MIME_PDF, userAgent);
</p>
</section>
</body>
</document>
</document>

+ 5
- 5
src/documentation/content/xdocs/1.0/pdfx.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Copyright 2006 The Apache Software Foundation

@@ -18,7 +18,7 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "document-v20.dtd">
<document>
<header>
<title>PDF/X (ISO 15930)</title>
<title>Apache™ FOP: PDF/X (ISO 15930)</title>
<version>$Revision$</version>
<authors>
<person name="Jeremias Märki" email="jeremias@apache.org"/>
@@ -28,8 +28,8 @@
<section id="overview">
<title>Overview</title>
<warning>
Support for PDF/X is available beginning with version 0.93. This feature is new and
may not be 100% complete, yet. Feedback is welcome.
Support for PDF/X is available beginning with Apache™ FOP version 0.93.
This feature is new and may not be 100% complete, yet. Feedback is welcome.
</warning>
<p>
PDF/X is a standard which faciliates prepress digital data exchange using PDF.
@@ -133,4 +133,4 @@ Fop fop = fopFactory.newFop(MimeConstants.MIME_PDF, userAgent);
</p>
</section>
</body>
</document>
</document>

+ 9
- 9
src/documentation/content/xdocs/1.0/running.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,7 +19,7 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document>
<header>
<title>Running Apache FOP</title>
<title>Running Apache FOP</title>
<version>$Revision$</version>
</header>

@@ -32,13 +32,13 @@
Java 1.4.x or later Runtime Environment.
<ul>
<li>
Many JREs >=1.4 contain older JAXP implementations (which often contain bugs). It's
Many JREs &gt;=1.4 contain older JAXP implementations (which often contain bugs). It's
usually a good idea to replace them with a current implementation.
</li>
</ul>
</li>
<li>
Apache FOP. The <a href="../download.html">FOP distribution</a> includes all libraries that you will
Apache FOP. The <a href="../download.html">FOP distribution</a> includes all libraries that you will
need to run a basic FOP installation. These can be found in the [fop-root]/lib directory. These
libraries include the following:
<ul>
@@ -202,8 +202,8 @@ Fop [options] [-fo|-xml] infile [-xsl file] [-awt|-pdf|-mif|-rtf|-tiff|-png|-pcl
<title>Writing your own script</title>
<p>FOP's entry point for your own scripts is the class
<code>org.apache.fop.cli.Main</code>. The general pattern for the
command line is: <code>java -classpath &lt;CLASSPATH>
org.apache.fop.cli.Main &lt;arguments></code>. The arguments
command line is: <code>java -classpath &lt;CLASSPATH&gt;
org.apache.fop.cli.Main &lt;arguments&gt;</code>. The arguments
consist of the options and infile and outfile specifications
as shown above for the standard scripts. You may wish to review
the standard scripts to make sure that
@@ -214,7 +214,7 @@ Fop [options] [-fo|-xml] infile [-xsl file] [-awt|-pdf|-mif|-rtf|-tiff|-png|-pcl
<title>Running with java's <code>-jar</code> option</title>
<p>
As an alternative to the start scripts you can run <code>java
-jar path/to/build/fop.jar &lt;arguments></code>, relying on
-jar path/to/build/fop.jar &lt;arguments&gt;</code>, relying on
FOP to build the classpath for running FOP dynamically, see <a
href="#dynamical-classpath">below</a>. If you use hyphenation,
you must put <code>fop-hyph.jar</code> in the <code>lib</code>
@@ -222,7 +222,7 @@ Fop [options] [-fo|-xml] infile [-xsl file] [-awt|-pdf|-mif|-rtf|-tiff|-png|-pcl
</p>

<p>You can also run <code>java -jar path/to/fop.jar
&lt;arguments></code>, relying on the <code>Class-Path</code>
&lt;arguments&gt;</code>, relying on the <code>Class-Path</code>
entry in the manifest file. This works if you put
<code>fop.jar</code> and all jar files from the <code>lib</code>
directory in a single directory. If you use hyphenation, you
@@ -359,4 +359,4 @@ Fop [options] [-fo|-xml] infile [-xsl file] [-awt|-pdf|-mif|-rtf|-tiff|-png|-pcl
<p>If you have problems running FOP, please see the <a href="../gethelp.html">"How to get Help" page</a>.</p>
</section>
</body>
</document>
</document>

+ 4
- 4
src/documentation/content/xdocs/1.0/servlets.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,15 +19,15 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document>
<header>
<title>Servlets</title>
<subtitle>How to use Apache FOP in a Servlet</subtitle>
<title>Apache™ FOP: Servlets</title>
<subtitle>How to use Apache FOP in a Servlet</subtitle>
<version>$Revision$</version>
</header>
<body>
<section id="overview">
<title>Overview</title>
<p>
This page discusses topic all around using Apache FOP in a servlet environment.
This page discusses topic all around using Apache FOP in a servlet environment.
</p>
</section>
<section id="example-servlets">

+ 4
- 4
src/documentation/content/xdocs/1.0/upgrading.xml View File

@@ -19,15 +19,15 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document>
<header>
<title>Upgrading from an Earlier Version of Apache FOP</title>
<title>Upgrading from an Earlier Version of Apache FOP</title>
<version>$Revision$</version>
</header>
<body>
<section id="important">
<title>Important!</title>
<p>
If you're planning to upgrade to the latest FOP version there are a few very important things
to consider:
If you're planning to upgrade to the latest Apache™ FOP version there are a few very important
things to consider:
</p>
<ul>
<li>
@@ -125,4 +125,4 @@
</ul>
</section>
</body>
</document>
</document>

+ 5
- 2
src/documentation/content/xdocs/bugs.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -20,7 +20,7 @@

<document>
<header>
<title>FOP: Bugs and Other Trackable Issues</title>
<title>Apache™ FOP: Bugs and Other Trackable Issues</title>
<version>$Revision$</version>
</header>
<body>
@@ -64,3 +64,6 @@ sent to the FOP developer discussion list.</li>
</section>
</body>
</document>




+ 6
- 6
src/documentation/content/xdocs/compliance.ihtml View File

@@ -19,13 +19,13 @@

<html>
<head>
<title>Apache FOP Compliance Page</title>
<title>Apache FOP Compliance Page</title>
</head>

<body>
<h1>W3C XSL-FO 1.1 Standard</h1>

<p>One of FOP's design goals is conformance to the <a href=
<p>One of Apache™ FOP's design goals is conformance to the <a href=
"http://www.w3.org/TR/xsl/">W3C XSL-FO 1.1 standard</a>, which specifies three
levels of "conformance": basic, extended, and complete. Although FOP does not currently conform
to any of these levels, it is nevertheless a useful work-in-progress for many applications. The
@@ -3669,10 +3669,10 @@
"http://www.w3.org/TR/xsl/#format">&sect;7.26.1</a></td>
<td><a name="fo-property-format" id="fo-property-format">format</a></td>
<td class="basic">Basic</td>
<td class="yes">yes</td>
<td class="yes">yes</td>
<td class="yes">yes</td>
<td>&nbsp;</td>
<td class="partial">partial</td>
<td class="partial">partial</td>
<td class="partial">partial</td>
<td>only values '0*1', 'a', 'A', 'i', 'I' supported</td>
</tr>
<tr>
<td align="center"><a href=

+ 0
- 42
src/documentation/content/xdocs/dev/api-doc.xml View File

@@ -1,42 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!-- $Id$ -->
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.3//EN" "http://forrest.apache.org/dtd/document-v13.dtd">
<document>
<header>
<title>FOP Development: API Documentation (javadocs)</title>
<version>$Revision$</version>
</header>
<body>
<section id="gump">
<title>On-line Access (through Gump)</title>
<p>FOP (and many other Apache projects) use <link href="http://gump.apache.org/">Apache Gump</link> to do a test build several times each day. One of the useful byproducts of this process is that javadocs can be created and made available.</p>
<p>First, determine which line of development code you wish to see. If you don't know, you probably want the "Maintenance Branch", which is the line that currently produces FOP releases. See <link href="index.html#lines">Development Lines</link> for more details.</p>
<warning>Javadocs for both development lines are made from current SVN code, and are not tied to any particular release. Both the documentation and the API may be different, even if you are working with the correct branch. Currently, the only way to obtain API documentation for a specific release is to <link href="#self-built">build it yourself</link>.</warning>
<ul>
<li><link href="http://gump.apache.org/javadoc/xml-fop-maintenance/build/javadocs/index.html">Javadocs for Maintenance Branch</link></li>
<li><link href="http://gump.apache.org/javadoc/xml-fop/build/javadocs/index.html">Javadocs for Trunk (Redesign)</link></li>
</ul>
<note>If the links return an "Object not found!" message or otherwise do not work properly, it is probably because of a build error. Please raise a question on the <link href="../maillist.html#fop-user">FOP User Mailing List</link> so that any problems can be fixed before the next build.</note>
</section>
<section id="self-built">
<title>Building them Yourself</title>
<p>See <link href="../download.html#source">Source Download</link> for instructions on obtaining the source code. Then see <link href="../trunk/compiling.html">Building FOP</link> for instructions on running the build process. The Ant build target that you will use to generate the API documentation is "javadocs", and the results will be stored in xml-fop/build/javadocs.</p>
</section>
</body>
</document>

+ 7
- 9
src/documentation/content/xdocs/dev/conventions.xml View File

@@ -19,11 +19,11 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.3//EN" "http://forrest.apache.org/dtd/document-v13.dtd">
<document>
<header>
<title>FOP Development: Coding Conventions</title>
<title>Apache™ FOP Development: Coding Conventions</title>
<version>$Revision$</version>
</header>
<body>
<p>Acknowledgement: Some content in this guide was adapted from other Apache projects such as Avalon, Cactus, Turbine and Velocity.</p>
<p>Acknowledgement: Some content in this guide was adapted from other Apache projects such as Avalon, Cactus, Turbine and Velocity.</p>
<section id="svn">
<title>Subversion Repository</title>
<p>Conventions in this section apply to Repository content, regardless of type:</p>
@@ -102,12 +102,10 @@ In general, other languages must not be used, except in translated documentation
<td>checkstyle</td>
</tr>
<tr>
<td>Personal attribution in the source code, such as @author tags and attribution comments should not be used.
Excepted from this general rule are potentially confusing or wide-ranging changes.
If such changes prove useful over time, the related comments should be removed.</td>
<td>Personal attribution tends to clutter the code.
The relevant historical information that might be useful for problem-solving is tracked in the code repository.</td>
<td>Not enforced. Anyone is free to remove such comments.</td>
<td>By <link href="http://mail-archives.apache.org/mod_mbox/jakarta-jmeter-dev/200402.mbox/%3C4039F65E.7020406@atg.com%3E">ASF policy</link>, @author tags are officially discouraged.
However it is permissible to indicate the original author(s) of an entire file or package in a comment provided it follows the copyright and license header.</td>
<td>Attribution of subsequent contributions are recorded by the SVN commit history logs, so should not be included.</td>
<td>checkstyle</td>
</tr>
</table>
<p>For developers that dislike these conventions, one workaround is to develop using their own style, then use a formatting tool like <link href="http://astyle.sourceforge.net/">astyle</link> (Artistic Style) before committing.</p>
@@ -186,4 +184,4 @@ Printing error messages to System.err or System.out is useless in a server-side
</table>
</section>
</body>
</document>
</document>

+ 3
- 3
src/documentation/content/xdocs/dev/design/areas.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,7 +19,7 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.3//EN" "http://forrest.apache.org/dtd/document-v13.dtd">
<document>
<header>
<title>FOP Design: Area Tree</title>
<title>Apache™ FOP Design: Area Tree</title>
<version>$Revision$</version>
<authors>
<person name="Keiron Liddle" email="keiron@aftexsw.com"/>
@@ -188,4 +188,4 @@ This is useful for setting the title and organising the groups of page sequences
</section>
</section>
</body>
</document>
</document>

+ 4
- 5
src/documentation/content/xdocs/dev/design/breakpos.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -20,7 +20,7 @@

<document>
<header>
<title>FOP Design: Layout Managers</title>
<title>Apache™ FOP Design: Layout Managers</title>
<subtitle>Break Possibility Proposal</subtitle>
<version>$Revision$</version>
<authors>
@@ -149,7 +149,7 @@ return potential break points.</p>
examined later.</note>
<p>So the Line LM will ask its child LM(s) for break possibilities until
it gets back a BP whose stacking dimension <em>could</em> fill the
line. This means that the BP.stackdim.max >= LineIPD.min. It can look
line. This means that the BP.stackdim.max &gt;= LineIPD.min. It can look
for further BP, perhaps one whose stackdim.opt is closer to the
LineIPD.opt. If it isn't happy with the choice of break possibilities,
it can go past the end of the line to the next one, and then try to
@@ -312,5 +312,4 @@ laying out all its material and then make all the Lines at once.</p>
</section>
</section>
</body>
</document>

</document>

+ 14
- 16
src/documentation/content/xdocs/dev/design/configuration.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -17,15 +17,15 @@
-->
<!-- $Id$ -->
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.3//EN" "http://forrest.apache.org/dtd/document-v13.dtd" [
<!ENTITY lsquo "&#x2018;">
<!ENTITY rsquo "&#x2019;">
<!ENTITY ldquo "&#x201C;">
<!ENTITY rdquo "&#x201D;">
<!ENTITY lsquo "�">
<!ENTITY rsquo "�">
<!ENTITY ldquo "�">
<!ENTITY rdquo "�">
]>

<document>
<header>
<title>FOP: Configuration and Logging</title>
<title>Apache™ FOP: Configuration and Logging</title>
<version>$Revision$</version>
</header>

@@ -33,7 +33,7 @@

<section id="general">
<title>Configuration File Basics</title>
<p>The FOP configuration file is an XML file containing a
<p>The Apache™ FOP configuration file is an XML file containing a
variety of settings that are useful for controlling FOP's
behavior, and for helping it find resources that you wish it to
use.</p>
@@ -56,7 +56,7 @@ to find it.</p>
<section id="command-line">
<title>From the Command Line</title>
<p>When you run FOP from the command-line, use the
&ldquo;<code>-c</code>&rdquo; command-line option with the path to the
&amp;ldquo;<code>-c</code>&amp;rdquo; command-line option with the path to the
configuration file as the option value.</p>
</section>

@@ -100,7 +100,7 @@ configuration object with the user agent as described above.</p>
<title>The Configuration File</title>
<p>The top-level element is arbitrary. You may give it any name
that is useful for you, e.g. <code>&lt;fop-configuration
version="2"></code>.</p>
version="2"&gt;</code>.</p>
<p>Inside the top-level element the configuration may contain
three sections: <code>userAgent</code>, <code>renderers</code>,
and <code>hyphenation</code>. At the moment of this writing the
@@ -110,7 +110,7 @@ not used by FOP.</p>
<code>renderer</code>. There may be one subsection for each type
of renderer. The renderers are identified by their MIME type,
which is given in the <code>mime</code> attribute. For example:
<code>&lt;renderer mime="application/pdf"></code>. The content
<code>&lt;renderer mime="application/pdf"&gt;</code>. The content
of each <code>renderer</code> subsection depends on the type of
renderer.</p>
<p>The PDF renderer (MIME type <code>application/pdf</code>) has
@@ -163,8 +163,7 @@ more information on creating and modifying hyphenation within FOP.</p>
<p>Font configuration information is included in the FOP
configuration file as describe above. It is documented in more
detail at <link href="../fonts.html">FOP: Fonts</link>. Note
especially the section entitled <link
href="../fonts.html#register">Register Fonts with FOP</link>.</p>
especially the section entitled <link href="../fonts.html#register">Register Fonts with FOP</link>.</p>
</section>

<section id="logging">
@@ -182,7 +181,7 @@ to use. For example:</p>
systems. On Java 1.4 systems JDK 1.4 is the default.</code></p>
<p>Secondly, you configure the selected logging package. How
this is done depends on the logging package. The most important
feature is the log level. The default is level &ldquo;info&rdquo;. An
feature is the log level. The default is level &amp;ldquo;info&amp;rdquo;. An
example configuration file for SimpleLog is:</p>
<source>
# logging level for all loggers, default info
@@ -193,7 +192,7 @@ org.apache.commons.logging.simplelog.log.xxxxx=debug
org.apache.commons.logging.simplelog.log.org.apache.fop.pdf=trace
</source>
<p>FOP uses several named loggers. When you set the logging level
for all loggers to &ldquo;info&rdquo;, you get a decent small amount
for all loggers to &amp;ldquo;info&amp;rdquo;, you get a decent small amount
of information
about application progress. The debugging and especially the trace
levels produce a lot of output. If you need these logging levels,
@@ -203,5 +202,4 @@ bear the name of their package, their class or of a superclass.</p>
</section>

</body>
</document>

</document>

+ 4
- 5
src/documentation/content/xdocs/dev/design/embedding.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -20,7 +20,7 @@

<document>
<header>
<title>FOP Design: Embedding FOP in Other Applications</title>
<title>Apache™ FOP Design: Embedding Apache� FOP in Other Applications</title>
<version>$Revision$</version>
<authors>
<person name="Keiron Liddle" email="keiron@aftexsw.com"/>
@@ -31,7 +31,7 @@
<section id="intro">
<title>Introduction</title>
<p>
This is the design for the external interface when FOP is to be embedded
This is the design for the external interface when Apache™ FOP is to be embedded
inside another java application.
</p>
<p>
@@ -146,5 +146,4 @@ remove redundancies.
</section>

</body>
</document>

</document>

+ 5
- 6
src/documentation/content/xdocs/dev/design/extending.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -20,7 +20,7 @@

<document>
<header>
<title>FOP Design: Extensions</title>
<title>Apache™ FOP Design: Extensions</title>
<version>$Revision$</version>
<authors>
<person name="Keiron Liddle" email="keiron@aftexsw.com"/>
@@ -31,7 +31,7 @@
<section id="intro">
<title>Introduction</title>
<p>
FOP provides an extension mechanism to add extra functionality. There
Apache™ FOP provides an extension mechanism to add extra functionality. There
are a number of different types of extensions that apply to different
steps when converting FO into the rendered output.
</p>
@@ -124,7 +124,7 @@ to result in a text box referencing the following PDF action:</p>
<title>Work In Progress</title>
<ul>
<li>mathml extension</li>
<li>another xml -> svg extension</li>
<li>another xml -&gt; svg extension</li>
<li>svg text normal text if that can be handled otherwise stroked this is done automatically</li>
</ul>
</section>
@@ -137,5 +137,4 @@ to result in a text box referencing the following PDF action:</p>
</section>
</section>
</body>
</document>

</document>

+ 3
- 3
src/documentation/content/xdocs/dev/design/fotree.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,7 +19,7 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.3//EN" "http://forrest.apache.org/dtd/document-v13.dtd">
<document>
<header>
<title>FOP Design: FO Tree</title>
<title>Apache™ FOP Design: FO Tree</title>
<version>$Revision$</version>
<authors>
<person name="Keiron Liddle" email="keiron@aftexsw.com"/>
@@ -140,4 +140,4 @@ The Unknown object is mainly used to provide information to the user.</p>
</section>
</section>
</body>
</document>
</document>

+ 4
- 5
src/documentation/content/xdocs/dev/design/images.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -20,7 +20,7 @@

<document>
<header>
<title>FOP Design: Images</title>
<title>Apache™ FOP Design: Images</title>
<version>$Revision$</version>
</header>
<body>
@@ -35,7 +35,7 @@ keep a list of invalid image urls.</p>
<p>We have a number of different caching schemes that are possible.</p>
<p>All images are referred to using the url given in the XSL:FO after
removing "url('')" wrapping. This does
not include any sort of resolving such as relative -> absolute. The
not include any sort of resolving such as relative -&gt; absolute. The
external graphic in the FO Tree and the image area in the Area Tree only
have the url as a reference.
The images are handled through a static interface in ImageFactory.</p>
@@ -148,5 +148,4 @@ renderer and the image can be released from the image cache.</p>
</section>

</body>
</document>

</document>

+ 5
- 5
src/documentation/content/xdocs/dev/design/index.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,7 +19,7 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.3//EN" "http://forrest.apache.org/dtd/document-v13.dtd">
<document>
<header>
<title>FOP Design: Introduction</title>
<title>Apache™ FOP Design: Introduction</title>
<version>$Revision$</version>
<authors>
<person name="Keiron Liddle" email="keiron@aftexsw.com"/>
@@ -31,9 +31,9 @@ The redesign is mainly focusing on parts of the layout process (converting the F
Therefore other (non-layout) sections in this document are probably largely accurate for the maintenance branch, but should be used with care in that context.</note>
<section id="black-box">
<title>The Black Box View</title>
<p>From a user's standpoint, FOP is a black box that an xml file as input, performs some magic, then creates the desired output:</p>
<p>From a user's standpoint, Apache™ FOP is a black box that an xml file as input, performs some magic, then creates the desired output:</p>
<table>
<caption>FOP from a User's Standpoint</caption>
<caption>Apache� FOP from a User's Standpoint</caption>
<tr>
<th>Process</th>
<th>Result</th>
@@ -157,4 +157,4 @@ However, most of them have been discussed at length among the developers, and ar
</ul>
</section>
</body>
</document>
</document>

+ 3
- 3
src/documentation/content/xdocs/dev/design/layout.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,7 +19,7 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.3//EN" "http://forrest.apache.org/dtd/document-v13.dtd">
<document>
<header>
<title>FOP Design: Layout</title>
<title>Apache™ FOP Design: Layout</title>
<version>$Revision$</version>
<authors>
<person name="Keiron Liddle" email="keiron@aftexsw.com"/>
@@ -404,4 +404,4 @@ Dashed and dotted borders have been implemented in PDF</td>
</section>
</section>
</body>
</document>
</document>

+ 4
- 5
src/documentation/content/xdocs/dev/design/optimise.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -20,7 +20,7 @@

<document>
<header>
<title>FOP Design: Optimisations</title>
<title>Apache™ FOP Design: Optimisations</title>
<version>$Revision$</version>
<authors>
<person name="Keiron Liddle" email="keiron@aftexsw.com"/>
@@ -31,7 +31,7 @@
<section id="intro">
<title>Introduction</title>
<p>
FOP should be able to handle very large documents. A document can be
Apache™ FOP should be able to handle very large documents. A document can be
supplied using SAX and the information should be passed entirely through
the system, from fo elements to rendered output as soon as possible.
</p>
@@ -71,5 +71,4 @@ is to make the page and all children serializable.
</section>

</body>
</document>

</document>

+ 4
- 4
src/documentation/content/xdocs/dev/design/parsing.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,13 +19,13 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.3//EN" "http://forrest.apache.org/dtd/document-v13.dtd">
<document>
<header>
<title>FOP Design: Input Parsing</title>
<title>Apache™ FOP Design: Input Parsing</title>
<version>$Revision$</version>
</header>
<body>
<section id="intro">
<title>Introduction</title>
<p>Parsing is the process of reading the XSL-FO input and making the information in it available to FOP.</p>
<p>Parsing is the process of reading the XSL-FO input and making the information in it available to Apache™ FOP.</p>
</section>
<section id="input">
<title>SAX for Input</title>
@@ -73,4 +73,4 @@ Instead, FOP takes SAX events and builds its own tree-like structure. Why?</p>
</section>
</section>
</body>
</document>
</document>

+ 4
- 5
src/documentation/content/xdocs/dev/design/pdf-library.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -20,7 +20,7 @@

<document>
<header>
<title>FOP Design: PDF Library</title>
<title>Apache™ FOP Design: PDF Library</title>
<version>$Revision$</version>
</header>

@@ -28,7 +28,7 @@
<section id="intro">
<title>Introduction</title>

<p>The PDF Library is an independant package of classes in FOP. These class
<p>The PDF Library is an independant package of classes in Apache™ FOP. These class
provide a simple way to construct documents and add the contents. The
classes are found in <code>org.apache.fop.pdf.*</code>.</p>
</section>
@@ -88,5 +88,4 @@ The method is: byte[] toPDF().</p>
</section>

</body>
</document>

</document>

+ 8
- 8
src/documentation/content/xdocs/dev/design/properties.xml View File

@@ -19,7 +19,7 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.3//EN" "http://forrest.apache.org/dtd/document-v13.dtd">
<document>
<header>
<title>FOP Design: Properties</title>
<title>Apache™ FOP Design: Properties</title>
<version>$Revision$</version>
<authors>
<person name="Karen Lease" email=""/>
@@ -205,12 +205,12 @@ for all ColorType properties. Since the generic specification doesn't include
the inherited or default elements, these should be set in each property
which is based on GenericColor. Here is an example:</p>
<p>
<code>&lt;property type='generic'>
&lt;name>background-color&lt;/name>
&lt;use-generic>GenericColor&lt;/use-generic>
&lt;inherited>false&lt;/inherited>
&lt;default>transparent&lt;/default>
&lt;/property></code>
<code>&lt;property type='generic'&gt;
&lt;name&gt;background-color&lt;/name&gt;
&lt;use-generic&gt;GenericColor&lt;/use-generic&gt;
&lt;inherited&gt;false&lt;/inherited&gt;
&lt;default&gt;transparent&lt;/default&gt;
&lt;/property&gt;</code>
</p>
<p>A generic property specification can include all of the elements
defined for the property element in the DTD, including the description
@@ -377,4 +377,4 @@ the result is a Property object, and the actual value may be accessed
<p>The Refined FO Tree is the result of the Refinement process.</p>
</section>
</body>
</document>
</document>

+ 3
- 3
src/documentation/content/xdocs/dev/design/renderers.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,7 +19,7 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.3//EN" "http://forrest.apache.org/dtd/document-v13.dtd">
<document>
<header>
<title>FOP Design: Renderers</title>
<title>Apache™ FOP Design: Renderers</title>
<version>$Revision$</version>
<authors>
<person name="Keiron Liddle" email="keiron@aftexsw.com"/>
@@ -226,4 +226,4 @@ If two renderers have the same font metrics then it is possible to use the same
</section>
</section>
</body>
</document>
</document>

+ 4
- 4
src/documentation/content/xdocs/dev/design/startup.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,13 +19,13 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.3//EN" "http://forrest.apache.org/dtd/document-v13.dtd">
<document>
<header>
<title>FOP Design: Startup, Environment, Control</title>
<title>Apache™ FOP Design: Startup, Environment, Control</title>
<version>$Revision$</version>
</header>
<body>
<section id="intro">
<title>Introduction</title>
<p>Startup is the process of getting FOP bootstrapped and creating basic objects. Environment includes acquiring user options, instantiating any frameworks, setting up logging, etc. Control includes the basic logic for tieing the various subsystems together properly.</p>
<p>Startup is the process of getting Apache™ FOP bootstrapped and creating basic objects. Environment includes acquiring user options, instantiating any frameworks, setting up logging, etc. Control includes the basic logic for tieing the various subsystems together properly.</p>
</section>
<section id="status">
<title>Status</title>
@@ -53,4 +53,4 @@
</section>
</section>
</body>
</document>
</document>

+ 6
- 6
src/documentation/content/xdocs/dev/design/svg.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -20,16 +20,17 @@

<document>
<header>
<title>FOP Design: SVG</title>
<title>Apache™ FOP Design: SVG</title>
<version>$Revision$</version>
</header>
<body>
<section id="intro">
<title>Introduction</title>
<p>SVG is rendered through Batik.</p><p>The XML from the XSL:FO document
<p>SVG is rendered through Apache™ Batik.</p><p>The XML from the XSL:FO document
is converted into an SVG DOM with batik. This DOM is then set as the Document
on the Foreign Object area in the Area Tree.</p><p>This DOM is then available to
be rendered by the renderer.</p><p>SVG is rendered in the renderers via an XMLHandler in the FOUserAgent. This XML handler is used to render the SVG. The
be rendered by the renderer.</p><p>SVG is rendered in the renderers via an
XMLHandler in the FOUserAgent. This XML handler is used to render the SVG. The
SVG is rendered by using batik. Batik converts the SVG DOM into an internal
structure that can be drawn into a Graphics2D. So for PDF we use a
PDFGraphics2D to draw into.</p><p>This creates the necessary PDF information to
@@ -86,5 +87,4 @@
</section>

</body>
</document>

</document>

+ 4
- 5
src/documentation/content/xdocs/dev/design/useragent.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -20,7 +20,7 @@

<document>
<header>
<title>FOP Design: User Agent</title>
<title>Apache™ FOP Design: User Agent</title>
<version>$Revision$</version>
<authors>
<person name="Keiron Liddle" email="keiron@aftexsw.com"/>
@@ -31,7 +31,7 @@
<section id="intro">
<title>Introduction</title>
<p>
Technically the user agent is FOP in the role of determining the
Technically the user agent is Apache™ FOP in the role of determining the
output format and when resolving various attributes. The user
agent is represented by a class that is available to others to
specify how FOP should behave.
@@ -111,5 +111,4 @@ Interactive Features:
</section>

</body>
</document>

</document>

+ 4
- 4
src/documentation/content/xdocs/dev/doc.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,13 +19,13 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.3//EN" "http://forrest.apache.org/dtd/document-v13.dtd">
<document>
<header>
<title>FOP Development: Managing Documentation</title>
<title>Apache™ FOP Development: Managing Documentation</title>
<version>$Revision$</version>
</header>
<body>
<section id="general">
<title>General Information</title>
<p>All raw documentation content is managed in the FOP SVN repository.
<p>All raw documentation content is managed in the Apache™ FOP SVN repository.
Updates should be committed to the repository, then the repository files are used to generate usable output.
The remaining discussions on this page assume that the SVN repository is the starting place for processing.
The path to the documentation is src/documentation/content/xdocs.</p>
@@ -163,4 +163,4 @@ The path to the documentation is src/documentation/content/xdocs.</p>

</section>
</body>
</document>
</document>

+ 3
- 4
src/documentation/content/xdocs/dev/extensions.xml View File

@@ -20,13 +20,13 @@

<document>
<header>
<title>FOP Development: Adding an Extension</title>
<title>Apache™ FOP Development: Adding an Extension</title>
<version>$Revision$</version>
</header>
<body>
<section id="overview">
<title>Overview</title>
<p>For documentation of standard FOP extensions, see the <link href="../trunk/extensions.html">User FOP Extensions</link> document.</p>
<p>For documentation of standard Apache™ FOP extensions, see the <link href="../trunk/extensions.html">User FOP Extensions</link> document.</p>
<p>
If the default funtionality of FOP needs to be extended for
some reason then you can write an extension.
@@ -61,5 +61,4 @@ See also <link href="../examples.html">Examples</link> for more examples.</li>
</ol>
</section>
</body>
</document>

</document>

+ 2
- 3
src/documentation/content/xdocs/dev/faq.xml View File

@@ -18,7 +18,7 @@
<!-- $Id$ -->
<!DOCTYPE faqs PUBLIC "-//APACHE//DTD FAQ V1.3//EN" "http://forrest.apache.org/dtd/faq-v13.dtd">

<faqs title="FOP Development: FAQ">
<faqs title="Apache™ FOP Development: FAQ">
<part id="part_general">
<title>General Questions</title>
<faq>
@@ -62,5 +62,4 @@
</answer>
</faq>
</part>
</faqs>

</faqs>

+ 4
- 4
src/documentation/content/xdocs/dev/fonts.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -20,7 +20,7 @@

<document>
<header>
<title>FOP Development: Fonts</title>
<title>Apache™ FOP Development: Fonts</title>
<version>$Revision$</version>
</header>
<body>
@@ -29,7 +29,7 @@
<ul>
<li>refactor existing font logic for better clarity and to reduce duplication</li>
<li>parse registered font metric information on-the-fly (to make sure most up-to-date parsing is used??)</li>
<li>resolve whether the FontBBox, StemV, and ItalicAngle font metric information is important or not -- if so, parse the .pfb file to extract it when building the FOP xml metric file</li>
<li>resolve whether the FontBBox, StemV, and ItalicAngle font metric information is important or not -- if so, parse the .pfb file to extract it when building the Apache� FOP xml metric file</li>
<li>handle fonts registered at the operating system (through AWT)</li>
<li>add support for parsing OpenType fonts</li>
</ul>
@@ -87,4 +87,4 @@ If not, the Font logic should resolve the TypeFace and TypeFaceFamily if possibl
</body>
</document>

<!-- Last Line of $RCSfile$ -->
<!-- Last Line of $RCSfile$ -->

+ 5
- 5
src/documentation/content/xdocs/dev/implement.xml View File

@@ -1,4 +1,4 @@
<?xml version="1.0" standalone="no"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -19,15 +19,15 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.3//EN" "http://forrest.apache.org/dtd/document-v13.dtd">
<document>
<header>
<title>FOP Development: Implementation Overview</title>
<subtitle>Following a Document Through FOP</subtitle>
<title>Apache™ FOP Development: Implementation Overview</title>
<subtitle>Following a Document Through Apache� FOP</subtitle>
<version>$Revision$</version>
<authors>
<person name="Arved Sandstrom" email=""/>
</authors>
</header>
<body>
<p>The purpose of this document is to tie together the FOP design (interface) with some of the key points where control is passed within FOP (implementation), so that developers can quickly find the section of code that is relevant to their needs. The process described is for a "typical" command-line document. All classes are in org.apache.fop unless otherwise designated.</p>
<p>The purpose of this document is to tie together the Apache™ FOP design (interface) with some of the key points where control is passed within FOP (implementation), so that developers can quickly find the section of code that is relevant to their needs. The process described is for a "typical" command-line document. All classes are in org.apache.fop unless otherwise designated.</p>
<section>
<title>Overview</title>
<p>The input FO document is sent to the FO tree builder via SAX events. Fragments of an FO Tree are built from this process. As each page-sequence element is completed, it is passed to a layout processor, which in turn converts it into an Area Tree. The Area Tree is then given to the Renderer, which converts it into a stream of data containing the output document. The sections below will provide additional details. Where needed differences between the trunk and maintenance branches are shown in tabular format.</p>
@@ -107,4 +107,4 @@ correct place.
</p>
</section>
</body>
</document>
</document>

+ 4
- 4
src/documentation/content/xdocs/dev/index.xml View File

@@ -19,15 +19,15 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.3//EN" "http://forrest.apache.org/dtd/document-v13.dtd">
<document>
<header>
<title>FOP Development: General Information</title>
<title>Apache™ FOP Development: General Information</title>
<version>$Revision$</version>
</header>
<body>
<section id="intro">
<title>Introduction</title>
<p>These pages contain information that should be helpful for those developing FOP.
<p>These pages contain information that should be helpful for those developing Apache™ FOP.
This certainly includes programmers, but may also include those contributing to the project in other ways.</p>
<p>For basic and user information on FOP, please visit the <link href="http://xml.apache.org/fop">FOP homepage</link>.</p>
<p>For basic and user information on FOP, please visit the <link href="http://xml.apache.org/fop">Apache™ FOP homepage</link>.</p>
</section>
<section id="lines">
<title>Development</title>
@@ -162,4 +162,4 @@ To unsubscribe: Send email to <link href="mailto:fop-dev-unsubscribe@xmlgraphics
</section>
</section>
</body>
</document>
</document>

+ 5
- 5
src/documentation/content/xdocs/dev/release.xml View File

@@ -19,13 +19,13 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.3//EN" "http://forrest.apache.org/dtd/document-v13.dtd">
<document>
<header>
<title>FOP Development: Release Mechanics</title>
<title>Apache™ FOP Development: Release Mechanics</title>
<version>$Revision$</version>
</header>
<body>
<section id="intro">
<title>Introduction</title>
<p>This page documents the process of creating a FOP release.
<p>This page documents the process of creating a Apache™ FOP release.
FOP releases are coordinated by one member of the team (currently Christian Geisert), so others do not ordinarily need to use this information.
The purpose of documenting it here is to facilitate consistency, ensure that the process is captured, and to allow others to comment on the process.</p>
<p>The checklist below was assembled from Christian Geisert's notes. It will be expanded in the future as he has time.</p>
@@ -60,8 +60,8 @@ The purpose of documenting it here is to facilitate consistency, ensure that the
<li>Copy <code>test/fotree/disabled-testcases.xml</code> and
<code>test/layoutengine/disabled-testcases.xml</code> to the
new version directory
<code>&lt;version>/fotree/disabled-testcases.xml</code> and
<code>&lt;version>/layoutengine/disabled-testcases.xml</code>.
<code>&lt;version&gt;/fotree/disabled-testcases.xml</code> and
<code>&lt;version&gt;/layoutengine/disabled-testcases.xml</code>.
Copy <code>known-issues.xml</code> to the new version
directory. Copy <code>knownissues-overview.xml</code> from the
current to the new version directory, and update the <code>xi:include</code>
@@ -156,4 +156,4 @@ The purpose of documenting it here is to facilitate consistency, ensure that the
</ul>
</section>
</body>
</document>
</document>

+ 4
- 4
src/documentation/content/xdocs/dev/rtflib.xml View File

@@ -19,7 +19,7 @@
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.3//EN" "http://forrest.apache.org/dtd/document-v13.dtd">
<document>
<header>
<title>FOP Development: RTFLib (jfor)</title>
<title>Apache™ FOP Development: RTFLib (jfor)</title>
<version>$Revision$</version>
</header>
<body>
@@ -30,7 +30,7 @@
<p>The RTFLib package is an open-source, <em>independent</em> package suitable for writing RTF files in a java environment.
By <em>independent</em> we mean:</p>
<ul>
<li>Although it is used by FOP to generate FOP's RTF output, it is not dependent on FOP for any of its functionality.</li>
<li>Although it is used by Apache™ FOP to generate FOP's RTF output, it is not dependent on FOP for any of its functionality.</li>
<li>It does not require FOP as a front-end, nor does it even require XSL-FO for input.
It essentially exposes an API of relatively high-level RTF construction routines to a host program.
This means it can be used anywhere RTF output is required and java is available.</li>
@@ -39,7 +39,7 @@ This means it can be used anywhere RTF output is required and java is available.
</section>
<section id="history">
<title>History</title>
<p>RTFLib was originally developed by <link href="mailto:bdelacretaz@apache.org">Bertrand Delacr&#x00E9;taz</link> and the <link href="http://www.jfor.org">jfor</link> team. jfor was written under an Apache-style license, and the jfor team contributed the code to the Apache Software Foundation in June, 2003. RTFLib is a subset of the original jfor project, which also includes an XSL-FO parsing mechanism for a complete XSL-FO to RTF solution.</p>
<p>RTFLib was originally developed by <link href="mailto:bdelacretaz@apache.org">Bertrand Delacrétaz</link> and the <link href="http://www.jfor.org">jfor</link> team. jfor was written under an Apache-style license, and the jfor team contributed the code to the Apache Software Foundation in June, 2003. RTFLib is a subset of the original jfor project, which also includes an XSL-FO parsing mechanism for a complete XSL-FO to RTF solution.</p>
</section>
<section id="status">
<title>Status</title>
@@ -324,4 +324,4 @@ A quick look at the Abstract <link href="http://cvs.apache.org/viewcvs.cgi/xml-f
</section>
</section>
</body>
</document>
</document>

+ 0
- 0
src/documentation/content/xdocs/dev/svg.xml View File


Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save