1306814
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/branches/Temp_TrueTypeInPostScript@1309921 13f79535-47bb-0310-9956-ffa450edef68pull/26/head
@@ -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> |
@@ -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 "License"\); 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 "AS IS" 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,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> |
@@ -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> |
@@ -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 |
@@ -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); | |||
} | |||
} | |||
} |
@@ -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); |
@@ -211,4 +211,4 @@ public class EasyGenerationContentHandlerProxy implements ContentHandler { | |||
target.skippedEntity(name); | |||
} | |||
} | |||
} |
@@ -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()); | |||
} |
@@ -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 |
@@ -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 |
@@ -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) { |
@@ -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> |
@@ -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. |
@@ -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. |
@@ -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 |
@@ -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. |
@@ -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; | |||
} | |||
@@ -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()); |
@@ -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; | |||
} | |||
} | |||
} | |||
} |
@@ -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) { |
@@ -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) { |
@@ -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> | |||
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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 I/O API but does not include all | |||
former simply exposes JAI's codecs using the Image&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 I/O codec. Transparency is supported but | |||
GIF images are supported through an Image&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 I/O codecs concerning images in the CMYK color space. Work-arounds are | |||
in some Image&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 I/O codec. Transparency is supported but | |||
PNG images are supported through an Image&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 I/O codec is necessary for decoding the image. | |||
Image&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> |
@@ -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 <hyphenation-info> element.</li> | |||
<li><hyphen-char>: its attribute "value" contains the character signalling | |||
a hyphen in the <exceptions> section. It has nothing to do with the | |||
<li>The root of the pattern file is the <hyphenation-info> element.</li> | |||
<li><hyphen-char>: its attribute "value" contains the character signalling | |||
a hyphen in the <exceptions> 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><hyphen-min> contains two attributes: | |||
<li><hyphen-min> 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><classes> contains whitespace-separated character sets. The members | |||
<li><classes> 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><exceptions> contains whitespace-separated words, each of which | |||
<li><exceptions> 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 <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 <hyp> declarations don't work | |||
never be hyphenated, or contain explicit <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 <hyp> declarations don't work | |||
yet (patches welcome). Exceptions are generally a bit brittle, test | |||
carefully.</li> | |||
<li><patterns> includes whitespace-separated patterns, which are what | |||
<li><patterns> 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> |
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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 >=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 <CLASSPATH> | |||
org.apache.fop.cli.Main <arguments></code>. The arguments | |||
command line is: <code>java -classpath <CLASSPATH> | |||
org.apache.fop.cli.Main <arguments></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 <arguments></code>, relying on | |||
-jar path/to/build/fop.jar <arguments></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 | |||
<arguments></code>, relying on the <code>Class-Path</code> | |||
<arguments></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> |
@@ -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"> |
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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=""/> | |||
@@ -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> |
@@ -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 I/O API but does not include all | |||
former simply exposes JAI's codecs using the Image&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 I/O codec. Transparency is supported but | |||
GIF images are supported through an Image&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 I/O codecs concerning images in the CMYK color space. Work-arounds are | |||
in some Image&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 I/O codec. Transparency is supported but | |||
PNG images are supported through an Image&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 I/O codec is necessary for decoding the image. | |||
Image&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> |
@@ -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 <hyphenation-info> element.</li> | |||
<li><hyphen-char>: its attribute "value" contains the character signalling | |||
a hyphen in the <exceptions> section. It has nothing to do with the | |||
<li>The root of the pattern file is the <hyphenation-info> element.</li> | |||
<li><hyphen-char>: its attribute "value" contains the character signalling | |||
a hyphen in the <exceptions> 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><hyphen-min> contains two attributes: | |||
<li><hyphen-min> 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><classes> contains whitespace-separated character sets. The members | |||
<li><classes> 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><exceptions> contains whitespace-separated words, each of which | |||
<li><exceptions> 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 <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 <hyp> declarations don't work | |||
never be hyphenated, or contain explicit <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 <hyp> declarations don't work | |||
yet (patches welcome). Exceptions are generally a bit brittle, test | |||
carefully.</li> | |||
<li><patterns> includes whitespace-separated patterns, which are what | |||
<li><patterns> 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> |
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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 >=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 <CLASSPATH> | |||
org.apache.fop.cli.Main <arguments></code>. The arguments | |||
command line is: <code>java -classpath <CLASSPATH> | |||
org.apache.fop.cli.Main <arguments></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 <arguments></code>, relying on | |||
-jar path/to/build/fop.jar <arguments></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 | |||
<arguments></code>, relying on the <code>Class-Path</code> | |||
<arguments></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> |
@@ -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"> |
@@ -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> |
@@ -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> | |||
@@ -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">§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> </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= |
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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 >= 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> |
@@ -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 "‘"> | |||
<!ENTITY rsquo "’"> | |||
<!ENTITY ldquo "“"> | |||
<!ENTITY rdquo "”"> | |||
<!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 | |||
“<code>-c</code>” command-line option with the path to the | |||
&ldquo;<code>-c</code>&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><fop-configuration | |||
version="2"></code>.</p> | |||
version="2"></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><renderer mime="application/pdf"></code>. The content | |||
<code><renderer mime="application/pdf"></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 “info”. An | |||
feature is the log level. The default is level &ldquo;info&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 “info”, you get a decent small amount | |||
for all loggers to &ldquo;info&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> |
@@ -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> |
@@ -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 -> 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> |
@@ -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> |
@@ -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 -> 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> |
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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><property type='generic'> | |||
<name>background-color</name> | |||
<use-generic>GenericColor</use-generic> | |||
<inherited>false</inherited> | |||
<default>transparent</default> | |||
</property></code> | |||
<code><property type='generic'> | |||
<name>background-color</name> | |||
<use-generic>GenericColor</use-generic> | |||
<inherited>false</inherited> | |||
<default>transparent</default> | |||
</property></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> |
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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> |
@@ -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$ --> |
@@ -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> |
@@ -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> |
@@ -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><version>/fotree/disabled-testcases.xml</code> and | |||
<code><version>/layoutengine/disabled-testcases.xml</code>. | |||
<code><version>/fotree/disabled-testcases.xml</code> and | |||
<code><version>/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> |
@@ -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é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> |