git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/branches/Temp_URI_Unification@1343285 13f79535-47bb-0310-9956-ffa450edef68tags/fop-2_0
@@ -246,3 +246,39 @@ tWcUInqOwhLX896WaH9Y5NJYe98MNpQxr3wizYOwdJa3t9+MVvH0+s6ih4aaJ49n | |||
Jysr6rop4tOTfXLTX7m5hXkfJ/k= | |||
=soRW | |||
-----END PGP PUBLIC KEY BLOCK----- | |||
pub 2048R/0ED3D317 2012-04-09 [expires: 2017-04-08] | |||
uid Glenn Adams <gadams@apache.org> | |||
sig 3 0ED3D317 2012-04-09 Glenn Adams <gadams@apache.org> | |||
sub 2048R/F23E86C1 2012-04-09 [expires: 2017-04-08] | |||
sig 0ED3D317 2012-04-09 Glenn Adams <gadams@apache.org> | |||
-----BEGIN PGP PUBLIC KEY BLOCK----- | |||
Version: GnuPG v1.4.11 (Darwin) | |||
mQENBE+DFvEBCACwHesM5hkZrlgPiq588FbZPe7QGtDRVdh0YbgI2A4Ky2odbFmA | |||
/n7lF9v+yf+FUn/0H2igwDYqLFx4JsB7z+Nvj+hwExdGQxuDaGSwMjjpJeEiuEmf | |||
b1Er5KYgpeFNm1MVP+r5kW5962O+HGIEx1xQ85AskNbr/jQkAg/wbbwWLFBQRMER | |||
PqFs1rXL2aWip8XtNPKnKBLPlFPn9a7glgB5Whgbls44KpR0dplAVoCWMnZEYnTA | |||
JYITcaDTCGFQI7aYgbj986RpS80o/Wcsnb8rjHKRZG8TaDr9MbgmmK39KwiJCflJ | |||
9LvXR9g1j3addxgqEUuQBEtoLkWs/eDT/KQ7ABEBAAG0H0dsZW5uIEFkYW1zIDxn | |||
YWRhbXNAYXBhY2hlLm9yZz6JAT4EEwECACgFAk+DFvECGwMFCQlmAYAGCwkIBwMC | |||
BhUIAgkKCwQWAgMBAh4BAheAAAoJEGZUur4O09MXl7MH/jfeyE012/ABTTjvwvRw | |||
2evD3cfghrZOQVT3PVEcVnXIcnVlmznO2DDs8aWXlhJ94ZnNdw8iKE8weK1FGXdd | |||
qWA7vHrOI1UAo7h+CDaBt0TM6OEM3Mp3+5baOJMRXyrjhbv74sj88HYRtoPhA2+z | |||
5ilVNmmX4PEAc6wqt87ZfNQ2ZqX2YzR+OaT5OggSB12qU/uE7d4d0NcDozEKQFUP | |||
CMAuPJRNd4/J5yFy0DStfgsDKuUTir0oldlUElAjbhF8WtAgRwufIYuG/r4Cbuid | |||
Qc32yVAoy069ZcggwBpkzVPOpL2by1fzeSohjIkntDIL474KuSSoBKCuw2nYxpyw | |||
b0O5AQ0ET4MW8QEIAMFUAScm2Dw1fmBhmKMVc0mzqpR8TvSQvwJLiXRSP86NI1zc | |||
DtuiXCFfNZykOifFk50otMH1hd91hqeQ6HfsxxYtXLg2UDHG2gTKzlWefwA+1eFc | |||
M8fz/oV0CanGjqaOd6VZoYeg+LSD6YgrJZVjuoxNN/S0A9fNd8B3CXsG+92udkkW | |||
YMyiUpD5qjMEwcjmj6ITX3M9VLxDCKKhYwN+u5wokuAk3yKtvBpWhJDQbaJcuDaC | |||
rLH788gFybZDzyJ8Ug/95peV9Z57OCjMJLtn67ES7fB544EQRYVmDGnX5tTo9sYj | |||
0bDjlbKX9lqS1sCGSezPxYxGgeXlnQrt+Sm+gd0AEQEAAYkBJQQYAQIADwUCT4MW | |||
8QIbDAUJCWYBgAAKCRBmVLq+DtPTF2YbB/0Vo8Xr9N1adqlY1UAofvo5AoXZFxFJ | |||
jkB0Eb3z1V3iSBh8P921LD0gUQz6JXptXZPVGnwgm/44RdqXC+kX+4MxiVBtNAHp | |||
0ODjIXiabBrixAHnT7EcAJkWue0RP2J5wiYKklwWFbEetjl0QSmitz8Jh33eA76j | |||
kFYW+vgKUMA8UrJ6j2Hk+vMFi0Odtntbc7AXvLifSPSmSztNe/Mws69EbuBph6bQ | |||
+zSmTQ6nt8PX+v3e0PnkXdGD8si9H6hj0K32pEMz86ttSnAtrhvsAdKPYOkY7/JD | |||
0Bl+bnb7FLxJjJGlGuO/Rn5SIR3fFNQGrE/zl2wsKtftUXse6kkZSue+ | |||
=XDBB | |||
-----END PGP PUBLIC KEY BLOCK----- |
@@ -54,9 +54,9 @@ list of possible build targets. | |||
<project default="all" basedir="." name="fop"> | |||
<!-- See build.properties and build-local.properties for overriding build settings. --> | |||
<!-- build-local.properties is not stored in SVN and overrides values from build.properties --> | |||
<property environment="env"/> | |||
<property file="${basedir}/build-local.properties"/> | |||
<property file="${basedir}/build.properties"/> | |||
<property environment="env"/> | |||
<fileset dir="${basedir}" id="dist.bin"> | |||
<include name="conf/**"/> | |||
<include name="examples/**"/> | |||
@@ -85,12 +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/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/**"/> | |||
@@ -98,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/**"/> | |||
@@ -153,6 +153,8 @@ list of possible build targets. | |||
<property name="javac.fork" value="no"/> | |||
<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"/> | |||
@@ -214,7 +216,10 @@ list of possible build targets. | |||
</presetdef> | |||
<presetdef name="junit"> | |||
<junit haltonfailure="${junit.haltonfailure}" fork="${junit.fork}" maxmemory="256m"/> | |||
<junit haltonfailure="${junit.haltonfailure}" | |||
fork="${junit.fork}" | |||
printsummary="${junit.printsummary}" | |||
maxmemory="256m"/> | |||
</presetdef> | |||
<!-- =================================================================== --> | |||
@@ -396,18 +401,18 @@ list of possible build targets. | |||
<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 --> | |||
@@ -418,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"> | |||
@@ -551,6 +556,7 @@ list of possible build targets. | |||
<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*"/> | |||
@@ -662,10 +668,15 @@ 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> | |||
@@ -705,6 +716,7 @@ list of possible build targets. | |||
<include name="META-INF/**"/> | |||
<include name="**/*.xml"/> | |||
<include name="**/*.fo"/> | |||
<include name="**/BidiTestData*.ser"/> | |||
<include name="**/*.afp"/> | |||
<include name="**/*.xsl"/> | |||
</fileset> | |||
@@ -778,29 +790,37 @@ list of possible build targets. | |||
<attribute name="classpath" default="standard-junit-classpath"/> | |||
<sequential> | |||
<echo message="Running @{title} tests..."/> | |||
<junit dir="${basedir}" errorproperty="fop.junit.error" failureproperty="fop.junit.failure"> | |||
<junit dir="${basedir}" haltonfailure="yes" fork="${junit.fork}" forkmode="once" | |||
errorproperty="fop.junit.error" failureproperty="fop.junit.failure" printsummary="${junit.printsummary}"> | |||
<sysproperty key="basedir" value="${basedir}/@{basedir}"/> | |||
<sysproperty key="jawa.awt.headless" value="true"/> | |||
<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> | |||
<path refid="@{classpath}"/> | |||
</classpath> | |||
<assertions> | |||
<enable/> | |||
</assertions> | |||
<test name="@{testsuite}" todir="${junit.reports.dir}" outfile="@{outfile}"/> | |||
</junit> | |||
</sequential> | |||
</macrodef> | |||
<target name="junit-all" depends="junit-compile, junit-transcoder, junit-layout-hyphenation, setup-xml-schema" description="Runs FOP's JUnit basic tests" if="junit.present"> | |||
<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"> | |||
errorproperty="fop.junit.error" failureproperty="fop.junit.failure" printsummary="${junit.printsummary}"> | |||
<sysproperty key="jawa.awt.headless" value="true"/> | |||
<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> | |||
<path refid="standard-junit-classpath"/> | |||
</classpath> | |||
<assertions> | |||
<enable/> | |||
</assertions> | |||
<batchtest todir="${junit.reports.dir}"> | |||
<fileset dir="${build.unit.tests.dir}" includes="**/*TestCase.class"/> | |||
</batchtest> | |||
@@ -826,25 +846,13 @@ list of possible build targets. | |||
<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,setup-xml-schema" | |||
if="xmlunit.present"> | |||
<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="setup-xml-schema"> | |||
<local name="cache-dir"/> | |||
<property name="cache-dir" value="${basedir}/.cache/junit/intermediate"/> | |||
<mkdir dir="${cache-dir}"/> | |||
<get src="http://www.w3.org/2001/xml.xsd" | |||
dest="${cache-dir}/xml.xsd" | |||
usetimestamp="true"/> | |||
<copy file="${cache-dir}/xml.xsd" | |||
todir="${build.dir}/test-classes/org/apache/fop/intermediate"/> | |||
</target> | |||
<target name="junit-intermediate-format" | |||
depends="junit-compile,setup-xml-schema,junit-intermediate-layout" | |||
<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" | |||
@@ -859,7 +867,10 @@ list of possible build targets. | |||
<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-reduced" depends="junit-userconfig, junit-basic, junit-transcoder, junit-text-linebreak, junit-fotree, junit-render-pdf"/> | |||
<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-render-pdf, 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> | |||
@@ -1009,28 +1020,34 @@ NOTE: | |||
<!-- =================================================================== --> | |||
<!-- Checkstyle --> | |||
<!-- =================================================================== --> | |||
<property name="checkstyle.location" value="${lib-tools}/checkstyle-5.5-all.jar" /> | |||
<property name="checkstyle.noframes.xslt" value="${basedir}/checkstyle-noframes.xsl" /> | |||
<property name="checkstyle.config" value="${basedir}/checkstyle-5.5.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}"/> | |||
@@ -1246,11 +1263,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: | |||
@@ -1324,21 +1341,71 @@ 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}"> | |||
<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 --> | |||
<!-- =================================================================== --> | |||
@@ -1355,7 +1422,7 @@ NOTE: | |||
</fail> | |||
<echo>All tests passed!</echo> | |||
</target> | |||
<!-- =================================================================== --> | |||
<!-- =================================================================== --> | |||
<!-- Clean targets --> | |||
<!-- =================================================================== --> | |||
<target name="clean" description="Cleans the build directory"> | |||
@@ -1367,7 +1434,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."> | |||
@@ -1403,4 +1470,10 @@ NOTE: | |||
</xmlcatalog> | |||
</xmlvalidate> | |||
</target> | |||
<!-- =================================================================== --> | |||
<!-- Local targets --> | |||
<!-- =================================================================== --> | |||
<import file="build-local.targets.xml" optional="true"/> | |||
</project> |
@@ -1,190 +0,0 @@ | |||
<?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"> | |||
<module name="TreeWalker"> | |||
<module name="RegexpHeader"> | |||
<property name="headerFile" value="${samedir}/checkstyle.header"/> | |||
<property name="severity" value="warning"/> | |||
</module> | |||
<module name="ArrayTypeStyleCheck"> | |||
<property name="javaStyle" value="true"/> | |||
<property name="severity" value="warning"/> | |||
</module> | |||
<module name="ModifierOrderCheck"> | |||
<property name="severity" value="warning"/> | |||
</module> | |||
<module name="RedundantModifierCheck"> | |||
<property name="severity" value="warning"/> | |||
<property name="tokens" value="METHOD_DEF, VARIABLE_DEF"/> | |||
</module> | |||
<module name="UpperEllCheck"> | |||
<property name="severity" value="warning"/> | |||
</module> | |||
<module name="AvoidNestedBlocksCheck"> | |||
<property name="severity" value="warning"/> | |||
</module> | |||
<module name="EmptyBlockCheck"> | |||
<property name="option" value="text"/> | |||
<property name="severity" value="warning"/> | |||
<property name="tokens" value="LITERAL_CATCH, LITERAL_DO, LITERAL_ELSE, LITERAL_FINALLY, LITERAL_IF, LITERAL_FOR, LITERAL_TRY, LITERAL_WHILE, STATIC_INIT"/> | |||
</module> | |||
<module name="LeftCurlyCheck"> | |||
<property name="maxLineLength" value="100"/> | |||
<property name="option" value="eol"/> | |||
<property name="severity" value="warning"/> | |||
<property name="tokens" value="CLASS_DEF, CTOR_DEF, INTERFACE_DEF, LITERAL_CATCH, LITERAL_DO, LITERAL_ELSE, LITERAL_FINALLY, LITERAL_FOR, LITERAL_IF, LITERAL_SWITCH, LITERAL_SYNCHRONIZED, LITERAL_TRY, LITERAL_WHILE, METHOD_DEF"/> | |||
</module> | |||
<module name="NeedBracesCheck"> | |||
<property name="severity" value="warning"/> | |||
<property name="tokens" value="LITERAL_DO, LITERAL_ELSE, LITERAL_IF, LITERAL_FOR, LITERAL_WHILE"/> | |||
</module> | |||
<module name="RightCurlyCheck"> | |||
<property name="option" value="same"/> | |||
<property name="severity" value="warning"/> | |||
<property name="tokens" value="LITERAL_CATCH, LITERAL_ELSE, LITERAL_TRY"/> | |||
</module> | |||
<module name="DoubleCheckedLockingCheck"> | |||
<property name="severity" value="warning"/> | |||
</module> | |||
<module name="EmptyStatementCheck"> | |||
<property name="severity" value="warning"/> | |||
</module> | |||
<module name="EqualsHashCodeCheck"> | |||
<property name="severity" value="warning"/> | |||
</module> | |||
<module name="InnerAssignmentCheck"> | |||
<property name="severity" value="warning"/> | |||
<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="MissingSwitchDefaultCheck"> | |||
<property name="severity" value="warning"/> | |||
</module> | |||
<module name="SimplifyBooleanExpressionCheck"> | |||
<property name="severity" value="warning"/> | |||
</module> | |||
<module name="SimplifyBooleanReturnCheck"> | |||
<property name="severity" value="warning"/> | |||
</module> | |||
<module name="FinalClassCheck"> | |||
<property name="severity" value="warning"/> | |||
</module> | |||
<module name="HideUtilityClassConstructorCheck"> | |||
<property name="severity" value="warning"/> | |||
</module> | |||
<module name="VisibilityModifierCheck"> | |||
<property name="packageAllowed" value="false"/> | |||
<property name="protectedAllowed" value="true"/> | |||
<property name="publicMemberPattern" value="^serialVersionUID"/> | |||
<property name="severity" value="warning"/> | |||
</module> | |||
<module name="AvoidStarImportCheck"> | |||
<property name="severity" value="error"/> | |||
</module> | |||
<module name="JavadocMethodCheck"> | |||
<property name="allowMissingParamTags" value="false"/> | |||
<property name="allowMissingReturnTag" value="false"/> | |||
<property name="allowMissingThrowsTags" value="false"/> | |||
<property name="allowThrowsTagsForSubclasses" value="false"/> | |||
<property name="allowUndeclaredRTE" value="false"/> | |||
<property name="scope" value="protected"/> | |||
<property name="severity" value="warning"/> | |||
<property name="tokens" value="METHOD_DEF, CTOR_DEF"/> | |||
</module> | |||
<module name="JavadocTypeCheck"> | |||
<property name="scope" value="protected"/> | |||
<property name="severity" value="warning"/> | |||
<property name="tokens" value="CLASS_DEF, INTERFACE_DEF"/> | |||
</module> | |||
<module name="JavadocVariableCheck"> | |||
<property name="scope" value="protected"/> | |||
<property name="severity" value="warning"/> | |||
</module> | |||
<module name="ConstantNameCheck"> | |||
<property name="format" value="^[A-Z](_?[A-Z0-9]+)*$"/> | |||
<property name="severity" value="warning"/> | |||
</module> | |||
<module name="LocalFinalVariableNameCheck"> | |||
<property name="format" value="^[a-z][a-zA-Z0-9]*$"/> | |||
<property name="severity" value="warning"/> | |||
</module> | |||
<module name="LocalVariableNameCheck"> | |||
<property name="format" value="^[a-z][a-zA-Z0-9]*$"/> | |||
<property name="severity" value="warning"/> | |||
</module> | |||
<module name="MemberNameCheck"> | |||
<property name="format" value="^[a-z][a-zA-Z0-9]*$"/> | |||
<property name="severity" value="warning"/> | |||
</module> | |||
<module name="MethodNameCheck"> | |||
<property name="format" value="^[a-z][a-zA-Z0-9]*$"/> | |||
<property name="severity" value="warning"/> | |||
</module> | |||
<module name="PackageNameCheck"> | |||
<property name="format" value="^[a-z]+(\.[a-zA-Z_][a-zA-Z0-9_]*)*$"/> | |||
<property name="severity" value="warning"/> | |||
</module> | |||
<module name="ParameterNameCheck"> | |||
<property name="format" value="^[a-z][a-zA-Z0-9]*$"/> | |||
<property name="severity" value="warning"/> | |||
</module> | |||
<module name="StaticVariableNameCheck"> | |||
<property name="format" value="^[a-z][a-zA-Z0-9]*$"/> | |||
<property name="severity" value="warning"/> | |||
</module> | |||
<module name="TypeNameCheck"> | |||
<property name="format" value="^[A-Z][a-zA-Z0-9]*$"/> | |||
<property name="severity" value="warning"/> | |||
<property name="tokens" value="CLASS_DEF, INTERFACE_DEF"/> | |||
</module> | |||
<module name="FileLengthCheck"> | |||
<property name="max" value="2000"/> | |||
<property name="severity" value="warning"/> | |||
</module> | |||
<module name="LineLengthCheck"> | |||
<property name="ignorePattern" value="^$"/> | |||
<property name="max" value="100"/> | |||
<property name="severity" value="warning"/> | |||
<property name="tabWidth" value="4"/> | |||
</module> | |||
<module name="MethodLengthCheck"> | |||
<property name="max" value="150"/> | |||
<property name="severity" value="warning"/> | |||
<property name="tokens" value="METHOD_DEF, CTOR_DEF"/> | |||
</module> | |||
<module name="ParameterNumberCheck"> | |||
<property name="max" value="7"/> | |||
<property name="severity" value="warning"/> | |||
<property name="tokens" value="METHOD_DEF, CTOR_DEF"/> | |||
</module> | |||
<module name="EmptyForIteratorPadCheck"> | |||
<property name="option" value="nospace"/> | |||
<property name="severity" value="warning"/> | |||
</module> | |||
<module name="NoWhitespaceAfterCheck"> | |||
<property name="allowLineBreaks" value="true"/> | |||
<property name="severity" value="warning"/> | |||
<property name="tokens" value="ARRAY_INIT, BNOT, DEC, DOT, INC, LNOT, UNARY_MINUS, UNARY_PLUS"/> | |||
</module> | |||
<module name="NoWhitespaceBeforeCheck"> | |||
<property name="allowLineBreaks" value="true"/> | |||
<property name="severity" value="warning"/> | |||
<property name="tokens" value="SEMI, POST_DEC, POST_INC"/> | |||
</module> | |||
<module name="OperatorWrapCheck"> | |||
<property name="option" value="nl"/> | |||
<property name="severity" value="warning"/> | |||
<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, LE, LITERAL_INSTANCEOF, LOR, LT, MINUS, MINUS_ASSIGN, MOD, MOD_ASSIGN, NOT_EQUAL, PLUS, PLUS_ASSIGN, QUESTION, SL, SL_ASSIGN, SR, SR_ASSIGN, STAR, STAR_ASSIGN"/> | |||
</module> | |||
<module name="TabCharacterCheck"> | |||
<property name="severity" value="error"/> | |||
</module> | |||
<module name="WhitespaceAfterCheck"> | |||
<property name="severity" value="warning"/> | |||
<property name="tokens" value="COMMA, SEMI"/> | |||
</module> | |||
<module name="WhitespaceAroundCheck"> | |||
<property name="severity" value="warning"/> | |||
<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"/> | |||
</module> | |||
</module> | |||
</module> |
@@ -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> |
@@ -94,6 +94,7 @@ the location of this file. | |||
--> | |||
<images mode="b+w" bits-per-pixel="8"/> | |||
<renderer-resolution>240</renderer-resolution> | |||
<line-width-correction>2.5</line-width-correction> | |||
<resource-group-file>resources.afp</resource-group-file> | |||
<fonts> |
@@ -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> | |||
@@ -146,8 +146,10 @@ | |||
<path refid="project.class.path"/> | |||
<pathelement location="${build.dest}"/> | |||
</classpath> | |||
<jvmarg value="-Xmx1024m"/> | |||
</java> | |||
</target> | |||
<target name="run" depends="example1,example2,example3,example4,example5,example5,example7,example8" description="Runs examples"/> | |||
<!-- =================================================================== --> | |||
<!-- Clean targets --> | |||
<!-- =================================================================== --> |
@@ -0,0 +1,64 @@ | |||
/* | |||
* 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.Font; | |||
import java.io.FileOutputStream; | |||
import java.io.OutputStream; | |||
import org.apache.avalon.framework.configuration.Configuration; | |||
import org.apache.avalon.framework.configuration.DefaultConfigurationBuilder; | |||
import org.apache.xmlgraphics.java2d.GraphicContext; | |||
import org.apache.xmlgraphics.java2d.ps.EPSDocumentGraphics2D; | |||
import org.apache.fop.fonts.FontInfo; | |||
import org.apache.fop.render.ps.NativeTextHandler; | |||
import org.apache.fop.svg.PDFDocumentGraphics2DConfigurator; | |||
public class ExampleEPS { | |||
/** | |||
* @param args | |||
*/ | |||
public static void main(String[] args) { | |||
try { | |||
String configFile = "examples/fop-eps.xconf"; | |||
DefaultConfigurationBuilder cfgBuilder = new DefaultConfigurationBuilder(); | |||
Configuration c = cfgBuilder.buildFromFile(configFile); | |||
FontInfo fontInfo = PDFDocumentGraphics2DConfigurator.createFontInfo(c, false); | |||
OutputStream out = new FileOutputStream("example_eps.eps"); | |||
EPSDocumentGraphics2D g2d = new EPSDocumentGraphics2D(false); | |||
g2d.setGraphicContext(new GraphicContext()); | |||
g2d.setCustomTextHandler(new NativeTextHandler(g2d, fontInfo)); | |||
g2d.setupDocument(out, 200, 100); | |||
g2d.setFont(new Font("Arial", Font.PLAIN, 12)); | |||
g2d.drawString("Hi there Arial", 50, 50); | |||
g2d.finish(); | |||
out.close(); | |||
} catch (Exception e) { | |||
e.printStackTrace(); | |||
} | |||
} | |||
} |
@@ -0,0 +1,52 @@ | |||
/* | |||
* 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.Font; | |||
import java.io.FileOutputStream; | |||
import java.io.OutputStream; | |||
import org.apache.xmlgraphics.java2d.GraphicContext; | |||
import org.apache.xmlgraphics.java2d.ps.EPSDocumentGraphics2D; | |||
import org.apache.fop.render.ps.NativeTextHandler; | |||
public class ExampleEPSSimple { | |||
/** | |||
* @param args | |||
*/ | |||
public static void main(String[] args) { | |||
try { | |||
OutputStream out = new FileOutputStream("example_eps_simple.eps"); | |||
EPSDocumentGraphics2D g2d = new EPSDocumentGraphics2D(false); | |||
g2d.setGraphicContext(new GraphicContext()); | |||
g2d.setCustomTextHandler(new NativeTextHandler(g2d, null)); | |||
g2d.setupDocument(out, 200, 100); | |||
g2d.setFont(new Font("Helvetica", Font.PLAIN, 12)); | |||
g2d.drawString("Hi there Helvetica", 50, 50); | |||
g2d.finish(); | |||
out.close(); | |||
} catch (Exception e) { | |||
e.printStackTrace(); | |||
} | |||
} | |||
} |
@@ -66,7 +66,8 @@ public class ExampleJava2D2PDF { | |||
throws ConfigurationException { | |||
PDFDocumentGraphics2DConfigurator configurator = new PDFDocumentGraphics2DConfigurator(); | |||
configurator.configure(g2d, cfg); | |||
boolean useComplexScriptFeatures = false; | |||
configurator.configure(g2d, cfg, useComplexScriptFeatures); | |||
} | |||
/** |
@@ -211,4 +211,4 @@ public class EasyGenerationContentHandlerProxy implements ContentHandler { | |||
target.skippedEntity(name); | |||
} | |||
} | |||
} |
@@ -1,5 +1,21 @@ | |||
<?xml version="1.0" encoding="utf-8"?> | |||
<FindBugsFilter> | |||
<Match> | |||
<Class name="org.apache.fop.fo.properties.FontFamilyProperty"/> | |||
<Bug pattern="EQ_DOESNT_OVERRIDE_EQUALS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.fo.properties.CondLengthProperty"/> | |||
<Bug pattern="UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.pdf.xref.TrailerDictionary$1FileID"/> | |||
<Bug pattern="SIC_INNER_SHOULD_BE_STATIC_ANON"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.fo.properties.ToBeImplementedProperty"/> | |||
<Bug pattern="EQ_ALWAYS_TRUE"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.render.intermediate.IFStructureTreeBuilder"/> | |||
<Field name="delegate"/> | |||
@@ -188,66 +204,11 @@ | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<!-- Automatically generated list of exclusions --> | |||
<Match> | |||
<Class name="org.apache.fop.area.BodyRegion"/> | |||
<Method name="clone"/> | |||
<Bug pattern="CN_IDIOM_NO_SUPER_CALL"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.area.Page"/> | |||
<Method name="clone"/> | |||
<Bug pattern="CN_IDIOM_NO_SUPER_CALL"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.area.PageViewport"/> | |||
<Method name="clone"/> | |||
<Bug pattern="CN_IDIOM_NO_SUPER_CALL"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.area.RegionReference"/> | |||
<Method name="clone"/> | |||
<Bug pattern="CN_IDIOM_NO_SUPER_CALL"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.area.BodyRegion"/> | |||
<!--Neither method nor field--> | |||
<Bug pattern="CN_IDIOM_NO_SUPER_CALL"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.area.RegionViewport"/> | |||
<Method name="clone"/> | |||
<Bug pattern="CN_IDIOM_NO_SUPER_CALL"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.hyphenation.CharVector"/> | |||
<Method name="clone"/> | |||
<Bug pattern="CN_IDIOM_NO_SUPER_CALL"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.hyphenation.TernaryTree"/> | |||
<Method name="clone"/> | |||
<Bug pattern="CN_IDIOM_NO_SUPER_CALL"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.hyphenation.HyphenationTree"/> | |||
<!--Neither method nor field--> | |||
<Bug pattern="CN_IDIOM_NO_SUPER_CALL"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.render.intermediate.IFGraphicContext"/> | |||
<Method name="clone"/> | |||
<Bug pattern="CN_IDIOM_NO_SUPER_CALL"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.render.rtf.rtflib.rtfdoc.RtfAttributes"/> | |||
<Method name="clone"/> | |||
<Bug pattern="CN_IDIOM_NO_SUPER_CALL"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.render.rtf.FOPRtfAttributes"/> | |||
<!--Neither method nor field--> | |||
<Bug pattern="CN_IDIOM_NO_SUPER_CALL"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.hyphenation.Hyphenator"/> | |||
<Method name="getResourceStream"/> | |||
@@ -4393,11 +4354,6 @@ | |||
<!--Neither method nor field--> | |||
<Bug pattern="RI_REDUNDANT_INTERFACES"/> | |||
</Match> | |||
<Match> | |||
<Class name="java.lang.Cloneable"/> | |||
<!--Neither method nor field--> | |||
<Bug pattern="RI_REDUNDANT_INTERFACES"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.afp.modca.AbstractResourceGroupContainer"/> | |||
<!--Neither method nor field--> | |||
@@ -4821,4 +4777,389 @@ | |||
<Bug pattern="REC_CATCH_EXCEPTION"/> | |||
</Match> | |||
<!-- /Automatically generated list of exclusions on 18 February 2011 --> | |||
<!-- complex script exclusions --> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphDefinitionTable"/> | |||
<Method name="getLookupTypeFromName"/> | |||
<Bug pattern="DM_CONVERT_CASE"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphPositioningTable"/> | |||
<Method name="getLookupTypeFromName"/> | |||
<Bug pattern="DM_CONVERT_CASE"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphSubstitutionTable"/> | |||
<Method name="getLookupTypeFromName"/> | |||
<Bug pattern="DM_CONVERT_CASE"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphTable"/> | |||
<Method name="getTableTypeFromName"/> | |||
<Bug pattern="DM_CONVERT_CASE"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.util.NumberConverter"/> | |||
<Method name="<init>"/> | |||
<Bug pattern="DM_CONVERT_CASE"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.util.NumberConverter"/> | |||
<Method name="convertWordCase"/> | |||
<Bug pattern="DM_CONVERT_CASE"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.fonts.autodetect.FontInfoFinder"/> | |||
<Method name="find"/> | |||
<Bug pattern="DM_CONVERT_CASE"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.bidi.InlineRun"/> | |||
<Method name="<init>" params="org.apache.fop.area.inline.InlineArea, int[]" returns="void"/> | |||
<Bug pattern="EI_EXPOSE_REP2"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphPositioningState"/> | |||
<Method name="<init>"/> | |||
<Bug pattern="EI_EXPOSE_REP2"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphPositioningTable$DeviceTable"/> | |||
<Method name="getDeltas"/> | |||
<Bug pattern="EI_EXPOSE_REP"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphPositioningTable$DeviceTable"/> | |||
<Method name="<init>"/> | |||
<Bug pattern="EI_EXPOSE_REP2"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.scripts.ArabicScriptProcessor"/> | |||
<Or> | |||
<Method name="getPositioningFeatures"/> | |||
<Method name="getSubstitutionFeatures"/> | |||
</Or> | |||
<Bug pattern="EI_EXPOSE_REP"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.scripts.DefaultScriptProcessor"/> | |||
<Or> | |||
<Method name="getPositioningFeatures"/> | |||
<Method name="getSubstitutionFeatures"/> | |||
</Or> | |||
<Bug pattern="EI_EXPOSE_REP"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.util.GlyphSequence"/> | |||
<Method name="getAssociations"/> | |||
<Bug pattern="EI_EXPOSE_REP"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.util.GlyphSequence$CharAssociation"/> | |||
<Method name="getSubIntervals"/> | |||
<Bug pattern="EI_EXPOSE_REP"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphSubstitutionState"/> | |||
<Method name="setAlternates"/> | |||
<Bug pattern="EI_EXPOSE_REP2"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphSubstitutionTable$Ligature"/> | |||
<Or> | |||
<Method name="getComponents"/> | |||
<Method name="getLigatures"/> | |||
</Or> | |||
<Bug pattern="EI_EXPOSE_REP"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphSubstitutionTable$Ligature"/> | |||
<Method name="<init>" params="int, int[]" returns="void"/> | |||
<Bug pattern="EI_EXPOSE_REP2"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphSubstitutionTable$LigatureSet"/> | |||
<Method name="getLigatures"/> | |||
<Bug pattern="EI_EXPOSE_REP"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphSubstitutionTable$LigatureSet"/> | |||
<Method name="<init>" params="org.apache.fop.complexscripts.fonts.GlyphSubstitutionTable$Ligature[]" returns="void"/> | |||
<Bug pattern="EI_EXPOSE_REP2"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphTable$ChainedClassSequenceRule"/> | |||
<Method name="<init>"/> | |||
<Bug pattern="EI_EXPOSE_REP2"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphTable$ChainedClassSequenceRule"/> | |||
<Or> | |||
<Method name="getBacktrackClasses"/> | |||
<Method name="getLookaheadClasses"/> | |||
</Or> | |||
<Bug pattern="EI_EXPOSE_REP"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphTable$ChainedCoverageSequenceRule"/> | |||
<Method name="<init>"/> | |||
<Bug pattern="EI_EXPOSE_REP2"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphTable$ChainedCoverageSequenceRule"/> | |||
<Or> | |||
<Method name="getBacktrackCoverages"/> | |||
<Method name="getLookaheadCoverages"/> | |||
</Or> | |||
<Bug pattern="EI_EXPOSE_REP"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphTable$ChainedGlyphSequenceRule"/> | |||
<Method name="<init>"/> | |||
<Bug pattern="EI_EXPOSE_REP2"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphTable$ChainedGlyphSequenceRule"/> | |||
<Or> | |||
<Method name="getBacktrackGlyphs"/> | |||
<Method name="getLookaheadGlyphs"/> | |||
</Or> | |||
<Bug pattern="EI_EXPOSE_REP"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphTable$ClassSequenceRule"/> | |||
<Method name="<init>"/> | |||
<Bug pattern="EI_EXPOSE_REP2"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphTable$ClassSequenceRule"/> | |||
<Method name="getClasses"/> | |||
<Bug pattern="EI_EXPOSE_REP"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphTable$CoverageSequenceRule"/> | |||
<Method name="<init>"/> | |||
<Bug pattern="EI_EXPOSE_REP2"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphTable$CoverageSequenceRule"/> | |||
<Method name="getCoverages"/> | |||
<Bug pattern="EI_EXPOSE_REP"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphTable$GlyphSequenceRule"/> | |||
<Method name="<init>"/> | |||
<Bug pattern="EI_EXPOSE_REP2"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphTable$GlyphSequenceRule"/> | |||
<Method name="getGlyphs"/> | |||
<Bug pattern="EI_EXPOSE_REP"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphTable$Rule"/> | |||
<Method name="getLookups"/> | |||
<Bug pattern="EI_EXPOSE_REP"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphTable$RuleSet"/> | |||
<Method name="<init>"/> | |||
<Bug pattern="EI_EXPOSE_REP2"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphTable$RuleSet"/> | |||
<Method name="getRules"/> | |||
<Bug pattern="EI_EXPOSE_REP"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.scripts.IndicScriptProcessor"/> | |||
<Or> | |||
<Method name="getPositioningFeatures"/> | |||
<Method name="getSubstitutionFeatures"/> | |||
<Method name="getOptionalSubstitutionFeatures"/> | |||
</Or> | |||
<Bug pattern="EI_EXPOSE_REP"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.area.inline.WordArea"/> | |||
<Or> | |||
<Method name="getBidiLevels"/> | |||
<Method name="getGlyphPositionAdjustments"/> | |||
</Or> | |||
<Bug pattern="EI_EXPOSE_REP"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.fo.FOText"/> | |||
<Method name="getBidiLevels"/> | |||
<Bug pattern="EI_EXPOSE_REP"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.fonts.truetype.TTFDirTabEntry"/> | |||
<Method name="getTag"/> | |||
<Bug pattern="EI_EXPOSE_REP"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.area.inline.TextArea"/> | |||
<Method name="makeLevels"/> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.area.inline.WordArea"/> | |||
<Or> | |||
<Method name="getBidiLevels"/> | |||
<Method name="glyphPositionAdjustmentsAt"/> | |||
</Or> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.bidi.UnicodeBidiAlgorithm"/> | |||
<Method name="resolveLevels"/> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphPositioningTable$ChainedContextualSubtableFormat1"/> | |||
<Method name="getLookups"/> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphPositioningTable$ChainedContextualSubtableFormat2"/> | |||
<Method name="getLookups"/> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphPositioningTable$ChainedContextualSubtableFormat3"/> | |||
<Method name="getLookups"/> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphPositioningTable$ContextualSubtableFormat1"/> | |||
<Method name="getLookups"/> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphPositioningTable$ContextualSubtableFormat2"/> | |||
<Method name="getLookups"/> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphPositioningTable$ContextualSubtableFormat3"/> | |||
<Method name="getLookups"/> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphPositioningTable$CursiveSubtableFormat1"/> | |||
<Method name="getExitEntryAnchors"/> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphSubstitutionTable$AlternateSubtableFormat1"/> | |||
<Method name="getAlternatesForCoverageIndex"/> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphSubstitutionTable$ChainedContextualSubtableFormat1"/> | |||
<Method name="getLookups"/> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphSubstitutionTable$ChainedContextualSubtableFormat2"/> | |||
<Method name="getLookups"/> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphSubstitutionTable$ChainedContextualSubtableFormat3"/> | |||
<Method name="getLookups"/> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphSubstitutionTable$ContextualSubtableFormat1"/> | |||
<Method name="getLookups"/> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphSubstitutionTable$ContextualSubtableFormat2"/> | |||
<Method name="getLookups"/> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphSubstitutionTable$ContextualSubtableFormat3"/> | |||
<Method name="getLookups"/> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphSubstitutionTable$MultipleSubtableFormat1"/> | |||
<Method name="getGlyphsForCoverageIndex"/> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.fonts.GlyphTable$LookupTable"/> | |||
<Method name="getSubtables"/> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.util.NumberConverter"/> | |||
<Or> | |||
<Method name="formatNumberAsSequence"/> | |||
<Method name="formatNumberAsSpecial"/> | |||
</Or> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.util.NumberConverter$ArabicNumeralsFormatter"/> | |||
<Method name="format"/> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.util.NumberConverter$EnglishNumberAsWordFormatter"/> | |||
<Method name="format"/> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.util.NumberConverter$FrenchNumberAsWordFormatter"/> | |||
<Method name="format"/> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.util.NumberConverter$GematriaNumeralsFormatter"/> | |||
<Method name="format"/> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.util.NumberConverter$IsopsephryNumeralsFormatter"/> | |||
<Method name="format"/> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.util.NumberConverter$KanaNumeralsFormatter"/> | |||
<Method name="format"/> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.util.NumberConverter$RomanNumeralsFormatter"/> | |||
<Method name="format"/> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.util.NumberConverter$SpanishNumberAsWordFormatter"/> | |||
<Method name="format"/> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.complexscripts.util.NumberConverter$ThaiNumeralsFormatter"/> | |||
<Method name="format"/> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.fo.FOText"/> | |||
<Or> | |||
<Method name="getBidiLevels"/> | |||
<Method name="getMappingBidiLevels"/> | |||
</Or> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
<Match> | |||
<Class name="org.apache.fop.layoutmgr.inline.TextLayoutManager$TextAreaBuilder"/> | |||
<Method name="getNonEmptyLevels"/> | |||
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/> | |||
</Match> | |||
</FindBugsFilter> |
@@ -18,6 +18,7 @@ | |||
# Shell script to run FOP, adapted from the Jakarta-Ant project. | |||
rpm_mode=true | |||
java_exec_args="-Djava.awt.headless=true" | |||
fop_exec_args= | |||
no_config=false | |||
fop_exec_debug=false | |||
@@ -247,7 +248,7 @@ fi | |||
# Execute FOP using eval/exec to preserve spaces in paths, | |||
# java options, and FOP args | |||
fop_exec_command="exec \"$JAVACMD\" $LOGCHOICE $LOGLEVEL -classpath \"$LOCALCLASSPATH\" $FOP_OPTS org.apache.fop.cli.Main $fop_exec_args" | |||
fop_exec_command="exec \"$JAVACMD\" $java_exec_args $LOGCHOICE $LOGLEVEL -classpath \"$LOCALCLASSPATH\" $FOP_OPTS org.apache.fop.cli.Main $fop_exec_args" | |||
if $fop_exec_debug ; then | |||
echo $fop_exec_command | |||
fi |
@@ -58,7 +58,7 @@ 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% | |||
set JAVAOPTS=-Denv.windir=%WINDIR% -Djava.awt.headless=true | |||
if "%JAVA_HOME%" == "" goto noJavaHome | |||
if not exist "%JAVA_HOME%\bin\java.exe" goto noJavaHome |
@@ -27,5 +27,5 @@ goto setupArgs | |||
rem This label provides a place for the argument list loop to break out | |||
:doneStart | |||
call %LOCAL_FOP_HOME%\fop.bat %FOP_CMD_LINE_ARGS% | |||
call "%LOCAL_FOP_HOME%\fop.bat" %FOP_CMD_LINE_ARGS% | |||
@@ -18,6 +18,7 @@ | |||
// rpm_mode is irrelevant on Windows | |||
// var rpm_mode=true; | |||
var java_exec_args = "-Djava.awt.headless=true"; | |||
var fop_exec_args = ""; | |||
var no_config=false; | |||
var fop_exec_debug=false; | |||
@@ -62,6 +63,7 @@ function read_args() { | |||
WScript.Echo("keepopen: " + keep_open); | |||
WScript.Echo("noconfig: " + no_config); | |||
WScript.Echo("help: " + show_help); | |||
WScript.Echo("java arguments: " + java_exec_args); | |||
WScript.Echo("fop arguments: " + fop_exec_args); | |||
} | |||
} | |||
@@ -220,6 +222,7 @@ function get_local_classpath() { | |||
// Execute fop via shell.Exec | |||
function fop_exec() { | |||
var fop_exec_command = "\"" + javacmd + "\" " | |||
+ java_exec_args + " " | |||
+ (config.Exists("JAVA_OPTS")?config.Item("JAVA_OPTS") + " ":"") | |||
+ (config.Exists("LOGCHOICE")?config.Item("LOGCHOICE") + " ":"") | |||
+ (config.Exists("LOGLEVEL")?config.Item("LOGLEVEL") + " ":"") | |||
@@ -252,6 +255,7 @@ function fop_exec() { | |||
function fop_run() { | |||
var fop_exec_command = "cmd /" + (keep_open?"K":"C") + " \"" | |||
+ "\"" + javacmd + "\" " | |||
+ java_exec_args + " " | |||
+ (config.Exists("JAVA_OPTS")?config.Item("JAVA_OPTS") + " ":"") | |||
+ (config.Exists("LOGCHOICE")?config.Item("LOGCHOICE") + " ":"") | |||
+ (config.Exists("LOGLEVEL")?config.Item("LOGLEVEL") + " ":"") |
@@ -5,7 +5,7 @@ | |||
<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"> | |||
<target name="test-coverage" depends="junit-compile"> | |||
<jacoco:coverage destfile="${jacoco.report.dir}/jacoco.exec"> | |||
<junit dir="${basedir}" haltonfailure="yes" fork="on" forkmode="once"> | |||
<sysproperty key="jawa.awt.headless" value="true"/> |
@@ -49,7 +49,7 @@ class EventProducerCollector { | |||
private static final Map<String, Class<?>> PRIMITIVE_MAP; | |||
static { | |||
Map <String, Class<?>> m = new java.util.HashMap<String, Class<?>>(); | |||
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); |
@@ -58,7 +58,7 @@ import org.apache.fop.events.model.EventProducerModel; | |||
*/ | |||
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; | |||
@@ -202,7 +202,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> | |||
@@ -45,22 +45,70 @@ an email as changes are made to the issue.</li> | |||
</section> | |||
<section id="issues_new"> | |||
<title>Unreported Issues (Reporting New Issues)</title> | |||
<p>User reports of bugs and requests for enhancements are extremely | |||
important parts of FOP development, and we appreciate the time you take to help | |||
us track these issues down.</p> | |||
<p> | |||
User reports of bugs and requests for enhancements are extremely | |||
important parts of FOP development, and we appreciate the time you take to help | |||
us track these issues down. | |||
</p> | |||
<ul> | |||
<li>To help us ensure that the bug database is as useful as it should be, please | |||
use the <link href="gethelp.html">Getting Help</link> checklist to determine whether a bug report should be entered.</li> | |||
<li>Review the <link href="http://issues.apache.org/bugzilla/page.cgi?id=bug-writing.html">Apache Bug Writing Guidelines</link> before submitting your report.</li> | |||
<li>Enter a new issue report at <link href="http://issues.apache.org/bugzilla/enter_bug.cgi?product=Fop">The FOP issue database (Bugzilla)</link>. | |||
You will be asked to login to an existing Bugzilla account or to create a new | |||
one. | |||
When entering the bug report, please make your description complete and concise. | |||
If appropriate, attach a minimal fo file to your report which demonstrates the | |||
problem.</li> | |||
<li>After submission, a copy of your bug report will be automatically | |||
sent to the FOP developer discussion list.</li> | |||
<li> | |||
To help us ensure that the bug database is as useful as it should be, please | |||
use the <link href="gethelp.html">Getting Help</link> checklist to determine whether a bug report should be entered. | |||
</li> | |||
<li> | |||
Review the <link href="http://issues.apache.org/bugzilla/page.cgi?id=bug-writing.html">Apache Bug | |||
Writing Guidelines</link> before submitting your report. | |||
</li> | |||
<li> | |||
Enter a new issue report at <link href="http://issues.apache.org/bugzilla/enter_bug.cgi?product=Fop">The | |||
FOP issue database (Bugzilla)</link>. You will be asked to login to an existing Bugzilla account or to | |||
create a new one. When entering the bug report, please make your description complete and concise. | |||
If the issue involves a specific input or output file, then you <strong>MUST</strong> include the | |||
following information in the bug report (preferably as one or more attachments): | |||
<ul> | |||
<li> | |||
an input XSL-FO file (an input XML plus XSLT file is not acceptable, unless and only if the | |||
issue being reported is related to the built-in XSLT transform processing convenience function provided | |||
by FOP); this input <strong>SHOULD</strong> be <em>maximally minimal</em>, which means that it should | |||
contain nothing more than the minimum needed to demonstrate the problem; if you do not take the effort | |||
to provide a maximally minimal input FO file, then you will be subsequently asked to do so before the | |||
bug is processed; | |||
</li> | |||
<li> | |||
a resulting output file, preferably in PDF format; if the issue being reported involves a different output | |||
format, then provide both a PDF output file and the output file for the output format for which the report | |||
applies; | |||
</li> | |||
<li> | |||
a copy of the FOP configuration file you used (e.g., fop.xconf); | |||
</li> | |||
<li> | |||
if FOP was invoked using the command line (or an equivalent), then a dump of both the input | |||
command line and any console output (stderr or stdout) produced; if the report involves an | |||
exception, then this <strong>MUST</strong> include the full stack back trace; | |||
</li> | |||
<li> | |||
information describing the version of FOP you are using and the platform (and OS) on which | |||
you are invoking FOP; | |||
</li> | |||
<li> | |||
if the report applies to the use of a specific font other than one of the built-in, base 14 | |||
fonts, then information that describes where to obtain the font. | |||
</li> | |||
</ul> | |||
</li> | |||
<li> | |||
After submission, a copy of your bug report will be automatically | |||
sent to the FOP developer discussion list. If additional information is needed to | |||
process the bug, then the bug will be set to the <code>NEEDSINFO</code> state, and | |||
you will be asked to provide the additional information. You can avoid this extra | |||
step by being diligent about providing <strong>all</strong> of the information | |||
indicated above. | |||
</li> | |||
</ul> | |||
</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 | |||
@@ -3842,10 +3842,10 @@ | |||
"http://www.w3.org/TR/xsl/#page-height">§7.27.13</a></td> | |||
<td><a name="fo-property-page-height" id="fo-property-page-height">page-height</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>value "indefinite" not yet supported</td> | |||
</tr> | |||
<tr> | |||
<td align="center"><a href= | |||
@@ -3862,10 +3862,10 @@ | |||
"http://www.w3.org/TR/xsl/#page-width">§7.27.15</a></td> | |||
<td><a name="fo-property-page-width" id="fo-property-page-width">page-width</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>value "indefinite" not yet supported</td> | |||
</tr> | |||
<tr> | |||
<td align="center"><a href= | |||
@@ -3962,10 +3962,10 @@ | |||
<td><a name="fo-property-border-collapse" id= | |||
"fo-property-border-collapse">border-collapse</a></td> | |||
<td class="extended">Extended</td> | |||
<td class="yes">yes</td> | |||
<td class="yes">yes</td> | |||
<td class="yes">yes</td> | |||
<td>Some small limitations</td> | |||
<td class="partial">partial</td> | |||
<td class="partial">partial</td> | |||
<td class="partial">partial</td> | |||
<td>value "collapse-with-precedence" not yet supported</td> | |||
</tr> | |||
<tr> | |||
<td align="center"><a href= |
@@ -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,106 +19,78 @@ | |||
<!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. | |||
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> | |||
<p>This page documents the process of creating a Apache™ FOP release. FOP releases are coordinated by some designated member of the team. | |||
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 is based on a combination of input from from Christian Geisert and Simon Pepping.</p> | |||
</section> | |||
<section id="checklist"> | |||
<title>Checklist</title> | |||
<ul> | |||
<li>Determine which open bugs must be solved before a release can take place (release critical bugs). | |||
Make this bug depend on each release critical bug and write a short argument why the bug is release critical.</li> | |||
<li>Determine whether this is a Release Candidate or a Release.</li> | |||
<li>Determine whether further testing is required.</li> | |||
<li>Commit any outstanding changes</li> | |||
<li>Create a branch called <code>branches/fop-v_vv</code></li> | |||
<li>Edit release notes (<code>README</code> and | |||
<code>status.xml</code> in the root).</li> | |||
<li>Add the release to <code>news-data.xml</code>; | |||
remove links to release notes of older versions from this file.</li> | |||
<li>Update the FAQ (<code>faq.xml</code>) to the new release.</li> | |||
<li>Check and update the copyright year in NOTICE and build.xml.</li> | |||
<li>Edit release notes (<code>README</code> and <code>status.xml</code> in the root).</li> | |||
<li>Add the release to <code>news-data.xml</code>; | |||
remove links to release notes of older versions from this file.</li> | |||
<li>Update the FAQ (<code>faq.xml</code>) to the new release, e.g., update the answer for "When is the next release planned?".</li> | |||
<li>Check and update the copyright year in NOTICE and build.xml.</li> | |||
<li>Update the file <code>doap.rdf</code>, and the files | |||
<code>index.xml</code>, <code>site.xml</code>, | |||
<code>download.xml</code>, <code>fo.xml</code>, | |||
<code>maillist.xml</code>, <code>quickstartguide.xml</code>, | |||
<code>faq.xml</code> and <code>status.xml</code> | |||
<code>maillist.xml</code>, and <code>quickstartguide.xml</code> | |||
in directory <code>xdocs</code> for the new version.</li> | |||
<li>Update the version numbers in the release column on the | |||
compliance page (<code>compliance.xml</code>); update the compliance in the release column | |||
to the current state (development column).</li> | |||
<li>Update version number in <code>build.xml</code> (not to be merged back | |||
into trunk).</li> | |||
<li>Copy trunk documentation directory to a new directory with | |||
the new version number, and update the .htaccess file for | |||
redirections.</li> | |||
<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>. | |||
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> | |||
links in it.</li> | |||
<li>Update the tab names and directories in tabs.xml</li> | |||
<li>Copy trunk documentation directory to a new directory with the new version number, and update the <code>.htaccess</code> file for | |||
redirections.</li> | |||
<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>. | |||
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> links in it.</li> | |||
<li>Update the tab names and directories in <code>tabs.xml</code></li> | |||
<li>Delete the previous version directory.</li> | |||
<li>Update index.xml in the new version directory.</li> | |||
<li>Update compiling.xml in the new version directory: change the intro for trunk to that for a release.</li> | |||
<li>Build the dist files (<code>build[.sh] dist</code>) | |||
and upload them to your web directory on | |||
<code>people.apache.org</code></li> | |||
<li>Ask on fop-dev to check the branch and the generated dist | |||
files for errors.</li> | |||
<li>Update <code>index.xml</code> in the new version directory.</li> | |||
<li>Update <code>compiling.xml</code> in the new version directory: change the introduction for trunk to that for a release.</li> | |||
<li>Build the dist files (<code>build[.sh] dist</code>) and upload them to your web directory on <code>people.apache.org</code></li> | |||
<li>Ask on <code>fop-dev</code> ML to check the branch and the generated dist files for errors.</li> | |||
<li>Tag the source tree with the release ID. For example, if the release is 1.0: | |||
<code>svn copy https://svn.apache.org/repos/asf/xmlgraphics/fop/branches/fop-1_0 https://svn.apache.org/repos/asf/xmlgraphics/fop/tags/fop-1_0</code></li> | |||
<li>Make a fresh checkout with the just created tag: | |||
<code>svn co https://svn.apache.org/repos/asf/xmlgraphics/fop/tags/fop-1_0</code></li> | |||
<li>Copy jimi and jai to lib/ (jimi-1.0.jar, jai_core.jar, jai_codec.jar)</li> | |||
<li>Copy jce-jdk13-119.jar from <link href="http://www.bouncycastle.org/latest_releases.html"> | |||
from http://www.bouncycastle.org/latest_releases.html</link> to lib/</li> | |||
<li>Copy the hyphenation patterns jar file | |||
<code>fop-hyph.jar</code> to lib/ (e.g. from | |||
<code>http://sourceforge.net/projects/offo</code></li> | |||
<li>Alternatively, create a build-local.properties file that points to the above libs.</li> | |||
<li>Run build[.sh] dist. Do this using Sun JDK 1.4.2_08 or later. A Forrest installation is needed.</li> | |||
<li>Create signatures. Don't forget to upload your KEY: | |||
<code>gpg -a -b --force-v3-sigs fop-1.0-src.tar.gz</code> etc.</li> | |||
<li>Upload the dist and signature files to your web directory | |||
on people.apache.org (An account on minotaur is needed): | |||
<code>scp fop-1.0*.tar.gz* | |||
chrisg@people.apache.org:public_html/</code></li> | |||
<li>Check permissions: | |||
<code>chmod 664 ... ; chgrp xmlgraphics ...</code></li> | |||
<li>Add MD5 sums: <code>md5 fop-1.0-src.tar.gz > | |||
fop-1.0-src.tar.gz.md5</code> etc.</li> | |||
<li>Make a fresh checkout with the just created tag: <code>svn co https://svn.apache.org/repos/asf/xmlgraphics/fop/tags/fop-1_0</code></li> | |||
<li>Copy the hyphenation patterns jar file <code>fop-hyph.jar</code> to <code>lib</code> (e.g. from <code>http://sourceforge.net/projects/offo</code></li> | |||
<li>Alternatively, create a <code>build-local.properties</code> file that points to the above libraries.</li> | |||
<li>Run <code>build[.sh] dist</code>. Do this using Sun JDK 1.5 or later. A Forrest installation is needed.</li> | |||
<li>Create signatures. Don't forget to upload your KEY: <code>gpg -a -b --force-v3-sigs fop-1.0-src.tar.gz</code> etc.</li> | |||
<li>Upload the dist and signature files to your web directory on people.apache.org (An account on minotaur is needed): | |||
<code>scp fop-1.0*.tar.gz* chrisg@people.apache.org:public_html/</code></li> | |||
<li>Check permissions: <code>chmod 664 ... ; chgrp xmlgraphics ...</code></li> | |||
<li>Add MD5 sums: <code>md5 fop-1.0-src.tar.gz > fop-1.0-src.tar.gz.md5</code> etc.</li> | |||
<li>Make a test download.</li> | |||
<li>Start a vote for the release on | |||
<code>general@xmlgraphics.a.o</code>. The message should point | |||
to the release files and list the MD5 sums (<code>cat | |||
*.md5</code>). The vote is open for 72hrs.</li> | |||
<li>When the release is accepted, copy the release files, | |||
their md5 sum files and the signature files to | |||
/www/www.apache.org/dist/xmlgraphics/fop/ in the | |||
subdirectories <code>source</code> and | |||
<code>binaries</code>. Create links to all files in the | |||
<code>fop</code> directory. Remove the links to the files of | |||
the previous version.</li> | |||
<li>Update HEADER.html and README.html in people.apache.org:/www/www.apache.org/dist/xmlgraphics/fop/</li> | |||
<li>Start a vote for the release on <code>general@xmlgraphics.apache.org</code>. The message should point | |||
to the release files and list the MD5 sums (<code>cat *.md5</code>). The vote should remain open for 72hrs.</li> | |||
<li>When the release is accepted, copy the release files, their md5 sum files and the signature files to | |||
<code>/www/www.apache.org/dist/xmlgraphics/fop/</code> in the subdirectories <code>source</code> and | |||
<code>binaries</code>. Create links to all files in the <code>fop</code> directory. Remove the links to the files of | |||
the previous version.</li> | |||
<li>Update <code>HEADER.html</code> and <code>README.html</code> in <code>people.apache.org:/www/www.apache.org/dist/xmlgraphics/fop/</code>.</li> | |||
<li>Wait 24 hours (for the mirrors to catch up).</li> | |||
<li>Merge the changes of the subversion release branch back | |||
into trunk (not the version number in the build file) and | |||
delete the branch.</li> | |||
<li>Merge the changes of the subversion release branch back into trunk (not the version number in the build file) and | |||
delete the branch.</li> | |||
<li>Deploy the updated documentation to the FOP website.</li> | |||
<li>Post announcements on fop-dev and fop-user and other related mailing lists.</li> | |||
<li>Ask a Bugzilla admin (Christian Geisert) to add a bugzilla | |||
entry for the new release id, or create an issue at | |||
<code>https://issues.apache.org/jira/browse/INFRA</code>.</li> | |||
<li>Post announcements on <code>fop-dev</code> and <code>fop-user</code> and other related mailing lists.</li> | |||
<li>Ask an FOP bugzilla admin to add a bugzilla entry for the new release id, or create an issue at <code>https://issues.apache.org/jira/browse/INFRA</code>.</li> | |||
<li>Deploy the maven bundle.</li> | |||
</ul> | |||
</section> | |||
<section id="other-checklists"> | |||
@@ -129,6 +101,7 @@ The purpose of documenting it here is to facilitate consistency, ensure that the | |||
<li><jump href="http://svn.apache.org/repos/asf/ant/core/trunk/ReleaseInstructions">Apache Ant</jump></li> | |||
<li><jump href="http://jakarta.apache.org/cactus/participating/release_checklist.html">Apache Cactus</jump></li> | |||
</ul> | |||
<p/> | |||
<p>Following are links with information about mirroring:</p> | |||
<ul> | |||
<li><jump href="http://www.apache.org/dev/mirrors.html">Apache Mirroring</jump></li> | |||
@@ -137,7 +110,7 @@ The purpose of documenting it here is to facilitate consistency, ensure that the | |||
</section> | |||
<section id="announcements"> | |||
<title>Announcing the release</title> | |||
<p>Here's a collected list of places where to announce new FOP releases:</p> | |||
<p>Here's a suggested list of places where to announce new FOP releases:</p> | |||
<ul> | |||
<li>fop-dev@xmlgraphics.apache.org</li> | |||
<li>fop-users@xmlgraphics.apache.org</li> | |||
@@ -145,14 +118,13 @@ The purpose of documenting it here is to facilitate consistency, ensure that the | |||
<li>general@xml.apache.org</li> | |||
<li>announce@apache.org (from your apache.org address)</li> | |||
<li>xsl-list@lists.mulberrytech.com (subscriber-only)</li> | |||
<li>XSL-FO@yahoogroups.com (subscriber-only)</li> | |||
<li>xsl-fo@yahoogroups.com (subscriber-only)</li> | |||
<li>www-xsl-fo@w3.org</li> | |||
<li>docbook-apps@lists.oasis-open.org (subscriber-only)</li> | |||
<li>dita-users@yahoogroups.com (subscriber-only) (http://dita-ot.sourceforge.net/)</li> | |||
<li>http://xslfo-zone.com/news/index.jsp</li> | |||
<li>http://www.w3.org/Style/XSL/</li> | |||
<li>http://freshmeat.net/projects/fop/</li> | |||
<li>any others?</li> | |||
</ul> | |||
</section> | |||
</body> |
@@ -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> |
@@ -20,7 +20,7 @@ | |||
<document> | |||
<header> | |||
<title>FOP Development: SVG Issues</title> | |||
<title>Apache™ FOP Development: SVG Issues</title> | |||
<version>$Revision$</version> | |||
</header> | |||
<body> | |||
@@ -34,7 +34,7 @@ to PDF: | |||
<table> | |||
<caption>SVG to PDF examples</caption> | |||
<tr> | |||
<th></th> | |||
<th/> | |||
<th>svg file</th> | |||
<th>png file</th> | |||
<th>pdf result</th> | |||
@@ -79,7 +79,7 @@ You will need Acrobat 5.0 to see transparency. | |||
<table> | |||
<caption>XSL:FO to PDF examples</caption> | |||
<tr> | |||
<th></th> | |||
<th/> | |||
<th>fo file</th> | |||
<th>pdf result</th> | |||
</tr> | |||
@@ -133,5 +133,4 @@ This svg font could be converted into a pdf stroked font | |||
</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 V1.3//EN" "http://forrest.apache.org/dtd/document-v13.dtd"> | |||
<document> | |||
<header> | |||
<title>FOP Development: Testing</title> | |||
<title>Apache™ FOP Development: Testing</title> | |||
<version>$Revision$</version> | |||
</header> | |||
<body> | |||
<section id="build"> | |||
<title>"Build" Testing</title> | |||
<p>Apache projects use an automated build tool called "gump" to create nightly builds from the SVN repository. Gump sends "nag" messages if the build fails. This can be considered a sort of basic test of the build process. To view the most recent logs of the gump builds:</p> | |||
<p>Apache™ projects use an automated build tool called "gump" to create nightly builds from the SVN repository. Gump sends "nag" messages if the build fails. This can be considered a sort of basic test of the build process. To view the most recent logs of the gump builds:</p> | |||
<ul> | |||
<li><link href="http://gump.cocoondev.org/xml-fop.html">Gump build for the Trunk</link></li> | |||
<li><link href="http://gump.cocoondev.org/xml-fop-maintenance.html">Gump build for the Maintenance Branch</link></li> | |||
@@ -43,7 +43,7 @@ The tests do not check the output, but only ensure that something is generated a | |||
<title>Layout Engine Testing</title> | |||
<p> | |||
The <link href="http://svn.apache.org/viewcvs.cgi/xmlgraphics/fop/trunk/test/layoutengine/"><code>test/layoutengine</code></link> | |||
directory in the repository contains a test suite for checking the functionality of FOP's | |||
directory in the repository contains a test suite for checking the functionality of Apache� FOP's | |||
layout engine. For information on how to create test cases for the layout engine, please | |||
visit the <link href="http://wiki.apache.org/xmlgraphics-fop/HowToCreateLayoutEngineTests">Wiki page</link>. | |||
</p> | |||
@@ -64,7 +64,7 @@ is to have the tests run to verfiy that nothing working has been broken. | |||
</p> | |||
<p> | |||
To setup the testing the developer must place a reference fop.jar in the | |||
"<cvs_repository>/test/reference/" directory. This jar will be dynamically | |||
"<cvs_repository>/test/reference/" directory. This jar will be dynamically | |||
loaded to create the reference output. | |||
</p> | |||
</section> | |||
@@ -114,7 +114,7 @@ test works as would be expected against the current build. | |||
<section> | |||
<title>How Testing Works</title> | |||
<p> | |||
The tests are stored in the "<svn_repository>/test" directory. | |||
The tests are stored in the "<svn_repository>/test" directory. | |||
</p> | |||
<p> | |||
You can run the tests by specifying the build target "test" ie: <br/> | |||
@@ -150,5 +150,4 @@ testing is how the SVG image is embedded inside the flow of the fo document. | |||
</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: Developer Tools</title> | |||
<title>Apache™ FOP Development: Developer Tools</title> | |||
<version>$Revision$</version> | |||
</header> | |||
<body> | |||
<p> | |||
This page documents items that may be helpful to other developers, | |||
especially to those who are new to FOP. Exhaustive treatment of these | |||
especially to those who are new to Apache™ FOP. Exhaustive treatment of these | |||
topics is better suited to other fora, but the information presented | |||
here is intended to deal with FOP-specific issues related to these | |||
tools, especially "gotchas", and to help developers get jump-started. | |||
@@ -129,4 +129,4 @@ Note that this manual applies to the command-line version of SVN.</li> | |||
<p>Additional notes on setting up FOP within an IDE (ex. Eclipse) in the <fork href="http://wiki.apache.org/xmlgraphics-fop/FOPIDESetupGuide">Wiki</fork>.</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,14 +19,14 @@ | |||
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.3//EN" "http://forrest.apache.org/dtd/document-v13.dtd"> | |||
<document> | |||
<header> | |||
<title>Apache FOP: Downloading A Distribution</title> | |||
<title>Apache™ FOP: Downloading A Distribution</title> | |||
<version>$Revision$</version> | |||
</header> | |||
<body> | |||
<section id="dist-type"> | |||
<title>Binary or Source?</title> | |||
<p> | |||
Most FOP users will want to download the latest binary distribution, | |||
Most Apache™ FOP users will want to download the latest binary distribution, | |||
which is ready to run "out of the box." However, a source distribution | |||
will be preferable if you fall into one of the following categories: | |||
</p> | |||
@@ -175,4 +175,4 @@ | |||
</section> | |||
</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 | |||
@@ -20,14 +20,14 @@ | |||
<document> | |||
<header> | |||
<title>Examples</title> | |||
<title>Apache™ FOP Examples</title> | |||
<version>$Revision$</version> | |||
</header> | |||
<body> | |||
<section> | |||
<title>Example Documents Using FOP</title> | |||
<title>Example Documents Using Apache™ FOP</title> | |||
<p> | |||
These examples have been rendered using FOP: | |||
These examples have been rendered using Apache™ FOP: | |||
</p> | |||
<table> | |||
<caption>Generated examples</caption> |
@@ -20,12 +20,12 @@ | |||
<faqs title="FOP FAQ"> | |||
<part id="part-general"> | |||
<title>General questions</title> | |||
<title>Apache™ FOP: General questions</title> | |||
<faq id="fop-general"> | |||
<question>What is FOP?</question> | |||
<question>What is Apache™ FOP?</question> | |||
<answer> | |||
<p> | |||
FOP is a print formatter for <link href="#XSLFO">XSL formatting | |||
FOP is a print formatter for <link href="#xslfo">XSL formatting | |||
objects</link>. | |||
</p> | |||
<p> | |||
@@ -65,16 +65,23 @@ | |||
<question>How does FOP interact with other Apache Projects?</question> | |||
<answer> | |||
<p> | |||
FOP is distributed with <link | |||
href="http://xml.apache.org/cocoon">Cocoon</link> as a PDF serializer | |||
for XSL (FO) documents. | |||
<link href="http://xmlgraphics.apache.org/commons">XML Graphics Commons</link> is used with | |||
FOP to provide graphics functions that are common to a number of Apache projects. | |||
</p> | |||
<p> | |||
<link href="http://xmlgraphics.apache.org/batik">Batik</link> can be used with | |||
<link href="http://xmlgraphics.apache.org/batik">Batik</link> is used with | |||
FOP to <link | |||
href="http://xmlgraphics.apache.org/batik/svgrasterizer.html">transcode an SVG | |||
image</link> into a PDF document. | |||
</p> | |||
<p>FOP also makes use of the following Apache projects:</p> | |||
<ul> | |||
<li><link href="http://excalibur.apache.org/framework/">Avalon Framework</link></li> | |||
<li><link href="http://jakarta.apache.org/commons/io/">Jakarta Commons IO</link></li> | |||
<li><link href="http://jakarta.apache.org/commons/logging/">Jakarta Commons Logging</link></li> | |||
<li><link href="http://xalan.apache.org/">Xalan-J</link></li> | |||
<li><link href="http://xml.apache.org/commons/components/external/">XML Commons Externals</link></li> | |||
</ul> | |||
</answer> | |||
</faq> | |||
<faq id="xsl-def"> | |||
@@ -83,7 +90,7 @@ | |||
<p> | |||
XSL is a W3C standard concerned with publishing XML documents. It | |||
consists of two parts: <link href="#XSLT">XSLT</link> and <link | |||
href="#XSLFO">XSL-FO</link>. The acronym expands to | |||
href="#xslfo">XSL-FO</link>. The acronym expands to | |||
e<strong>X</strong>tensible <strong>S</strong>tylesheet | |||
<strong>L</strong>anguage. | |||
</p> | |||
@@ -93,7 +100,9 @@ | |||
<question>What is XSL-FO?</question> | |||
<answer> | |||
<p> | |||
XSLFO (aka XSL-FO) is an XML vocabulary that is used to specify a pagination and | |||
XSLFO (aka XSL-FO) is an XML vocabulary, defined by W3C Recommendation | |||
<link href="http://www.w3.org/TR/xsl/">Extensible Stylesheet Language (XSL) | |||
Version 1.1</link>, that is used to specify a pagination and | |||
other styling for page layout output. The acronym “FO” | |||
stands for | |||
<strong>F</strong>ormatting <strong>O</strong>bjects. XSLFO can be | |||
@@ -226,8 +235,7 @@ | |||
<answer> | |||
<p> | |||
This is usually caused by an older version of one of the FOP jars or | |||
old XML tools in the classpath. Check in particular for parser.jar, | |||
jaxp.jar, xml4j.jar or lotusxsl.jar. | |||
old XML tools in the classpath. | |||
</p> | |||
<p> | |||
Incompatible versions of Batik may also cause this problem. Use the | |||
@@ -269,8 +277,9 @@ | |||
the <code>file:</code> prefix, for example <code>file.ext</code>, | |||
<code>path/file.ext</code> or <code>../file.ext</code>. The string | |||
<code>file:path/file.ext</code> is <em>not</em> a relative URL, | |||
in fact, it isn't a valid URL at all. A relative URL is subject to a | |||
resolving process, which transforms it into an absolute | |||
in fact, it isn't a valid URL at all since the <code>file</code> | |||
scheme does not (officially) support relative paths. A relative URL | |||
is subject to a resolving process, which transforms it into an absolute | |||
URL. | |||
</p> | |||
<!--p> | |||
@@ -283,31 +292,8 @@ | |||
<question>I get an "[ERROR]: null", or a NullPointerException.</question> | |||
<answer> | |||
<p> | |||
This is often caused by an invalid FO document. Currently only very | |||
common errors are intercepted and produce a comprehensible error | |||
message. If you forgot container elements like <code>fo:page-sequence</code> or | |||
<code>fo:flow</code> and put blocks and inline elements directly as children of | |||
<code>fo:root</code> or <code>fo:page-sequence</code>, you'll only get a | |||
NullPointerException. Check whether your FO file has a proper | |||
structure. In some cases there are mandatory properties, like the | |||
master-reference in <code>fo:conditional-page-master-reference</code>, check also | |||
whether you got them right. | |||
</p> | |||
<p> | |||
You may find it helpful to use the <link href="#fo-validate">validation tools</link> to validate your | |||
FO document. This will catch most problems, but should not be | |||
relied upon to catch all. | |||
</p> | |||
<p> | |||
If you use XSLT, problems in your style sheet and in your | |||
source XML also can produce a NullPointerException. <link | |||
href="1.0/running.html#check-input">Run the transformation | |||
separately</link> to check for this, usually you'll get a | |||
detailed error message from the XSLT processor. | |||
</p> | |||
<p> | |||
If you turn on debugging with the "<code>-d</code>" option you may be able to | |||
see more detailed information. | |||
This is a very likely a bug in FOP. If you encounter this error, please | |||
<link href="bugs.html#issues_new">Open a New Bug</link>. | |||
</p> | |||
</answer> | |||
</faq> | |||
@@ -322,9 +308,9 @@ | |||
<answer> | |||
<p> | |||
The most likely reason is a known problem with the Java run time | |||
environment which is triggered by rendering SVGs. Suns JDK 1.4 does | |||
not have this problem. See also <link href="#svghangs">FOP does not | |||
exit if a SVG is included</link>. | |||
environment which is triggered by rendering SVGs. Sun's JDK 1.4 and | |||
later do not have this problem. See also <link href="#svghangs">FOP | |||
does not exit if a SVG is included</link>. | |||
</p> | |||
<p> | |||
Another possibility is that FOP went into a non terminating | |||
@@ -340,6 +326,10 @@ | |||
the FOP output regularly to empty the pipe buffer. It is best to avoid | |||
exec'ing FOP, use the library interface instead. | |||
</p> | |||
<p> | |||
If you can reproduce this problem given a specific input and configuration, | |||
then please <link href="bugs.html#issues_new">Open a New Bug</link>. | |||
</p> | |||
</answer> | |||
</faq> | |||
<faq id="boxoverflow"> | |||
@@ -441,8 +431,7 @@ public class DefaultErrorListener implements ErrorListener { | |||
To avoid the warning you can simply delete the | |||
old Font Cache file, which lives in ${base}\conf\font.cache (see <link | |||
href="1.0/configuration.html#general-elements">font-base | |||
configuration</link>). Or you can disable Font Caching altogether using | |||
the option "use-cache." | |||
configuration</link>). | |||
</p> | |||
</answer> | |||
</faq> | |||
@@ -524,7 +513,7 @@ Check the following:</p> | |||
HTTP. Possible issues include security settings on the | |||
server, server configuration, and missing cookies or other | |||
authorization information. Any easy way to check this is to | |||
cut&paste the source URL from the fo:external-graphic | |||
cut and paste the source URL from the <code>fo:external-graphic</code> | |||
into the Location field of a browser <strong>on the machine | |||
where the FOP process will be running</strong>.</li> | |||
</ul> | |||
@@ -627,7 +616,7 @@ Check the following:</p> | |||
explicit wrapping+clipping, | |||
</li> | |||
<li> | |||
insert zero width spaces (U+200B or &#x200B;) to allow FOP to | |||
insert zero width spaces (&#x200B;) to allow FOP to | |||
wrap. | |||
</li> | |||
</ul> | |||
@@ -1281,7 +1270,7 @@ Can I control this?</question> | |||
<question>Where can I learn how the FOP docs and web site are built?</question> | |||
<answer> | |||
<p> | |||
See FOP <link href="dev/doc.html">Doc Management</link>. ;-) | |||
See FOP <link href="dev/doc.html">Doc Management</link>. | |||
</p> | |||
</answer> | |||
</faq> | |||
@@ -1307,7 +1296,7 @@ Can I control this?</question> | |||
If you have a runtime exception or other runtime problem: | |||
<ul> | |||
<li> | |||
double-check the <link href="#part-running">Runtime FAQs</link>. | |||
Double check the <link href="#part-running">Runtime FAQs</link>. | |||
</li> | |||
<li> | |||
ClassNotFoundException, NoSuchMethodException and | |||
@@ -1325,7 +1314,7 @@ Can I control this?</question> | |||
</li> | |||
<li> | |||
In the case where something works properly with another formatter, | |||
(AntennaHouse, PassiveTex, etc.) but doesn't work with FOP, please | |||
(e.g., AntennaHouse, PassiveTex, etc.) but doesn't work with FOP, please | |||
check the <!--link href="relnotes.html"-->Release Notes<!--/link-->, the | |||
<link href="compliance.html">FOP Standards Compliance</link> document, | |||
and the remaining FAQ in this document. If not found there, look at the | |||
@@ -1348,13 +1337,8 @@ Can I control this?</question> | |||
Problems specific to a certain XSLT processor, like Xalan, Saxon or | |||
MSXML, should be handled by processor specific lists. This includes | |||
problems with deployment, processor specific extensions, suspected | |||
bugs and processor specific APIs. Note that JDK 1.4 comes with an | |||
XML parser and an XSLT processor which are older versions of | |||
Xerces and Xalan, respectively, and both have a number of annoying | |||
bugs. See http://java.sun.com/developer/EJTechTips/2003/tt0311.html | |||
and http://java.sun.com/j2se/1.4.2/docs/guide/standards/ (or similar | |||
pages for later Java releases) for some hints on how to use more | |||
recent versions or other packages instead. | |||
bugs and processor specific APIs. Note that JDK 1.4 and later come with an | |||
XML parser and an XSLT processor which may be the source of the problem. | |||
</li> | |||
<li> | |||
Problems with servlet containers should be asked on the vendor |
@@ -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>XSL-FO Input</title> | |||
<title>Apache™ FOP: XSL-FO Input</title> | |||
<subtitle>Basic Help for Using XML, XSLT, and XSL-FO</subtitle> | |||
<version>$Revision$</version> | |||
</header> | |||
@@ -28,7 +28,7 @@ | |||
<section id="overview"> | |||
<title>Overview</title> | |||
<p> | |||
FOP uses XSL-FO as input. | |||
Apache™ FOP uses XSL-FO as input. | |||
It is the responsibility of the user to make sure that the XSL-FO submitted to FOP is correct. | |||
The tutorial items presented here are not comprehensive, but are of the FAQ variety. Another | |||
good FAQ is <fork href="http://www.dpawson.co.uk/xsl/">Dave Pawson's XSL FAQ</fork>. | |||
@@ -79,7 +79,7 @@ For other fonts, use font editing sofware or operating system utilities (such as | |||
<p> | |||
The handful of basic XML character entities that do exist are the ampersand, apostrophe, less-than, greater-than, and single-quote characters. | |||
These are needed to distinguish markup tags from content, and to distinguish character entities from content. | |||
To avoid parser complaints about illegal characters and entities in your input, ensure that ampersands in text and attributes are written as &amp;, "<" is written as &lt;, and ">" as &gt;. | |||
To avoid parser complaints about illegal characters and entities in your input, ensure that ampersands in text and attributes are written as &amp;, "<" is written as &lt;, and ">" as &gt;. | |||
It is not necessary everywhere, but it is wise to do so anyway, just to be sure. | |||
</p> | |||
<p> | |||
@@ -95,7 +95,7 @@ It is not necessary everywhere, but it is wise to do so anyway, just to be sure. | |||
If the parser complains about illegal bytes or characters in the input, or there are unexpected characters in the output, this is usually the result of a character encoding problem. | |||
See the <link href="http://www.dpawson.co.uk/xsl">XSL FAQ</link> for additional information. | |||
Many software packages that produce XML, including XSLT processors, use UTF-8 encoding as a default. | |||
If you view their output with something not aware of the encoding, like Notepad for Win95/98/ME/NT, funny characters are displayed. A Å is a giveaway. | |||
If you view their output with something not aware of the encoding, like Notepad for Win95/98/ME/NT, funny characters are displayed. A � is a giveaway. | |||
</p> | |||
</section> | |||
</section> |