<fo:flow flow-name="xsl-region-body">
<fo:wrapper font-family="Times" font-size="12pt" text-align="justify">
<fo:block id="sec0"
- text-align="center"
+ text-align="center"
font-family="Helvetica"
- font-weight="bold"
- font-size="18pt"
+ font-weight="bold"
+ font-size="18pt"
color="#0050B2" space-after.optimum="6pt">
Adding Fonts to FOP
</fo:block>
<fo:block space-after.optimum="6pt">
- When building PDF files, FOP normally supports only the base 14 font
- package defined in the Adobe PDF specification. That includes the
+ When building PDF files, FOP normally supports only the base 14 font
+ package defined in the Adobe PDF specification. That includes the
following fonts: Helvetica, Times, Courier, Symbol and ZapfDingbats.
</fo:block>
<fo:block space-after.optimum="6pt">
- Font support in FOP can be extended by the addition of font metric
- files (written in XML) created from Adobe Type 1 fonts and Truetype
+ Font support in FOP can be extended by the addition of font metric
+ files (written in XML) created from Adobe Type 1 fonts and Truetype
fonts. No other font types (Type 3, etc.) are supported at this time.
</fo:block>
<fo:block id="sec1"
font-family="Helvetica"
- font-weight="bold"
- font-size="14pt"
+ font-weight="bold"
+ font-size="14pt"
color="#0050B2"
- space-after.optimum="6pt"
+ space-after.optimum="6pt"
space-before.optimum="12pt">
Adding additional Type 1 fonts
</fo:block>
-
+
<fo:block space-after.optimum="6pt" >
As mentioned above you need an XML file containing font metrics to
be able to use an additional font. FOP contains a tool that can generate
- such a font metrics file from a PFM file, which normally comes with the
+ such a font metrics file from a PFM file, which normally comes with the
font file.
</fo:block>
<fo:block id="sec1-1"
font-family="Helvetica"
- font-weight="bold"
- space-after.optimum="6pt"
+ font-weight="bold"
+ space-after.optimum="6pt"
space-before.optimum="12pt" >
Generating a font metrics file
</fo:block>
-
+
<fo:block space-after.optimum="6pt" >
Run the class <fo:inline font-family="Courier">org.apache.fop.fonts.apps.PFMReader</fo:inline>
to generate the XML file.
- <fo:block font-family="Courier" font-size="10pt"
+ <fo:block font-family="Courier" font-size="10pt"
space-before.optimum="6pt" space-after.optimum="6pt" margin-left="6pt" text-align="start">
java org.apache.fop.fonts.apps.PFMReader pfm-file xml-file
</fo:block>
<fo:block id="sec1-2"
font-family="Helvetica"
- font-weight="bold"
- space-after.optimum="6pt"
+ font-weight="bold"
+ space-after.optimum="6pt"
space-before.optimum="12pt" >
Register the fonts within FOP
</fo:block>
-
+
<fo:block space-after.optimum="6pt">
Edit conf/userconfig.xml and add entries for the font if the fonts section, ie:
- <fo:block font-family="Courier" font-size="10pt"
+ <fo:block font-family="Courier" font-size="10pt"
space-before.optimum="6pt"
white-space-collapse="false" margin-left="6pt" text-align="start">
<![CDATA[
<fo:block id="sec2"
font-family="Helvetica"
- font-weight="bold"
- font-size="14pt"
+ font-weight="bold"
+ font-size="14pt"
color="#0050B2"
- space-after.optimum="6pt"
+ space-after.optimum="6pt"
space-before.optimum="12pt">
Adding additional TrueType fonts
</fo:block>
<fo:block id="sec2-1"
font-family="Helvetica"
- font-weight="bold"
- space-after.optimum="6pt"
+ font-weight="bold"
+ space-after.optimum="6pt"
space-before.optimum="12pt" >
- Generating a font metrics file
+ Generating a font metrics file
</fo:block>
<fo:block space-after.optimum="6pt">
<fo:block space-after.optimum="6pt">
Create metrics for the fontfile. We'll use MS Gothic as an example:
- <fo:block font-family="Courier" font-size="10pt"
+ <fo:block font-family="Courier" font-size="10pt"
space-before.optimum="6pt" space-after.optimum="6pt" margin-left="6pt" text-align="start">
java org.apache.fop.fonts.apps.TTFReader C:\WINNT\Fonts\msgothic.ttf msgothic.xml
</fo:block>
<fo:block id="sec2-2"
font-family="Helvetica"
- font-weight="bold"
- space-after.optimum="6pt"
+ font-weight="bold"
+ space-after.optimum="6pt"
space-before.optimum="12pt" >
- TrueType collections
+ TrueType collections
</fo:block>
<fo:block space-after.optimum="6pt">
<fo:block space-after.optimum="6pt">
Example on generating metrics for a .ttc file:
- <fo:block font-family="Courier" font-size="10pt"
+ <fo:block font-family="Courier" font-size="10pt"
space-before.optimum="6pt" space-after.optimum="6pt" margin-left="6pt" text-align="start">
java org.apache.fop.fonts.apps.TTFReader -ttcname "MS Mincho" msmincho.ttc msminch.xml
</fo:block>
<fo:block id="sec2-3"
font-family="Helvetica"
- font-weight="bold"
- space-after.optimum="6pt"
+ font-weight="bold"
+ space-after.optimum="6pt"
space-before.optimum="12pt" >
- Register the fonts within FOP
+ Register the fonts within FOP
</fo:block>
<fo:block space-after.optimum="6pt">
<fo:block id="sec3"
font-family="Helvetica"
- font-weight="bold"
- font-size="14pt"
+ font-weight="bold"
+ font-size="14pt"
color="#0050B2"
- space-after.optimum="6pt"
+ space-after.optimum="6pt"
space-before.optimum="12pt">
- Embedding fonts
+ Embedding fonts
</fo:block>
<fo:block space-after.optimum="6pt">
<fo:block id="sec4"
font-family="Helvetica"
- font-weight="bold"
- font-size="14pt"
+ font-weight="bold"
+ font-size="14pt"
color="#0050B2"
- space-after.optimum="6pt"
+ space-after.optimum="6pt"
space-before.optimum="12pt">
- Example embedding MSGothic
+ Example embedding MSGothic
</fo:block>
<fo:block space-after.optimum="6pt">
- This example will use the Microsoft Gothic TrueType font. This is the font used to render this examples
+ This example will use the Microsoft Gothic TrueType font. This is the font used to render this examples
given in the last section of this file. If you don't have it installed,
you can download an installer at <fo:basic-link color="blue"
external-destination="ftp://ftp.cc.monash.edu.au/pub/nihongo/ie3lpkja.exe">
<fo:block id="sec4-1"
font-family="Helvetica"
- font-weight="bold"
- space-after.optimum="6pt"
+ font-weight="bold"
+ space-after.optimum="6pt"
space-before.optimum="12pt">
Setup your classpath to run FOP:
</fo:block>
- <fo:block font-family="Courier" font-size="10pt"
+ <fo:block font-family="Courier" font-size="10pt"
space-before.optimum="6pt"
white-space-collapse="false" margin-left="6pt" text-align="start">
C:\Fop-0.18.1> set CLASSPATH=fop.jar;lib\xerces-1.2.3.jar;lib\xalan-2.0.0.jar;lib\batik.jar
<fo:block id="sec4-2"
font-family="Helvetica"
- font-weight="bold"
- space-after.optimum="6pt"
+ font-weight="bold"
+ space-after.optimum="6pt"
space-before.optimum="12pt">
Create the metrics file:
</fo:block>
- <fo:block font-family="Courier" font-size="10pt"
+ <fo:block font-family="Courier" font-size="10pt"
space-before.optimum="6pt"
white-space-collapse="false" margin-left="6pt" text-align="start">
C:\Fop-0.18.1> java org.apache.fop.fonts.apps.TTFReader c:\WINNT\Fonts\msgothic.ttf msgothic.xml
<fo:block id="sec4-3"
font-family="Helvetica"
- font-weight="bold"
- space-after.optimum="6pt"
+ font-weight="bold"
+ space-after.optimum="6pt"
space-before.optimum="12pt">
Edit the msgothic.xml file and set the <fo:inline font-family="Courier">font-name</fo:inline>
to "MSGothic".
<fo:block id="sec4-4"
font-family="Helvetica"
- font-weight="bold"
- space-after.optimum="6pt"
+ font-weight="bold"
+ space-after.optimum="6pt"
space-before.optimum="12pt">
Edit conf/userconfig.xml and add the following to the <fonts> section:
</fo:block>
-
- <fo:block font-family="Courier" font-size="10pt"
+
+ <fo:block font-family="Courier" font-size="10pt"
space-before.optimum="6pt"
white-space-collapse="false" margin-left="6pt" text-align="start">
<![CDATA[
</font>
]]>
</fo:block>
-
+
<fo:block space-after.optimum="6pt">
Now you can use MSGothic in your .fo files by setting font-family="MSGothic". You'll need to
start FOP specifying the config file as in this example:
- <fo:block font-family="Courier" font-size="10pt"
+ <fo:block font-family="Courier" font-size="10pt"
space-before.optimum="6pt"
white-space-collapse="false" margin-left="6pt" text-align="start"
>java -jar fop.jar -c conf/userconfig.xml -fo myfo.fo -pdf mypdf.pdf</fo:block>
<fo:block id="sec5"
font-family="Helvetica"
- font-weight="bold"
- font-size="14pt"
+ font-weight="bold"
+ font-size="14pt"
color="#0050B2"
- space-after.optimum="6pt"
+ space-after.optimum="6pt"
space-before.optimum="12pt">
Examples from <fo:basic-link color="blue" external-destination="http://www.csse.monash.edu.au/~jwb/j_jmdict.html">
<fo:inline text-decoration="underline">JMDict</fo:inline></fo:basic-link> Japanese glossary:
<?xml version="1.0"?>
<!-- =========================================================================== -->
<project default="newPDF" basedir=".">
- <!-- =================================================================== -->
- <!-- Initialization target -->
- <!-- =================================================================== -->
- <target name="init">
- <tstamp/>
- <mkdir dir="tests"/>
- <property name="referenceDir" value="reference"/>
- <property name="testDir" value="tests"/>
- <property name="foDir" value="fo"/>
- <taskdef name="fop" classname="org.apache.fop.tools.anttasks.Fop"/>
- <taskdef name="compare" classname="org.apache.fop.tools.anttasks.Compare"/>
- </target>
- <!-- =================================================================== -->
- <!-- Help on usage -->
- <!-- =================================================================== -->
- <target name="usage">
- <echo message=""/>
- <echo message=""/>
- <echo message="USAGE of runtests"/>
- <echo message="-------------------------------------------------------------"/>
- <echo message=""/>
- <echo message=" available targets are:"/>
- <echo message=""/>
- <echo message=" newPDF --> generates new PDF test files (default)"/>
- <echo message=" newPS --> generates new PostScript test files"/>
- <echo message=" newAT --> generates new AreaTree (XML) test files"/>
- <echo message=" comparePDF --> generates new PDF test files and compares them to reference files"/>
- <echo message=" referencePDF --> generates new reference PDF files"/>
- <echo message=" See the comments inside the build.xml file for more details."/>
- <echo message="-------------------------------------------------------------"/>
- <echo message=""/>
- <echo message=""/>
- </target>
- <!-- =================================================================== -->
- <!-- Produces new test PDF files -->
- <!-- =================================================================== -->
- <target name="newPDF" depends="init">
- <fop format="application/pdf" outdir="${testDir}" messagelevel="debug"
+ <!-- =================================================================== -->
+ <!-- Initialization target -->
+ <!-- =================================================================== -->
+ <target name="init">
+ <tstamp/>
+ <mkdir dir="tests"/>
+ <property name="referenceDir" value="reference"/>
+ <property name="testDir" value="tests"/>
+ <property name="foDir" value="fo"/>
+ <taskdef name="fop" classname="org.apache.fop.tools.anttasks.Fop"/>
+ <taskdef name="compare" classname="org.apache.fop.tools.anttasks.Compare"/>
+ </target>
+ <!-- =================================================================== -->
+ <!-- Help on usage -->
+ <!-- =================================================================== -->
+ <target name="usage">
+ <echo message=""/>
+ <echo message=""/>
+ <echo message="USAGE of runtests"/>
+ <echo message="-------------------------------------------------------------"/>
+ <echo message=""/>
+ <echo message=" available targets are:"/>
+ <echo message=""/>
+ <echo message=" newPDF --> generates new PDF test files (default)"/>
+ <echo message=" newPS --> generates new PostScript test files"/>
+ <echo message=" newAT --> generates new AreaTree (XML) test files"/>
+ <echo message=" comparePDF --> generates new PDF test files and compares them to reference files"/>
+ <echo message=" referencePDF --> generates new reference PDF files"/>
+ <echo message=" See the comments inside the build.xml file for more details."/>
+ <echo message="-------------------------------------------------------------"/>
+ <echo message=""/>
+ <echo message=""/>
+ </target>
+ <!-- =================================================================== -->
+ <!-- Produces new test PDF files -->
+ <!-- =================================================================== -->
+ <target name="newPDF" depends="init">
+ <fop format="application/pdf" outdir="${testDir}" messagelevel="debug"
basedir="./fo">
- <fileset dir="${foDir}">
- <include name="**/*.fo"/>
- </fileset>
- </fop>
- </target>
- <!-- =================================================================== -->
- <!-- Produces new test ps files -->
- <!-- =================================================================== -->
- <target name="newPS" depends="init">
- <fop format="application/postscript" outdir="${testDir}">
- <fileset dir="${foDir}">
- <include name="**/*.fo"/>
- </fileset>
- </fop>
- </target>
- <!-- =================================================================== -->
- <!-- Produces new test areatree files -->
- <!-- =================================================================== -->
- <target name="newAT" depends="init">
- <fop format="text/xml" outdir="${testDir}">
- <fileset dir="${foDir}">
- <include name="**/*.fo"/>
- </fileset>
- </fop>
- </target>
- <!-- =================================================================== -->
- <!-- Compares new test pdf files to reference pdf files -->
- <!-- =================================================================== -->
- <target name="comparePDF" depends="newPDF">
- <compare referenceDirectory="${referenceDir}" testDirectory="${testDir}" filenames="normal.pdf,table.pdf,list.pdf,link.pdf,border.pdf,images.pdf,extensive.pdf,readme.pdf,fonts.pdf,bordershorthand.pdf,character.pdf,corresprop.pdf,hyphen.pdf,inhprop.pdf,instream.pdf,leader.pdf,newlinktest.pdf,normalex.pdf,pdfoutline.pdf,simple.pdf,textdeko.pdf,tableunits.pdf"/>
- </target>
- <!-- =================================================================== -->
- <!-- Produces new reference pdf files -->
- <!-- =================================================================== -->
- <target name="referencePDF" depends="init">
- <fop format="application/pdf" outdir="${referenceDir}" basedir="./fo">
- <fileset dir="${foDir}">
- <include name="**/*.fo"/>
- </fileset>
- </fop>
- </target>
+ <fileset dir="${foDir}">
+ <include name="**/*.fo"/>
+ </fileset>
+ </fop>
+ </target>
+ <!-- =================================================================== -->
+ <!-- Produces new test ps files -->
+ <!-- =================================================================== -->
+ <target name="newPS" depends="init">
+ <fop format="application/postscript" outdir="${testDir}">
+ <fileset dir="${foDir}">
+ <include name="**/*.fo"/>
+ </fileset>
+ </fop>
+ </target>
+ <!-- =================================================================== -->
+ <!-- Produces new test areatree files -->
+ <!-- =================================================================== -->
+ <target name="newAT" depends="init">
+ <fop format="text/xml" outdir="${testDir}">
+ <fileset dir="${foDir}">
+ <include name="**/*.fo"/>
+ </fileset>
+ </fop>
+ </target>
+ <!-- =================================================================== -->
+ <!-- Compares new test pdf files to reference pdf files -->
+ <!-- =================================================================== -->
+ <target name="comparePDF" depends="newPDF">
+ <compare referenceDirectory="${referenceDir}" testDirectory="${testDir}" filenames="normal.pdf,table.pdf,list.pdf,link.pdf,border.pdf,images.pdf,extensive.pdf,readme.pdf,fonts.pdf,bordershorthand.pdf,character.pdf,corresprop.pdf,hyphen.pdf,inhprop.pdf,instream.pdf,leader.pdf,newlinktest.pdf,normalex.pdf,pdfoutline.pdf,simple.pdf,textdeko.pdf,tableunits.pdf"/>
+ </target>
+ <!-- =================================================================== -->
+ <!-- Produces new reference pdf files -->
+ <!-- =================================================================== -->
+ <target name="referencePDF" depends="init">
+ <fop format="application/pdf" outdir="${referenceDir}" basedir="./fo">
+ <fileset dir="${foDir}">
+ <include name="**/*.fo"/>
+ </fileset>
+ </fop>
+ </target>
- <!-- =================================================================== -->
- <!-- Starts the test -->
- <!-- =================================================================== -->
- <target name="runtest" depends="comparePDF">
- <echo message="Running Fop tests"/>
- </target>
- <!-- =================================================================== -->
- <!-- Clean targets -->
- <!-- =================================================================== -->
- <target name="clean" depends="init">
- <delete dir="${testDir}"/>
- </target>
+ <!-- =================================================================== -->
+ <!-- Starts the test -->
+ <!-- =================================================================== -->
+ <target name="runtest" depends="comparePDF">
+ <echo message="Running Fop tests"/>
+ </target>
+ <!-- =================================================================== -->
+ <!-- Clean targets -->
+ <!-- =================================================================== -->
+ <target name="clean" depends="init">
+ <delete dir="${testDir}"/>
+ </target>
</project>
<!-- End of file -->
<fo:block-container reference-orientation="180" inline-progression-dimension="100pt">
<fo:block>
BC:B III
- </fo:block>
+ </fo:block>
<fo:block>
The areas are stacked normally but the orientation of the
area is rotated 180 degrees clockwise.
180 degrees.
</fo:block>
</fo:block-container>
- </fo:block>
+ </fo:block>
<fo:block>
different writing mode
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set>
<fo:simple-page-master
- margin-right="0.5cm" margin-left="0.5cm" margin-bottom="0.5cm" margin-top="0.75cm"
- page-width="21cm" page-height="29.7cm" master-name="first">
+ margin-right="0.5cm" margin-left="0.5cm" margin-bottom="0.5cm" margin-top="0.75cm"
+ page-width="21cm" page-height="29.7cm" master-name="first">
<fo:region-body></fo:region-body>
</fo:simple-page-master>
<fo:simple-page-master
- margin-right="2.5cm" margin-left="2.5cm" margin-bottom="2cm" margin-top="1cm"
- page-width="21cm" page-height="29.7cm" master-name="rest">
+ margin-right="2.5cm" margin-left="2.5cm" margin-bottom="2cm" margin-top="1cm"
+ page-width="21cm" page-height="29.7cm" master-name="rest">
<fo:region-body></fo:region-body>
</fo:simple-page-master>
-
- <fo:page-sequence-master master-name="psmA">
- <fo:repeatable-page-master-alternatives>
- <fo:conditional-page-master-reference master-reference="first"
- page-position="first" />
- <fo:conditional-page-master-reference master-reference="rest"
- page-position="rest" />
- <!-- recommended fallback procedure -->
- <fo:conditional-page-master-reference master-reference="rest" />
- </fo:repeatable-page-master-alternatives>
- </fo:page-sequence-master>
+
+ <fo:page-sequence-master master-name="psmA">
+ <fo:repeatable-page-master-alternatives>
+ <fo:conditional-page-master-reference master-reference="first"
+ page-position="first" />
+ <fo:conditional-page-master-reference master-reference="rest"
+ page-position="rest" />
+ <!-- recommended fallback procedure -->
+ <fo:conditional-page-master-reference master-reference="rest" />
+ </fo:repeatable-page-master-alternatives>
+ </fo:page-sequence-master>
</fo:layout-master-set>
<fo:page-sequence master-reference="psmA">
<fo:flow flow-name="xsl-region-body">
<fo:block-container height="4cm" width="12cm" top="0cm" left="0cm" position="absolute">
<fo:block text-align="start" line-height="18pt" font-family="sans-serif" font-weight="bold" font-size="14pt">
- PX7.net
- </fo:block>
+ PX7.net
+ </fo:block>
<fo:block text-align="start" line-height="18pt" font-family="sans-serif" font-weight="bold" font-size="14pt">
- 44 Liberty St
- </fo:block>
+ 44 Liberty St
+ </fo:block>
<fo:block text-align="start" line-height="18pt" font-family="sans-serif" font-weight="bold" font-size="14pt">
- Newburyport, MA 01950
- </fo:block>
+ Newburyport, MA 01950
+ </fo:block>
<fo:block text-align="start" line-height="18pt" font-family="sans-serif" font-weight="bold" font-size="14pt">
- 978-462-1152
- </fo:block>
+ 978-462-1152
+ </fo:block>
</fo:block-container>
<fo:block-container height="1cm" width="6cm" top="0cm" left="14cm" position="absolute">
<fo:block text-align="start" space-after.optimum="3pt" line-height="22pt" font-family="sans-serif" font-size="23pt">
- Sales Receipt
- </fo:block>
+ Sales Receipt
+ </fo:block>
</fo:block-container>
-
+
<fo:block-container border-color="black" border-style="solid" border-width=".5mm" height="0.5cm" width="2.49cm" top="1.2cm" left="13.8cm" padding=".6mm" position="absolute">
<fo:block text-align="start" space-after.optimum="3pt" line-height="14pt" font-family="sans-serif" font-size="12pt">
- DATE
- </fo:block>
+ DATE
+ </fo:block>
</fo:block-container>
<fo:block-container border-color="black" border-style="solid" border-width=".5mm" height="0.5cm" width="2.49cm" top="1.87cm" left="13.8cm" padding=".6mm" position="absolute">
<fo:block text-align="start" space-after.optimum="3pt" line-height="14pt" font-family="sans-serif" font-size="10pt">
- 01/01/2000
- </fo:block>
+ 01/01/2000
+ </fo:block>
</fo:block-container>
<fo:block-container border-color="black" border-style="solid" border-width=".5mm" height="0.5cm" width="2.49cm" top="1.2cm" left="16.46cm" padding=".6mm" position="absolute">
<fo:block text-align="start" space-after.optimum="3pt" line-height="14pt" font-family="sans-serif" font-size="12pt">
- SALE #
- </fo:block>
+ SALE #
+ </fo:block>
</fo:block-container>
<fo:block-container border-color="black" border-style="solid" border-width=".5mm" height="0.5cm" width="2.49cm" top="1.87cm" left="16.46cm" padding=".6mm" position="absolute">
<fo:block text-align="start" space-after.optimum="3pt" line-height="14pt" font-family="sans-serif" font-size="10pt">
- 1
- </fo:block>
+ 1
+ </fo:block>
</fo:block-container>
-
+
<fo:block-container border-color="black" border-style="solid" border-width=".5mm" height="0.5cm" width="8.95cm" top="3cm" left="0cm" padding=".6mm" position="absolute">
<fo:block text-align="start" line-height="14pt" font-family="sans-serif" font-size="12pt">
- SOLD TO
- </fo:block>
+ SOLD TO
+ </fo:block>
</fo:block-container>
<fo:block-container border-color="black" border-style="solid" border-width=".5mm" height="3cm" width="8.95cm" top="3.67cm" left="0cm" padding=".6mm" position="absolute">
<fo:block text-align="start" space-after.optimum="3pt" line-height="14pt" font-family="sans-serif" font-size="12pt">
</fo:block-container>
<fo:block-container border-color="black" border-style="solid" border-width=".5mm" height="0.5cm" width="8.95cm" top="3cm" left="10cm" padding=".6mm" position="absolute">
<fo:block text-align="start" space-after.optimum="3pt" line-height="14pt" font-family="sans-serif" font-size="12pt">
- SHIP TO
- </fo:block>
+ SHIP TO
+ </fo:block>
</fo:block-container>
<fo:block-container border-color="black" border-style="solid" border-width=".5mm" height="3cm" width="8.95cm" top="3.67cm" left="10cm" padding=".6mm" position="absolute">
<fo:block text-align="start" space-after.optimum="3pt" line-height="14pt" font-family="sans-serif" font-size="12pt">
</fo:block>
</fo:block-container>
-
+
<fo:block-container border-color="black" border-style="solid" border-width=".5mm" height="0.5cm" width="3.96cm" top="7.25cm" left="10.74cm" padding="1mm" position="absolute">
<fo:block text-align="start" space-after.optimum="3pt" line-height="14pt" font-family="sans-serif" font-size="12pt">
- PMT METHOD
- </fo:block>
+ PMT METHOD
+ </fo:block>
</fo:block-container>
<fo:block-container border-color="black" border-style="solid" border-width=".5mm" height="0.5cm" width="3.96cm" top="8cm" left="10.74cm" padding="1mm" position="absolute">
<fo:block text-align="start" space-after.optimum="3pt" line-height="14pt" font-family="sans-serif" font-size="10pt">
- Check
- </fo:block>
+ Check
+ </fo:block>
</fo:block-container>
<fo:block-container border-color="black" border-style="solid" border-width=".5mm" height="0.5cm" width="3.96cm" top="7.25cm" left="14.95cm" padding="1mm" position="absolute">
<fo:block text-align="start" space-after.optimum="3pt" line-height="14pt" font-family="sans-serif" font-size="12pt">
- CHECK #
- </fo:block>
+ CHECK #
+ </fo:block>
</fo:block-container>
<fo:block-container border-color="black" border-style="solid" border-width=".5mm" height="0.5cm" width="3.96cm" top="8cm" left="14.95cm" padding="1mm" position="absolute">
<fo:block text-align="start" space-after.optimum="3pt" line-height="14pt" font-family="sans-serif" font-size="10pt">
- 1234
- </fo:block>
+ 1234
+ </fo:block>
</fo:block-container>
-
-
+
+
<fo:block-container height="17cm" width="19cm" top="9.4cm" left="0cm" position="absolute">
<fo:table border-collapse="separate" border-color="yellow" border-style="solid" border-width=".6mm" height="17cm">
<fo:table-column column-width="2.5cm"/>
<?xml version="1.0" encoding="utf-8"?>
-<!-- example for a simple fo file. At the beginning the page layout is set.
-Below fo:root there is always
+<!-- example for a simple fo file. At the beginning the page layout is set.
+Below fo:root there is always
- a single fo:layout-master-set which defines one or more page layouts
- an optional fo:declarations,
- and a sequence of one or more fo:page-sequences containing the text and formatting instructions -->
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set>
- <!-- fo:layout-master-set defines in its children the page layout:
+ <!-- fo:layout-master-set defines in its children the page layout:
the pagination and layout specifications
- - page-masters: have the role of describing the intended subdivisions
- of a page and the geometry of these subdivisions
- - page-sequence-masters: have the role of describing the sequence
- of page-masters that will be used to generate
- pages during the formatting of an fo:page-sequence
+ - page-masters: have the role of describing the intended subdivisions
+ of a page and the geometry of these subdivisions
+ - page-sequence-masters: have the role of describing the sequence
+ of page-masters that will be used to generate
+ pages during the formatting of an fo:page-sequence
-->
<!-- layout for the first page -->
<fo:simple-page-master master-name="first"
- page-height="29.7cm"
+ page-height="29.7cm"
page-width="21cm"
- margin-top="1cm"
- margin-bottom="2cm"
- margin-left="2.0cm + 0.5cm"
+ margin-top="1cm"
+ margin-bottom="2cm"
+ margin-left="2.0cm + 0.5cm"
margin-right="(5cm * 1cm) div 2cm">
<fo:region-body margin-top="3cm"/>
<fo:region-before extent="3cm"/>
<fo:simple-page-master master-name="rest"
page-height="abs(-30cm + .3cm)"
page-width="(10cm * 2) + 1cm"
- margin-top="round(.5) * 1cm"
+ margin-top="round(.5) * 1cm"
margin-bottom="round(2.4) * 1cm"
- margin-left="2.5 * 1cm"
+ margin-left="2.5 * 1cm"
margin-right="5.5cm - 3cm">
<fo:region-body margin-top="2.5cm"/>
<fo:region-before extent="2.5cm"/>
</fo:simple-page-master>
<fo:page-sequence-master master-name="basicPSM" >
- <fo:repeatable-page-master-alternatives>
- <fo:conditional-page-master-reference master-reference="first"
- page-position="first" />
- <fo:conditional-page-master-reference master-reference="rest"
- page-position="rest" />
- <!-- recommended fallback procedure -->
- <fo:conditional-page-master-reference master-reference="rest" />
- </fo:repeatable-page-master-alternatives>
+ <fo:repeatable-page-master-alternatives>
+ <fo:conditional-page-master-reference master-reference="first"
+ page-position="first" />
+ <fo:conditional-page-master-reference master-reference="rest"
+ page-position="rest" />
+ <!-- recommended fallback procedure -->
+ <fo:conditional-page-master-reference master-reference="rest" />
+ </fo:repeatable-page-master-alternatives>
</fo:page-sequence-master>
</fo:layout-master-set>
<!-- header -->
<fo:static-content flow-name="xsl-region-before">
- <fo:block text-align="end"
- font-size="10pt"
- font-family="serif"
+ <fo:block text-align="end"
+ font-size="10pt"
+ font-family="serif"
line-height="1em + 4pt"
- >
+ >
Border and Padding Shorthand Tests - p. <fo:page-number/>
</fo:block>
- </fo:static-content>
+ </fo:static-content>
<fo:flow flow-name="xsl-region-body">
<!-- defines text title level 1-->
- <fo:block font-size="min(18pt,20pt)"
- font-family="sans-serif"
+ <fo:block font-size="min(18pt,20pt)"
+ font-family="sans-serif"
line-height="max(24pt,18pt)"
space-after.optimum="5 mod 3 * 7.5pt"
background-color="rgb(128,128,128)"
color="rgb(255,255,255)"
text-align="center"
padding-top="3pt">
- Border and Padding Shorthand Tests
+ Border and Padding Shorthand Tests
</fo:block>
<!-- Normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="1.25em"
space-after="12pt"
text-align="start"
start-indent="3mm" end-indent="3mm"
padding-left="3mm" padding-right="3mm"
padding-top="4mm" padding-bottom="4mm"
- border-style="dashed"
+ border-style="dashed"
border-left-width="1pt" border-right-width="1pt"
border-top-width="2pt" border-bottom-width="2pt"
border-top-color="rgb(100,100,100)" border-bottom-color="rgb(200,200,200)">
padding-left, padding-right, padding-top, and padding-bottom, etc.
According to the specification, a request for the absolute (top, bottom, left, right) versions of these properties should use the relative ones if they are specified.
</fo:block>
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="1.25em"
space-after="12pt"
text-align="start"
background-color="rgb(150,150,150)"
start-indent="3mm" end-indent="3mm"
padding="3mm + 1mm 3mm"
- border-top="rgb(100,100,100) 1pt + 1pt dashed"
- border-bottom="2pt rgb(200,200,200) solid"
- border-left="solid 1pt" border-right="solid 1pt">
+ border-top="rgb(100,100,100) 1pt + 1pt dashed"
+ border-bottom="2pt rgb(200,200,200) solid"
+ border-left="solid 1pt" border-right="solid 1pt">
In this example, padding and border properties are specified using shorthand properties:
padding, border-width, border-color.
According to the specification, a request for the absolute (top, bottom, left, right) versions of these properties should use the relative ones if they are specified.
</fo:block>
<!-- Normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="1.25em"
space-after="3pt"
text-align="start"
start-indent="3mm" end-indent="3mm"
padding-before="4mm" padding-after="4mm"
padding-start.length="3mm" padding-end.length="3mm"
- border-style="solid"
+ border-style="solid"
border-start-width="1pt" border-end-width="1pt"
border-before-width="2pt" border-after-width="2pt"
border-before-color="rgb(100,100,100)"
- border-after-color="rgb(200,200,200)">
+ border-after-color="rgb(200,200,200)">
In this example, padding and border properties are specified using writing-mode relative properties:
padding-before, padding-after, padding-start, and padding-end, etc.
According to the specification, a request for the absolute (top, bottom, left, right) versions of these properties should use the relative ones if they are specified.
</fo:block>
<!-- Normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="1.25em"
space-after="3pt"
text-align="start"
background-color="rgb(200,200,200)"
start-indent="3mm" end-indent="3mm"
- padding = "3mm"
+ padding = "3mm"
padding-before="4mm" padding-after="4mm"
- border-width = "2pt" border-style="solid"
- border-color="black"
+ border-width = "2pt" border-style="solid"
+ border-color="black"
border-start-width="1pt" border-end-width="1pt"
border-before-width="2pt" border-after-width="2pt"
border-before-color="rgb(200,200,200)"
- border-after-color="rgb(100,100,100)">
-In this example, padding and border properties are specified using
+ border-after-color="rgb(100,100,100)">
+In this example, padding and border properties are specified using
shorthand and writing-mode relative properties:
padding-before, padding-after, padding-start, and padding-end, etc.
According to the specification, a request for the absolute (top, bottom, left, right) versions of these properties should use the relative ones if they are specified.
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!-- example for a simple fo file. At the beginning the page layout is set.
- Below fo:root there is always
+<!-- example for a simple fo file. At the beginning the page layout is set.
+ Below fo:root there is always
- a single fo:layout-master-set which defines one or more page layouts
-- an optional fo:declarations
-- and a sequence of one or more fo:page-sequences containing the text and formatting instructions
+- an optional fo:declarations
+- and a sequence of one or more fo:page-sequences containing the text and formatting instructions
-->
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set>
- <!-- fo:layout-master-set defines in its children the page layout:
+ <!-- fo:layout-master-set defines in its children the page layout:
the pagination and layout specifications
- - page-masters: have the role of describing the intended subdivisions
- of a page and the geometry of these subdivisions
- In this case there is only a simple-page-master which defines the
+ - page-masters: have the role of describing the intended subdivisions
+ of a page and the geometry of these subdivisions
+ In this case there is only a simple-page-master which defines the
layout for all pages of the text
-->
<!-- layout information -->
<fo:simple-page-master master-name="simple"
- page-height="29.7cm"
+ page-height="29.7cm"
page-width="21cm"
- margin-top="1cm"
- margin-bottom="2cm"
- margin-left="2.5cm"
+ margin-top="1cm"
+ margin-bottom="2cm"
+ margin-left="2.5cm"
margin-right="2.5cm">
<fo:region-body margin-top="3cm"/>
<fo:region-before extent="3cm"/>
<!-- start page-sequence
here comes the text (contained in flow objects)
- the page-sequence can contain different fo:flows
+ the page-sequence can contain different fo:flows
the attribute value of master-name refers to the page layout
which is to be used to layout the text contained in this
page-sequence-->
<fo:page-sequence master-reference="simple">
<!-- start fo:flow
- each flow is targeted
+ each flow is targeted
at one (and only one) of the following:
xsl-region-body (usually: normal text)
xsl-region-before (usually: header)
xsl-region-after (usually: footer)
- xsl-region-start (usually: left margin)
+ xsl-region-start (usually: left margin)
xsl-region-end (usually: right margin)
- ['usually' applies here to languages with left-right and top-down
+ ['usually' applies here to languages with left-right and top-down
writing direction like English]
in this case there is only one target: xsl-region-body
-->
- <fo:flow flow-name="xsl-region-body"
+ <fo:flow flow-name="xsl-region-body"
text-align="justify">
<!-- each paragraph is encapsulated in a block element
<!-- this defines normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="15pt"
space-after.optimum="3pt"
>
-1. Why <fo:character character="T" font-size="16pt" color="red"/><fo:character character="E" font-size="16pt" color="blue"/><fo:character character="I" font-size="16pt" color="green"/>? I know, you know, I know (Paul Grice). Using TEI is quite a challenge. <fo:character character="Y"/>ou should use it too.
-Why T<fo:character character="E"/>I? I know, you know, I know (Paul Grice). Using TEI is quite a challenge. <fo:character character="Y"/>ou should use it too.
+1. Why <fo:character character="T" font-size="16pt" color="red"/><fo:character character="E" font-size="16pt" color="blue"/><fo:character character="I" font-size="16pt" color="green"/>? I know, you know, I know (Paul Grice). Using TEI is quite a challenge. <fo:character character="Y"/>ou should use it too.
+Why T<fo:character character="E"/>I? I know, you know, I know (Paul Grice). Using TEI is quite a challenge. <fo:character character="Y"/>ou should use it too.
Why TEI? I know, you know, I know (Paul Grice). Using TEI is quite a challenge. <fo:character character="Y"/>ou should use it too.
Why TEI? I know, you know, I know (Paul Grice). Using TEI is quite a challenge. <fo:character character="Y"/>ou should use it too.
Why TEI? I know, you know, I know (Paul Grice). Using TEI is quite a challenge. <fo:character character="Y"/>ou should use it too.
</fo:block>
<!-- this defines normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="15pt"
space-after.optimum="3pt"
>
-1. Why TEI? I know, you know, I know (Paul Grice). Using TEI is quite a challenge. ou should use it too.
-Why TEI? I know, you know, I know (Paul Grice). Using TEI is quite a challenge. ou should use it too.
+1. Why TEI? I know, you know, I know (Paul Grice). Using TEI is quite a challenge. ou should use it too.
+Why TEI? I know, you know, I know (Paul Grice). Using TEI is quite a challenge. ou should use it too.
Why TEI? I know, you know, I know (Paul Grice). Using TEI is quite a challenge. ou should use it too.
Why TEI? I know, you know, I know (Paul Grice). Using TEI is quite a challenge. ou should use it too.
Why TEI? I know, you know, I know (Paul Grice). Using TEI is quite a challenge. ou should use it too.
</fo:block>
<!-- this defines normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="15pt"
space-after.optimum="3pt"
>
<?xml version="1.0" encoding="utf-8"?>
-<!-- example for a simple fo file. At the beginning the page layout is set.
-Below fo:root there is always
+<!-- example for a simple fo file. At the beginning the page layout is set.
+Below fo:root there is always
- a single fo:layout-master-set which defines one or more page layouts
- an optional fo:declarations,
- and a sequence of one or more fo:page-sequences containing the text and formatting instructions -->
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set>
- <!-- fo:layout-master-set defines in its children the page layout:
+ <!-- fo:layout-master-set defines in its children the page layout:
the pagination and layout specifications
- - page-masters: have the role of describing the intended subdivisions
- of a page and the geometry of these subdivisions
- - page-sequence-masters: have the role of describing the sequence
- of page-masters that will be used to generate
- pages during the formatting of an fo:page-sequence
+ - page-masters: have the role of describing the intended subdivisions
+ of a page and the geometry of these subdivisions
+ - page-sequence-masters: have the role of describing the sequence
+ of page-masters that will be used to generate
+ pages during the formatting of an fo:page-sequence
-->
<!-- layout for the first page -->
<fo:simple-page-master master-name="first"
- page-height="29.7cm"
+ page-height="29.7cm"
page-width="21cm"
- margin-top="1cm"
- margin-bottom="2cm"
- margin-left="2.0cm + 0.5cm"
+ margin-top="1cm"
+ margin-bottom="2cm"
+ margin-left="2.0cm + 0.5cm"
margin-right="(5cm * 1cm) div 2cm">
<fo:region-body margin-top="3cm"/>
<fo:region-before extent="3cm"/>
<fo:simple-page-master master-name="rest"
page-height="abs(-30cm + .3cm)"
page-width="(10cm * 2) + 1cm"
- margin-top="round(.5) * 1cm"
+ margin-top="round(.5) * 1cm"
margin-bottom="round(2.4) * 1cm"
- margin-left="2.5 * 1cm"
+ margin-left="2.5 * 1cm"
margin-right="5.5cm - 3cm">
<fo:region-body margin-top="2.5cm"/>
<fo:region-before extent="2.5cm"/>
</fo:simple-page-master>
<fo:page-sequence-master master-name="basicPSM" >
- <fo:repeatable-page-master-alternatives>
- <fo:conditional-page-master-reference master-reference="first"
- page-position="first" />
- <fo:conditional-page-master-reference master-reference="rest"
- page-position="rest" />
- <!-- recommended fallback procedure -->
- <fo:conditional-page-master-reference master-reference="rest" />
- </fo:repeatable-page-master-alternatives>
+ <fo:repeatable-page-master-alternatives>
+ <fo:conditional-page-master-reference master-reference="first"
+ page-position="first" />
+ <fo:conditional-page-master-reference master-reference="rest"
+ page-position="rest" />
+ <!-- recommended fallback procedure -->
+ <fo:conditional-page-master-reference master-reference="rest" />
+ </fo:repeatable-page-master-alternatives>
</fo:page-sequence-master>
</fo:layout-master-set>
<!-- header -->
<fo:static-content flow-name="xsl-region-before">
- <fo:block text-align="end"
- font-size="10pt"
- font-family="serif"
+ <fo:block text-align="end"
+ font-size="10pt"
+ font-family="serif"
line-height="1em + 4pt" >
Corresponding Property Tests - p. <fo:page-number/>
</fo:block>
- </fo:static-content>
+ </fo:static-content>
<fo:flow flow-name="xsl-region-body">
<!-- defines text title level 1-->
- <fo:block font-size="min(18pt,20pt)"
- font-family="sans-serif"
+ <fo:block font-size="min(18pt,20pt)"
+ font-family="sans-serif"
line-height="max(24pt,18pt)"
space-after.optimum="5 mod 3 * 7.5pt"
background-color="rgb(0,0,255)"
</fo:block>
<!-- Normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="1.25em"
space-after="12pt"
text-align="start"
</fo:block>
<!-- Normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="1.25em"
space-after="3pt"
text-align="start"
padding-before, padding-after, padding-start, and padding-end, etc.
According to the specification, a request for the absolute (top, bottom, left, right) versions of these properties should use the relative ones if they are specified.
</fo:block>
-
- <fo:block font-size="12pt"
- font-family="sans-serif"
+
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="1.25em"
space-before="12pt"
space-after="3pt"
text-align="start"
- start-indent="1cm">
- This block has a start-indent of 1cm and no borders or padding. It has
+ start-indent="1cm">
+ This block has a start-indent of 1cm and no borders or padding. It has
no margin-left set. Here is some more text to fill out the block. Here is some more text to fill out the block. Here is some more text. Here is some more text to fill out the block. Here is some more text to fill out the block. Here is some more text to fill out the block.
- </fo:block>
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ </fo:block>
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="1.25em"
space-before="12pt"
space-after="3pt"
text-align="start"
- margin-left="1cm">
- This block has a margin-left of 1cm and no borders or padding. It has
+ margin-left="1cm">
+ This block has a margin-left of 1cm and no borders or padding. It has
no start-indent set. Here is some more text to fill out the block. Here is some more text to fill out the block. Here is some more text. Here is some more text to fill out the block. Here is some more text to fill out the block. Here is some more text to fill out the block.
- </fo:block>
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ </fo:block>
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="1.25em"
space-before="12pt"
space-after="3pt"
text-align="start"
- start-indent="1cm"
- padding-left="4mm" border-left-width="1mm">
- This block has a start-indent of 1cm, padding-left of 4mm and border-left-width of 1mm. It has
+ start-indent="1cm"
+ padding-left="4mm" border-left-width="1mm">
+ This block has a start-indent of 1cm, padding-left of 4mm and border-left-width of 1mm. It has
no margin-left set. Here is some more text to fill out the block. Here is some more text to fill out the block. Here is some more text. Here is some more text to fill out the block. Here is some more text to fill out the block. Here is some more text to fill out the block.
- </fo:block>
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ </fo:block>
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="1.25em"
space-before="12pt"
space-after="3pt"
text-align="start"
- margin-left="5mm"
- padding-left="4mm" border-left-width="1mm">
- This block has a margin-left of 5mm, padding-left of 4mm and border-left-width of 1mm. (Margin is outside the border rectangle.) It has
+ margin-left="5mm"
+ padding-left="4mm" border-left-width="1mm">
+ This block has a margin-left of 5mm, padding-left of 4mm and border-left-width of 1mm. (Margin is outside the border rectangle.) It has
no start-indent set. Here is some more text to fill out the block. Here is some more text to fill out the block. Here is some more text. Here is some more text to fill out the block. Here is some more text to fill out the block. Here is some more text to fill out the block.
- </fo:block>
+ </fo:block>
<!-- defines text title level 1-->
<fo:block font-size="14pt"
font-family="serif"
- font-weight="bold"
+ font-weight="bold"
line-height="16pt"
space-after="6pt"
text-align="center"
- break-before="page">
+ break-before="page">
End-indent tests
</fo:block>
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="1.25em"
space-before="12pt"
space-after="3pt"
text-align="end"
- end-indent="1cm">
- This block has an end-indent of 1cm and no borders or padding. It has
+ end-indent="1cm">
+ This block has an end-indent of 1cm and no borders or padding. It has
no margin-right set. Here is some more text to fill out the block. Here is some more text to fill out the block. Here is some more text. Here is some more text to fill out the block. Here is some more text to fill out the block. Here is some more text to fill out the block.
- </fo:block>
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ </fo:block>
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="1.25em"
space-before="12pt"
space-after="3pt"
text-align="end"
- margin-right="1cm">
- This block has a margin-right of 1cm and no borders or padding. It has
+ margin-right="1cm">
+ This block has a margin-right of 1cm and no borders or padding. It has
no end-indent set. Here is some more text to fill out the block. Here is some more text to fill out the block. Here is some more text. Here is some more text to fill out the block. Here is some more text to fill out the block. Here is some more text to fill out the block.
- </fo:block>
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ </fo:block>
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="1.25em"
space-before="12pt"
space-after="3pt"
text-align="end"
- end-indent="1cm"
- padding-end="4mm" border-end-width="1mm">
- This block has an end-indent of 1cm, padding-end of 4mm and border-end-width of 1mm. It has
+ end-indent="1cm"
+ padding-end="4mm" border-end-width="1mm">
+ This block has an end-indent of 1cm, padding-end of 4mm and border-end-width of 1mm. It has
no margin-right set. Here is some more text to fill out the block. Here is some more text to fill out the block. Here is some more text. Here is some more text to fill out the block. Here is some more text to fill out the block. Here is some more text to fill out the block.
- </fo:block>
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ </fo:block>
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="1.25em"
space-before="12pt"
space-after="3pt"
text-align="end"
- margin-right="5mm"
- padding-right="4mm" border-right-width="1mm">
- This block has a margin-right of 5mm, padding-right of 4mm and
+ margin-right="5mm"
+ padding-right="4mm" border-right-width="1mm">
+ This block has a margin-right of 5mm, padding-right of 4mm and
border-right-width of 1mm. (Margin is outside the border rectangle.) It has
no end-indent set. Here is some more text to fill out the block. Here is some more text to fill out the block. Here is some more text. Here is some more text to fill out the block. Here is some more text to fill out the block. Here is some more text to fill out the block.
- </fo:block>
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ </fo:block>
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="1.25em"
space-before="12pt"
space-after="3pt"
text-align="end"
- margin-right="5mm"
- padding-end="4mm" border-end-width="1mm">
- This block has a margin-right of 5mm, padding-end of 4mm and
+ margin-right="5mm"
+ padding-end="4mm" border-end-width="1mm">
+ This block has a margin-right of 5mm, padding-end of 4mm and
border-end-width of 1mm. (Margin is outside the border rectangle.) It has
no end-indent set. Here is some more text to fill out the block. Here is some more text to fill out the block. Here is some more text. Here is some more text to fill out the block. Here is some more text to fill out the block. Here is some more text to fill out the block.
- </fo:block>
+ </fo:block>
</fo:flow>
</fo:page-sequence>
<!-- defines the layout master -->
<fo:layout-master-set>
- <fo:simple-page-master master-name="first"
- page-height="29.7cm"
- page-width="21cm"
- margin-top="1cm"
- margin-bottom="2cm"
- margin-left="2.5cm"
+ <fo:simple-page-master master-name="first"
+ page-height="29.7cm"
+ page-width="21cm"
+ margin-top="1cm"
+ margin-bottom="2cm"
+ margin-left="2.5cm"
margin-right="2.5cm">
<fo:region-body margin-top="3cm"/>
<fo:region-before extent="3cm"/>
</fo:block>
<fo:block font-family="Helvetica" font-size="14pt">
- ZapfDingbats:
+ ZapfDingbats:
</fo:block>
<fo:block space-after.optimum="10pt" font-family="ZapfDingbats">
✁ ✂ ✃ ✄ ☎ ✆ ✇
</fo:block>
<fo:block font-family="Helvetica" font-size="12pt">
- Some special characters:
+ Some special characters:
</fo:block>
<fo:block space-after.optimum="10pt" font-family="Helvetica">
Euro ( dec 8364, hex 20AC): €
</fo:block>
-
+
<fo:block space-after.optimum="10pt" font-family="Helvetica">
<?xml version="1.0" encoding="utf-8"?>
-<!-- example for a simple fo file. At the beginning the page layout is set.
- Below fo:root there is always
+<!-- example for a simple fo file. At the beginning the page layout is set.
+ Below fo:root there is always
- a single fo:layout-master-set which defines one or more page layouts
-- an optional fo:declarations
-- and a sequence of one or more fo:page-sequences containing the text and formatting instructions
+- an optional fo:declarations
+- and a sequence of one or more fo:page-sequences containing the text and formatting instructions
-->
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set>
- <!-- fo:layout-master-set defines in its children the page layout:
+ <!-- fo:layout-master-set defines in its children the page layout:
the pagination and layout specifications
- - page-masters: have the role of describing the intended subdivisions
- of a page and the geometry of these subdivisions
- In this case there is only a simple-page-master which defines the
+ - page-masters: have the role of describing the intended subdivisions
+ of a page and the geometry of these subdivisions
+ In this case there is only a simple-page-master which defines the
layout for all pages of the text
-->
<!-- layout information -->
<fo:simple-page-master master-name="simple"
- page-height="29.7cm"
+ page-height="29.7cm"
page-width="21cm"
- margin-top="1cm"
- margin-bottom="2cm"
- margin-left="7cm"
+ margin-top="1cm"
+ margin-bottom="2cm"
+ margin-left="7cm"
margin-right="3cm">
<fo:region-body margin-top="3cm"/>
<fo:region-before extent="3cm"/>
<!-- start page-sequence
here comes the text (contained in flow objects)
- the page-sequence can contain different fo:flows
+ the page-sequence can contain different fo:flows
the attribute value of master-name refers to the page layout
which is to be used to layout the text contained in this
page-sequence-->
<fo:page-sequence master-reference="simple">
<!-- start fo:flow
- each flow is targeted
+ each flow is targeted
at one (and only one) of the following:
xsl-region-body (usually: normal text)
xsl-region-before (usually: header)
xsl-region-after (usually: footer)
- xsl-region-start (usually: left margin)
+ xsl-region-start (usually: left margin)
xsl-region-end (usually: right margin)
- ['usually' applies here to languages with left-right and top-down
+ ['usually' applies here to languages with left-right and top-down
writing direction like English]
in this case there is only one target: xsl-region-body
-->
- <fo:flow flow-name="xsl-region-body"
+ <fo:flow flow-name="xsl-region-body"
text-align="justify">
<!-- each paragraph is encapsulated in a block element
font-family and size, line-heigth etc. -->
<!-- this defines a title -->
- <fo:block font-size="18pt"
- font-family="sans-serif"
+ <fo:block font-size="18pt"
+ font-family="sans-serif"
line-height="24pt"
space-after.optimum="15pt"
background-color="blue"
color="white"
text-align="center"
padding-top="3pt">
- Hyphenation tests
+ Hyphenation tests
</fo:block>
<!-- this defines a title -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="12pt"
background-color="blue"
color="white"
</fo:block>
<!-- Normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="15pt"
space-after.optimum="3pt"
text-align="justify"
</fo:block>
<!-- Normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="15pt"
space-after.optimum="3pt"
text-align="justify"
This document specifies a syntax created by subsetting an existing, widely used international text processing standard
(Standard Generalized Markup Language, ISO 8879:1986(E) as amended and corrected) for use on the World Wide Web. It
is a product of the W3C XML Activity, details of which can be found at the w3c website. A list of current W3C
- Recommendations and other technical documents can be found there too.
+ Recommendations and other technical documents can be found there too.
</fo:block>
<!-- this defines a title -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="12pt"
background-color="blue"
color="white"
</fo:block>
<!-- this defines normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="15pt"
space-after.optimum="3pt"
language="de"
hyphenation-push-character-count="2"
hyphenation-remain-character-count="2" >
1. Warum TEI?
- Die Verwendungszeit elektronischer Editionen wird von mehreren
- Faktoren verkürzt: der kurzen Lebensdauer der Programme, die zu
- ihrer Darstellung verwendet werden, der etwas längeren der
- Betriebssysteme, unter denen die Darstellungsprogramme laufen,
- der logischen Einrichtung des Datenträgers, auf dem sich die
- Edition befindet, und dessen physischer Dauer. Um die besonders
- unangenehme Abhängigkeit elektronischer Texte von bestimmten
- Programmen und Betriebssystemen zu vermeiden, haben
- Wissenschaftler ein Textauszeichnungssystem für philologische
- Belange entwickelt, das nach dem Entwicklerteam "Text Encoding
- Initiative" (TEI) genannt wird (1).
+ Die Verwendungszeit elektronischer Editionen wird von mehreren
+ Faktoren verkürzt: der kurzen Lebensdauer der Programme, die zu
+ ihrer Darstellung verwendet werden, der etwas längeren der
+ Betriebssysteme, unter denen die Darstellungsprogramme laufen,
+ der logischen Einrichtung des Datenträgers, auf dem sich die
+ Edition befindet, und dessen physischer Dauer. Um die besonders
+ unangenehme Abhängigkeit elektronischer Texte von bestimmten
+ Programmen und Betriebssystemen zu vermeiden, haben
+ Wissenschaftler ein Textauszeichnungssystem für philologische
+ Belange entwickelt, das nach dem Entwicklerteam "Text Encoding
+ Initiative" (TEI) genannt wird (1).
</fo:block>
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="15pt"
space-after.optimum="3pt"
language="de"
hyphenate="true">
- Das Auszeichnungssystem TEI ist eine Anwendung der Metasprache
- zur Beschreibung programmunabhängiger Auszeichnungssysteme SGML
- (Standard Generalized Markup Language), so wie auch HTML, mit
- dem die meisten Texte des Internets zur Zeit ausgezeichnet
- sind, eine Anwendung von SGML ist. Daten, die entsprechend den
- TEI-Richtlinien ausgezeichnet worden sind, können also mit
- jedem Programm, das SGML-Daten verarbeiten kann, dargestellt,
+ Das Auszeichnungssystem TEI ist eine Anwendung der Metasprache
+ zur Beschreibung programmunabhängiger Auszeichnungssysteme SGML
+ (Standard Generalized Markup Language), so wie auch HTML, mit
+ dem die meisten Texte des Internets zur Zeit ausgezeichnet
+ sind, eine Anwendung von SGML ist. Daten, die entsprechend den
+ TEI-Richtlinien ausgezeichnet worden sind, können also mit
+ jedem Programm, das SGML-Daten verarbeiten kann, dargestellt,
umgewandelt oder durchsucht werden. (2)
</fo:block>
<!-- this defines normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="15pt"
space-after.optimum="3pt"
language="de"
hyphenate="true">
-
- Verwendet wurde für die Auszeichnung 'teilite', das eine
- Teilmenge des gesamten Auszeichnungssystems TEI bietet, aber
- auf einige der komplexeren Merkmale verzichtet und deshalb auch
- eine einfache Konvertierung der Daten zu neueren Metasprachen
- für Auszeichnungssysteme wie XML, einer Teilmenge von SGML,
+
+ Verwendet wurde für die Auszeichnung 'teilite', das eine
+ Teilmenge des gesamten Auszeichnungssystems TEI bietet, aber
+ auf einige der komplexeren Merkmale verzichtet und deshalb auch
+ eine einfache Konvertierung der Daten zu neueren Metasprachen
+ für Auszeichnungssysteme wie XML, einer Teilmenge von SGML,
ermöglicht.
- SGML-Programme mit der Leistungsfähigkeit von Folio Views sind
- z.Zt. noch relativ teuer, daher wurde für die vorliegende
- Edition der Weg gewählt, den Text doppelt auf die CD zu legen:
- Einmal für die sofortige Nutzung mit einer komfortablen
- Oberfläche und einmal ohne Software in einem Format, das seine
- langfristige Verwendbarkeit garantiert.
+ SGML-Programme mit der Leistungsfähigkeit von Folio Views sind
+ z.Zt. noch relativ teuer, daher wurde für die vorliegende
+ Edition der Weg gewählt, den Text doppelt auf die CD zu legen:
+ Einmal für die sofortige Nutzung mit einer komfortablen
+ Oberfläche und einmal ohne Software in einem Format, das seine
+ langfristige Verwendbarkeit garantiert.
Das Nachstehende soll einige Hinweise zur Einrichtung der TEI-
- Dateien geben, um deren weitere Verwendung zu erleichtern.
+ Dateien geben, um deren weitere Verwendung zu erleichtern.
</fo:block>
<!-- Finnish example sent in by Jarno Elovirta -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="12pt"
background-color="blue"
color="white"
markkaa. Uuden yhdistyneen yrityksen nimenä säilyy Macromedia ja sen johdossa
jatkaa Macromedian nykyinen toimitusjohtaja Rob Burgess. Yrityksen tuotteisiin
lukeutuvat mm. Macromedia Dreamweaver, Macromedia Flash, Allaire ColdFusion ja
- Allaire JRun. Lue juttu.</fo:block>
+ Allaire JRun. Lue juttu.</fo:block>
</fo:block>
<!-- Italian example sent in by Stéphane Bline-->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="12pt"
background-color="blue"
color="white"
text-align="start">
- Italian
+ Italian
</fo:block>
<fo:block language="it"
contratto d'abbonamento a un'applicazione di servizio perfettamente adattata. Le
società e B scambiano informazioni relative all'utilizzo online di questa
applicazione, come il costo del servizio, le modalità di pagamento e la gestione
- degli account utente come i profili.</fo:block> </fo:block>
+ degli account utente come i profili.</fo:block> </fo:block>
<!-- this defines a title -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="12pt"
background-color="blue"
color="white"
Rådets direktiv 89/677/EØF (EF-tidende L 398 s. 19).
</fo:block>
- <fo:block language="da"
+ <fo:block language="da"
hyphenate="true">
Bekendtgørelsens regler hindrer
ikke import, salg og anvendelse af produkter, der på tidspunktet for
bl.a. bekendtgørelse nr. 807 af 2. december 1986 om
begrænsning af motorbenzins indhold af blyforbindelser og benzen.
</fo:block>
- <fo:block language="da"
+ <fo:block language="da"
hyphenate="true">
Import og salg af produkter, der
indeholder kemiske forbindelser af bly, er forbudt fra 1. marts 2001.
- Uanset forbudet i stk.
+ Uanset forbudet i stk.
1 er import og salg af produkter, der indeholder kemiske forbindelser af
bly, fortsat tilladt for de produktkategorier, som er nævnt i bilag
1 til denne bekendtgørelse, indtil de i bilaget anførte
<!-- this defines a title -->
- <fo:block font-size="12pt"
- font-family="Palatino"
+ <fo:block font-size="12pt"
+ font-family="Palatino"
line-height="12pt"
background-color="blue"
color="white"
</fo:block>
<!-- this defines normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="15pt"
space-after.optimum="3pt"
language="no"
hyphenate="true">
-
+
<fo:block>
Av forståelige grunner har året 1814 vært av de mest omdiskuterte i norsk historieforskning.
Med denne bibliografien vil man for første gang få en samlet oversikt over den viktigste
hvordan dette spennende året er blitt forstått og fortolket av norske og nordiske
historikere gjennom fem ulike tidsepoker.
</fo:block>
- <fo:block>
+ <fo:block>
Litteraturen om 1814 kan klassifiseres på flere måter. Grovt sett går det et skille mellom
tre genrer: historiske oversiktsverker, historiske spesialstudier, erindringer og dagbøker
og kilde- og dokumentutgivelser. Av oversiktsverker peker de store Norgeshistoriene seg ut
-med sin relativt omfattende behandling av 1814: Nevnes kan
+med sin relativt omfattende behandling av 1814: Nevnes kan
<fo:inline font-style="italic">Norges historie fremstillet for
-det norske folk</fo:inline>, bd. VI.1 (1913),
-<fo:inline font-style="italic">Det norske folks liv og historie</fo:inline> bd. VII (1933),
-<fo:inline font-style="italic">VÃ¥rt folks historie</fo:inline> bd. 6 (1964),
-<fo:inline font-style="italic">Cappelens Norges historie</fo:inline> bd. 9 (1978) og
+det norske folk</fo:inline>, bd. VI.1 (1913),
+<fo:inline font-style="italic">Det norske folks liv og historie</fo:inline> bd. VII (1933),
+<fo:inline font-style="italic">VÃ¥rt folks historie</fo:inline> bd. 6 (1964),
+<fo:inline font-style="italic">Cappelens Norges historie</fo:inline> bd. 9 (1978) og
<fo:inline font-style="italic">Aschehougs Norgeshistorie</fo:inline> bd. 7 (1996). Disse oversiktene er i vesentlig grad bygd på den omfattende
spesiallitteraturen i bok- eller artikkelform som har et meget vidt spenn, fra biografier
over lokale Eidsvollsmenn til krigshistoriske analyser av felttoget. Mye tidligere skjult
lange rekken av kildeutgivelser hatt stor betydning for forskningen omkring 1814 og bidratt
til å endre forskningsbildet flere ganger.
</fo:block>
- <fo:block font-weight="bold">
-1814-1864
+ <fo:block font-weight="bold">
+1814-1864
</fo:block>
- <fo:block>
+ <fo:block>
Det norske samfunnet etter 1814 ble rekonstruert på den nye Grunnlovens grunn, og vernet om
den stod sentralt i den politiske kampen de neste 25 årene. Til tross for dette må man kunne
si at dokumentasjonen av hva som egentlig hadde skjedd i 1814 i mange år forble temmelig
Grunnloven av 4. november 1814 som gjaldt og regulerte det norske samfunnet, supplert av
Riksakten av 1815.
</fo:block>
- <fo:block>
+ <fo:block>
Riksforsamlingens forhandlinger i 1814 ble utgitt i 6 hefter allerede samme år av de valgte
redaktører, professor Georg Sverdrup, professor Ludvig Stoud Platou og tollprokurør
Christopher Omsen. At de ikke ble reprodusert i de følgende år, hadde sammenheng med den
Etter påtrykk fra ham prøvde norske myndigheter å sette en stopper for offentlig feiring av
17. mai helt frem til midten av 1830-Ã¥rene.
</fo:block>
- <fo:block>
+ <fo:block>
Rimeligvis ble da forholdet til Danmark snarere enn forholdet til Sverige ett av de første
alvorlige stridsspørsmål i perioden. Presten og Eidsvollsmannen Nicolai Wergeland ble
-beryktet for den danskfiendtlige og unionsvennlige posisjon han inntok i boken
+beryktet for den danskfiendtlige og unionsvennlige posisjon han inntok i boken
<fo:inline font-style="italic">En sandfærdig Beretning om Danmarks politiske Forbrydelser imod Kongeriget Norge
</fo:inline> (anonymt, 1816) som
fulgte nasjonalhistorien helt opp til Kielfreden. Skriftet vakte debatt og kraftige
reaksjoner ikke minst blant det gamle selvstendighetsparti. Blant annet publiserte Christian
Magnus Falsen to motskrifter i 1817. Falsen prøvde også å popularisere Grunnlovens innhold
-for den mindre "oplyste" borgerklasse og allmue gjennom skriftet
+for den mindre "oplyste" borgerklasse og allmue gjennom skriftet
<fo:inline font-style="italic">Norges Grundlov gjennemgaaet i Spørgs-maal og Svar
</fo:inline> (1818, forkortet versjon 1825). Men det må kunne påstås
at den mer detaljerte historien om grunnlovsverkets tilblivelse og første fase lenge ble
stående i noe av et halvmørke både for det alminnelige folk og for de nye generasjoner, og
at dette skyldtes den politiske situasjonen. Det var Nicolai Wergeland som leverte selve
-pionerarbeidet blant de personlige kildesamlingene,
+pionerarbeidet blant de personlige kildesamlingene,
<fo:inline font-style="italic">Fortrolige Breve til en Ven, Skrevne fra
Eidsvold i Aaret 1814</fo:inline> (anonymt, 1830). Men det var først da det unionspolitiske klimaet
mildnet etter 1837 at det ble åpnet for en grundigere historisk analyse av Grunnlovens
<fo:layout-master-set>
<fo:simple-page-master master-name="right"
- margin-top="75pt" margin-bottom="25pt" margin-left="100pt" margin-right="50pt">
- <fo:region-body margin-bottom="50pt"/>
- <fo:region-after extent="25pt"/>
+ margin-top="75pt" margin-bottom="25pt" margin-left="100pt" margin-right="50pt">
+ <fo:region-body margin-bottom="50pt"/>
+ <fo:region-after extent="25pt"/>
</fo:simple-page-master>
<fo:simple-page-master master-name="left"
- margin-top="75pt" margin-bottom="25pt" margin-left="50pt" margin-right="100pt">
- <fo:region-body margin-bottom="50pt"/>
- <fo:region-after extent="25pt"/>
+ margin-top="75pt" margin-bottom="25pt" margin-left="50pt" margin-right="100pt">
+ <fo:region-body margin-bottom="50pt"/>
+ <fo:region-after extent="25pt"/>
</fo:simple-page-master>
<fo:page-sequence-master master-name="psmOddEven" >
- <fo:repeatable-page-master-alternatives>
- <fo:conditional-page-master-reference master-reference="right"
- page-position="first" />
- <fo:conditional-page-master-reference master-reference="left"
- odd-or-even="even" />
- <fo:conditional-page-master-reference master-reference="right"
- odd-or-even="odd" />
- <!-- recommended fallback procedure -->
- <fo:conditional-page-master-reference master-reference="rest" />
- </fo:repeatable-page-master-alternatives>
+ <fo:repeatable-page-master-alternatives>
+ <fo:conditional-page-master-reference master-reference="right"
+ page-position="first" />
+ <fo:conditional-page-master-reference master-reference="left"
+ odd-or-even="even" />
+ <fo:conditional-page-master-reference master-reference="right"
+ odd-or-even="odd" />
+ <!-- recommended fallback procedure -->
+ <fo:conditional-page-master-reference master-reference="rest" />
+ </fo:repeatable-page-master-alternatives>
</fo:page-sequence-master>
</fo:layout-master-set>
<fo:page-sequence id="N2528" master-reference="psmOddEven">
<fo:static-content flow-name="xsl-region-after">
- <fo:block text-align-last="center" font-size="10pt">
- <fo:page-number/>
- </fo:block>
+ <fo:block text-align-last="center" font-size="10pt">
+ <fo:page-number/>
+ </fo:block>
</fo:static-content>
<fo:flow flow-name="xsl-region-body">
<fo:block font-size="18pt" font-weight="bold">A. Appendix</fo:block></fo:flow>
</fo:page-sequence>
</fo:root>
-
+
<?xml version="1.0" encoding="utf-8"?>
-<!-- example for a simple fo file. At the beginning the page layout is set.
-Below fo:root there is always
+<!-- example for a simple fo file. At the beginning the page layout is set.
+Below fo:root there is always
- a single fo:layout-master-set which defines one or more page layouts
- an optional fo:declarations,
- and a sequence of one or more fo:page-sequences containing the text and formatting instructions -->
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set>
- <!-- fo:layout-master-set defines in its children the page layout:
+ <!-- fo:layout-master-set defines in its children the page layout:
the pagination and layout specifications
- - page-masters: have the role of describing the intended subdivisions
- of a page and the geometry of these subdivisions
- - page-sequence-masters: have the role of describing the sequence
- of page-masters that will be used to generate
- pages during the formatting of an fo:page-sequence
+ - page-masters: have the role of describing the intended subdivisions
+ of a page and the geometry of these subdivisions
+ - page-sequence-masters: have the role of describing the sequence
+ of page-masters that will be used to generate
+ pages during the formatting of an fo:page-sequence
-->
<!-- layout for the first page -->
<fo:simple-page-master master-name="first"
- page-height="29.7cm"
+ page-height="29.7cm"
page-width="21cm"
- margin-top="1cm"
- margin-bottom="2cm"
- margin-left="2.0cm + 0.5cm"
+ margin-top="1cm"
+ margin-bottom="2cm"
+ margin-left="2.0cm + 0.5cm"
margin-right="(5cm * 1cm) div 2cm">
<fo:region-body margin-top="3cm"/>
<fo:region-before extent="3cm"/>
<fo:simple-page-master master-name="rest"
page-height="abs(-30cm + .3cm)"
page-width="(10cm * 2) + 1cm"
- margin-top="round(.5) * 1cm"
+ margin-top="round(.5) * 1cm"
margin-bottom="round(2.4) * 1cm"
- margin-left="2.5 * 1cm"
+ margin-left="2.5 * 1cm"
margin-right="5.5cm - 3cm">
<fo:region-body margin-top="2.5cm"/>
<fo:region-before extent="2.5cm"/>
</fo:simple-page-master>
<fo:page-sequence-master master-name="basicPSM" >
- <fo:repeatable-page-master-alternatives>
- <fo:conditional-page-master-reference master-reference="first"
- page-position="first" />
- <fo:conditional-page-master-reference master-reference="rest"
- page-position="rest" />
- <!-- recommended fallback procedure -->
- <fo:conditional-page-master-reference master-reference="rest" />
- </fo:repeatable-page-master-alternatives>
+ <fo:repeatable-page-master-alternatives>
+ <fo:conditional-page-master-reference master-reference="first"
+ page-position="first" />
+ <fo:conditional-page-master-reference master-reference="rest"
+ page-position="rest" />
+ <!-- recommended fallback procedure -->
+ <fo:conditional-page-master-reference master-reference="rest" />
+ </fo:repeatable-page-master-alternatives>
</fo:page-sequence-master>
</fo:layout-master-set>
<!-- header -->
<fo:static-content flow-name="xsl-region-before">
- <fo:block text-align="end"
- font-size="10pt"
- font-family="serif"
+ <fo:block text-align="end"
+ font-size="10pt"
+ font-family="serif"
line-height="1em + 4pt" >
Property Function Tests - p. <fo:page-number/>
</fo:block>
- </fo:static-content>
+ </fo:static-content>
<fo:flow flow-name="xsl-region-body">
<!-- defines text title level 1-->
- <fo:block font-size="min(18pt,20pt)"
- font-family="sans-serif"
+ <fo:block font-size="min(18pt,20pt)"
+ font-family="sans-serif"
line-height="max(24pt,18pt)"
space-after.optimum="5 mod 3 * 7.5pt"
background-color="rgb(0,0,255)"
</fo:block>
<!-- defines text title level 2-->
- <fo:block font-size="floor(16.3) * 1pt"
- font-family="sans-serif"
+ <fo:block font-size="floor(16.3) * 1pt"
+ font-family="sans-serif"
line-height="2pt * ceiling(9.3)"
space-before.optimum="10pt"
space-after.optimum="10pt"
text-align="start"
- keep-with-next.within-page="always"
- keep-together.within-page="always"
+ keep-with-next.within-page="always"
+ keep-together.within-page="always"
padding-top="3pt">
- Function: object from-parent( <fo:inline font-weight='bold'>NCName</fo:inline>)
+ Function: object from-parent( <fo:inline font-weight='bold'>NCName</fo:inline>)
</fo:block>
<!-- Normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="1.25em"
space-after="3pt"
- keep-together="auto"
+ keep-together="auto"
text-align="start">
The from-parent function returns a computed value of the property
whose name matches the argument specified. The value returned is that
property are used in any other way.
<fo:block font-size="from-parent(font-size) - 2pt"
font-family="sans-serif"
- space-before="from-parent(space-after)"
+ space-before="from-parent(space-after)"
text-align="center">
- Here is a nested block with font-size =
+ Here is a nested block with font-size =
from-parent(font-size) - 2pt.
Since its parent has font-size=12pt, that should mean 10pt. It should
keep the line height of 1.25em, which means 12.5pt leading. It's
parent. Note that neither of these are inheritable. Does it look right?
</fo:block>
<fo:block font-size="from-parent(font-size) + 2pt"
- space-before="2pt"
- space-after="from-parent(space-after)"
- font-family="sans-serif"
- start-indent="from-parent(start-indent) + 1cm"
- end-indent="from-parent(end-indent) + 1cm"
+ space-before="2pt"
+ space-after="from-parent(space-after)"
+ font-family="sans-serif"
+ start-indent="from-parent(start-indent) + 1cm"
+ end-indent="from-parent(end-indent) + 1cm"
text-align="end"
- background-color="black" color="rgb(50%,50%,50%)">
+ background-color="black" color="rgb(50%,50%,50%)">
Here is a nested block with text 2pt larger than its parent (that
should be 14pt). This parent is indented 1cm on both start and end
directions with respect to the values from its parent (which aren't
object whose font-size is 2 pt bigger than its parent's font-size.</fo:inline></fo:block>
</fo:block>
<fo:block font-size="12pt"
- space-before="6pt"
- line-height="1em + 2pt"
+ space-before="6pt"
+ line-height="1em + 2pt"
font-family="sans-serif"
text-align="start"
- background-color="rgb(50%,50%,50%)">
- An outer block with 12 pt text on 14 pt leading, default color
+ background-color="rgb(50%,50%,50%)">
+ An outer block with 12 pt text on 14 pt leading, default color
and 50% grey background color. Test inherited color changes with
nested blocks.
- <fo:block color='from-parent(background-color)'
- background-color='from-parent(color)'>
- Interchange color and background color using from-parent function.
+ <fo:block color='from-parent(background-color)'
+ background-color='from-parent(color)'>
+ Interchange color and background color using from-parent function.
</fo:block>
</fo:block>
<fo:flow flow-name="xsl-region-body">
<fo:block>This is used to show how foreign objects are placed in a line area.</fo:block>
<fo:block>
- Some block text to separate instream objects.
+ Some block text to separate instream objects.
</fo:block>
<fo:block>
- Some text before
+ Some text before
<fo:instream-foreign-object>
<svg:svg width="20" height="20">
<svg:g style="fill:red; stroke:#000000">
</svg:g>
</svg:svg>
</fo:instream-foreign-object>
- and some after the svg element.
+ and some after the svg element.
</fo:block>
<fo:block>
- A text line below the instream object.
+ A text line below the instream object.
</fo:block>
<fo:block>
<fo:instream-foreign-object>
</fo:instream-foreign-object>
</fo:block>
<fo:block>
- A text line below the block.
+ A text line below the block.
</fo:block>
<fo:block>
- A text line with an instream foreign object that is before the line break.
+ A text line with an instream foreign object that is before the line break.
<fo:instream-foreign-object>
<svg:svg width="50" height="50">
<svg:g style="fill:red; stroke:#000000">
With some text on the next line. With a bit more text to go over the to the next line.
</fo:block>
<fo:block>
- A text line with an instream foreign object that is after the line break.
+ A text line with an instream foreign object that is after the line break.
With some text on the next line. With a bit
<fo:instream-foreign-object>
<svg:svg width="50" height="50">
more text to go over the to the next line.
</fo:block>
<fo:block>
- A text line with an instream foreign object that is over the line break.
+ A text line with an instream foreign object that is over the line break.
With some text
<fo:instream-foreign-object>
<svg:svg width="50" height="50">
<!-- page layout -->
<fo:simple-page-master master-name="first"
- page-height="29.7cm"
+ page-height="29.7cm"
page-width="21cm"
- margin-top="2.5cm"
- margin-bottom="2cm"
- margin-left="2.5cm"
+ margin-top="2.5cm"
+ margin-bottom="2cm"
+ margin-left="2.5cm"
margin-right="2.5cm">
<fo:region-body/>
</fo:simple-page-master>
<fo:flow flow-name="xsl-region-body">
<!-- Normal text -->
- <fo:block font-size="16pt"
- font-family="sans-serif"
+ <fo:block font-size="16pt"
+ font-family="sans-serif"
line-height="15pt"
space-after.optimum="3pt"
text-align="start"
Leader examples
</fo:block>
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="15pt"
space-before.optimum="5pt"
space-after.optimum="3pt"
text-align="start">
- fo:leader is mainly used a) in table-of-contents to generate sequences of "." glyphs that separate titles from page numbers
- b) to create entry fields in fill-in-the-blank forms c) to create horizontal rules for use as separators. You
- define the look and use of fo:leader with the property "leader-pattern". It can have the following values: a) space. This
- just creates an space. b) dots. This creates a sequence of "." c) rule. This creates a line. d) use-content. This creates a
- repeating pattern of the content of fo:leader.
+ fo:leader is mainly used a) in table-of-contents to generate sequences of "." glyphs that separate titles from page numbers
+ b) to create entry fields in fill-in-the-blank forms c) to create horizontal rules for use as separators. You
+ define the look and use of fo:leader with the property "leader-pattern". It can have the following values: a) space. This
+ just creates an space. b) dots. This creates a sequence of "." c) rule. This creates a line. d) use-content. This creates a
+ repeating pattern of the content of fo:leader.
</fo:block>
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="15pt"
space-before.optimum="5pt"
space-after.optimum="3pt"
text-align="start">
- The dimensions of fo:leader are determined by the compound property leader-length. It consists of the
+ The dimensions of fo:leader are determined by the compound property leader-length. It consists of the
3 sub values: leader-length.minimum (default = 0), leader-length.optimum (default = 12pt), leader-length.maximum
- (default = 100%). If you want to make sure, that leader-length has a fixed size, you should use the compound
- property (p.e. leader-length="5cm"). If you want to fill the rest of the remaining space with dots in a table of
- content, you can use the default values.
+ (default = 100%). If you want to make sure, that leader-length has a fixed size, you should use the compound
+ property (p.e. leader-length="5cm"). If you want to fill the rest of the remaining space with dots in a table of
+ content, you can use the default values.
</fo:block>
- <fo:block font-size="14pt"
- font-family="sans-serif"
+ <fo:block font-size="14pt"
+ font-family="sans-serif"
line-height="17pt"
space-before.optimum="5pt"
space-after.optimum="3pt"
text-align="start"
background-color="blue"
color="white">
- leader with leader-pattern="space"
+ leader with leader-pattern="space"
</fo:block>
<!-- Inserts a leader (space) -->
- <fo:block text-align="start">Entry 1
- <fo:leader leader-pattern="space"
+ <fo:block text-align="start">Entry 1
+ <fo:leader leader-pattern="space"
leader-length="6cm"/>p. 12
</fo:block>
<!-- Inserts a leader (space) -->
- <fo:block text-align="start">Entry 2
- <fo:leader leader-pattern="space"
+ <fo:block text-align="start">Entry 2
+ <fo:leader leader-pattern="space"
leader-length="6cm"/>p. 24
</fo:block>
<!-- Inserts a leader (space) -->
- <fo:block text-align="start">Left side
- <fo:leader leader-pattern="space"
+ <fo:block text-align="start">Left side
+ <fo:leader leader-pattern="space"
leader-length="5.5cm"/>middle
- <fo:leader leader-pattern="space"
+ <fo:leader leader-pattern="space"
leader-length="5.5cm"/>right side
</fo:block>
- <fo:block font-size="14pt"
- font-family="sans-serif"
+ <fo:block font-size="14pt"
+ font-family="sans-serif"
line-height="17pt"
space-before.optimum="5pt"
space-after.optimum="3pt"
Using fo:leader with leader-pattern="dots"
</fo:block>
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="15pt"
space-before.optimum="5pt"
space-after.optimum="3pt"
text-align="start">
- There are two properties which allow you to specify the looks of the dotted line. First
- "leader-pattern-width". It specifies the length of one dot and the space up to the next dot.
+ There are two properties which allow you to specify the looks of the dotted line. First
+ "leader-pattern-width". It specifies the length of one dot and the space up to the next dot.
Second leader-alignment. It can be used to make sure, the dots in different lines are parallel (only value "reference-area"
- is supported).
+ is supported).
</fo:block>
<!-- Inserts a leader (dots) -->
- <fo:block text-align="start">Entry 1
- <fo:leader leader-pattern="dots"
+ <fo:block text-align="start">Entry 1
+ <fo:leader leader-pattern="dots"
leader-length="6cm"/>p. 12
</fo:block>
<!-- Inserts a leader (dots) -->
- <fo:block text-align="start">Entry 2
- <fo:leader leader-pattern="dots"
+ <fo:block text-align="start">Entry 2
+ <fo:leader leader-pattern="dots"
leader-length="6cm"/>p. 24
</fo:block>
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="15pt"
space-before.optimum="5pt"
space-after.optimum="3pt"
</fo:block>
<!-- Inserts a leader (dots) -->
- <fo:block text-align="start">Entry 1
- <fo:leader leader-pattern="dots"
+ <fo:block text-align="start">Entry 1
+ <fo:leader leader-pattern="dots"
leader-pattern-width="5pt"
leader-length="6cm"/>p. 12
</fo:block>
<!-- Inserts a leader (dots) -->
- <fo:block text-align="start">Entry 2
- <fo:leader leader-pattern="dots"
+ <fo:block text-align="start">Entry 2
+ <fo:leader leader-pattern="dots"
leader-pattern-width="5pt"
leader-length="6cm"/>p. 24
</fo:block>
<!-- Inserts a leader (dots) -->
- <fo:block text-align="start">Entry 1
- <fo:leader leader-pattern="dots"
+ <fo:block text-align="start">Entry 1
+ <fo:leader leader-pattern="dots"
leader-pattern-width="8pt"
leader-length="6cm"/>p. 12
</fo:block>
<!-- Inserts a leader (dots) -->
- <fo:block text-align="start">Entry 2
- <fo:leader leader-pattern="dots"
+ <fo:block text-align="start">Entry 2
+ <fo:leader leader-pattern="dots"
leader-pattern-width="8pt"
leader-length="6cm"/>p. 24
</fo:block>
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="15pt"
space-before.optimum="5pt"
space-after.optimum="3pt"
text-align="start">
- Using fo:leader with leader-pattern="dots" in a list
+ Using fo:leader with leader-pattern="dots" in a list
</fo:block>
<fo:block text-align="start"
</fo:block>
<!-- Inserts a leader (dots) -->
- <fo:block text-align="start">Entry 1
- <fo:leader leader-pattern="dots"
+ <fo:block text-align="start">Entry 1
+ <fo:leader leader-pattern="dots"
leader-pattern-width="5pt"
leader-alignment="reference-area"
leader-length="6cm"/>p. 12
</fo:block>
<!-- Inserts a leader (dots) -->
- <fo:block text-align="start">Entry 2
- <fo:leader leader-pattern="dots"
+ <fo:block text-align="start">Entry 2
+ <fo:leader leader-pattern="dots"
leader-pattern-width="5pt"
leader-alignment="reference-area"
leader-length="6cm"/>p. 24
</fo:block>
<!-- Inserts a leader (dots) -->
- <fo:block text-align="start">Entry 3 is longer
- <fo:leader leader-pattern="dots"
+ <fo:block text-align="start">Entry 3 is longer
+ <fo:leader leader-pattern="dots"
leader-pattern-width="5pt"
leader-alignment="reference-area"
leader-length="6cm"/>p. 36
</fo:block>
<!-- Inserts a leader (dots) -->
- <fo:block text-align="start">Entry 4 is even longer
- <fo:leader leader-pattern="dots"
+ <fo:block text-align="start">Entry 4 is even longer
+ <fo:leader leader-pattern="dots"
leader-alignment="reference-area"
leader-pattern-width="5pt"
leader-length="6cm"/>p. 48
<!-- Inserts a leader (dots) -->
- <fo:block text-align="start">1
- <fo:leader leader-pattern="dots"
+ <fo:block text-align="start">1
+ <fo:leader leader-pattern="dots"
leader-pattern-width="8pt"
leader-length="6cm"
leader-alignment="reference-area"/>p. 12
</fo:block>
<!-- Inserts a leader (dots) -->
- <fo:block text-align="start">Entry 2
- <fo:leader leader-pattern="dots"
+ <fo:block text-align="start">Entry 2
+ <fo:leader leader-pattern="dots"
leader-pattern-width="8pt"
leader-length="6cm"
leader-alignment="reference-area"/>p. 24
<!-- Inserts a leader (dots) -->
- <fo:block text-align="start">Entry 3 is longer
- <fo:leader leader-pattern="dots"
+ <fo:block text-align="start">Entry 3 is longer
+ <fo:leader leader-pattern="dots"
leader-pattern-width="8pt"
leader-length="6cm"
leader-alignment="reference-area"/>p. 36
</fo:block>
<!-- Inserts a leader (dots) -->
- <fo:block text-align="start">Entry 4 is even longer
- <fo:leader leader-pattern="dots"
+ <fo:block text-align="start">Entry 4 is even longer
+ <fo:leader leader-pattern="dots"
leader-pattern-width="8pt"
leader-length="6cm"
leader-alignment="reference-area"/>p. 48
<!-- list start -->
- <!-- use provisional-distance-between-starts to define
- the distance between the start of the label and the item text
-
+ <!-- use provisional-distance-between-starts to define
+ the distance between the start of the label and the item text
+
use provisional-label-separation to define the distance between
the end of the item label and the start of item text
-->
<fo:list-block provisional-distance-between-starts="0.3cm"
provisional-label-separation="0.15cm">
-
+
<!-- list item -->
<fo:list-item>
<!-- insert a bullet -->
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-size="10pt" font-family="Symbol">·</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
<!-- Inserts a leader (dots) -->
- <fo:block text-align="start">Entry 1
- <fo:leader leader-pattern="dots"
+ <fo:block text-align="start">Entry 1
+ <fo:leader leader-pattern="dots"
leader-pattern-width="5pt"
leader-length="6cm"/>p. 12
</fo:block>
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-size="10pt" font-family="Symbol">·</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
<!-- Inserts a leader (dots) -->
- <fo:block text-align="start">Entry 2
- <fo:leader leader-pattern="dots"
+ <fo:block text-align="start">Entry 2
+ <fo:leader leader-pattern="dots"
leader-pattern-width="5pt"
leader-length="6cm"/>p. 24
</fo:block>
</fo:list-item-body>
</fo:list-item>
</fo:list-block>
- <!-- list end -->
+ <!-- list end -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="15pt"
space-before.optimum="5pt"
space-after.optimum="3pt"
<fo:table-row>
<fo:table-cell ><fo:block>Entry 1</fo:block></fo:table-cell>
<fo:table-cell >
- <fo:block text-align="start">
- <fo:leader leader-pattern="dots"
+ <fo:block text-align="start">
+ <fo:leader leader-pattern="dots"
leader-pattern-width="8pt"
leader-length="6cm"/>
</fo:block>
<fo:table-row>
<fo:table-cell ><fo:block>Entry 2 </fo:block></fo:table-cell>
<fo:table-cell >
- <fo:block text-align="start">
- <fo:leader leader-pattern="dots"
+ <fo:block text-align="start">
+ <fo:leader leader-pattern="dots"
leader-pattern-width="8pt"
leader-length="6cm"/>
</fo:block>
<fo:table-row>
<fo:table-cell ><fo:block>Entry 3 </fo:block></fo:table-cell>
<fo:table-cell >
- <fo:block text-align="start">
- <fo:leader leader-pattern="dots"
+ <fo:block text-align="start">
+ <fo:leader leader-pattern="dots"
leader-pattern-width="8pt"
leader-length="6cm"/>
</fo:block>
<fo:block text-align="center"
font-size="15pt"
space-before.optimum="16pt"
- space-after.optimum="12pt">
+ space-after.optimum="12pt">
Table of Content
</fo:block>
<fo:block text-align="start"
font-size="10pt"
- space-after.optimum="12pt">
- shows the use of leader properties in combination to build a table of content.
- Following values are used for the leader:
+ space-after.optimum="12pt">
+ shows the use of leader properties in combination to build a table of content.
+ Following values are used for the leader:
leader-pattern="dots"
leader-pattern-width="8pt"
leader-alignment="reference-area"
<fo:table-row line-height="12pt">
<fo:table-cell><fo:block text-align="end">A) </fo:block></fo:table-cell>
- <fo:table-cell><fo:block text-align="start">This is some longer sample text<fo:leader leader-pattern="dots"
+ <fo:table-cell><fo:block text-align="start">This is some longer sample text<fo:leader leader-pattern="dots"
leader-pattern-width="8pt"
leader-alignment="reference-area"
/></fo:block></fo:table-cell>
<fo:table-row line-height="12pt">
<fo:table-cell><fo:block text-align="end">B) </fo:block></fo:table-cell>
- <fo:table-cell><fo:block text-align="start">Some text<fo:leader leader-pattern="dots"
+ <fo:table-cell><fo:block text-align="start">Some text<fo:leader leader-pattern="dots"
leader-pattern-width="8pt"
leader-alignment="reference-area"
/></fo:block></fo:table-cell>
<fo:table-row line-height="12pt">
<fo:table-cell><fo:block text-align="end" >C) </fo:block></fo:table-cell>
- <fo:table-cell><fo:block text-align="start">Text<fo:leader leader-pattern="dots"
+ <fo:table-cell><fo:block text-align="start">Text<fo:leader leader-pattern="dots"
leader-pattern-width="8pt"
leader-alignment="reference-area"
/></fo:block></fo:table-cell>
<fo:table-row line-height="12pt">
<fo:table-cell><fo:block text-align="end">D) </fo:block></fo:table-cell>
- <fo:table-cell><fo:block text-align="start">This text is even longer than the first entry <fo:leader leader-pattern="dots"
+ <fo:table-cell><fo:block text-align="start">This text is even longer than the first entry <fo:leader leader-pattern="dots"
leader-pattern-width="8pt"
leader-alignment="reference-area"
/></fo:block></fo:table-cell>
<fo:table-row line-height="12pt">
<fo:table-cell><fo:block text-align="end">E) </fo:block></fo:table-cell>
- <fo:table-cell><fo:block text-align="start">Shorter text example<fo:leader leader-pattern="dots"
+ <fo:table-cell><fo:block text-align="start">Shorter text example<fo:leader leader-pattern="dots"
leader-pattern-width="8pt"
leader-alignment="reference-area"
/></fo:block></fo:table-cell>
- <fo:block font-size="14pt"
- font-family="sans-serif"
+ <fo:block font-size="14pt"
+ font-family="sans-serif"
line-height="17pt"
space-before.optimum="15pt"
space-after.optimum="3pt"
Leader with leader-pattern="rule"
</fo:block>
- <!-- Inserts a leader (rule). Because leader is an inline fo you have
+ <!-- Inserts a leader (rule). Because leader is an inline fo you have
to wrap it into a block element -->
<fo:block text-align="start">text before the rule (start)
- <fo:leader leader-pattern="rule"
+ <fo:leader leader-pattern="rule"
rule-thickness="3.0pt"
leader-length="6cm"
space-before.optimum="12pt"
text after the rule
</fo:block>
- <!-- Inserts a leader (rule). Because leader is an inline fo you have
+ <!-- Inserts a leader (rule). Because leader is an inline fo you have
to wrap it into a block element -->
<fo:block text-align="center">text before the rule (center)
- <fo:leader leader-pattern="rule"
+ <fo:leader leader-pattern="rule"
rule-thickness="3.0pt"
leader-length="6cm"
space-before.optimum="12pt"
text after the rule
</fo:block>
- <!-- Inserts a leader (rule). Because leader is an inline fo you have
+ <!-- Inserts a leader (rule). Because leader is an inline fo you have
to wrap it into a block element -->
<fo:block text-align="end">text before the rule (end)
- <fo:leader leader-pattern="rule"
+ <fo:leader leader-pattern="rule"
rule-thickness="3.0pt"
leader-length="6cm"
space-before.optimum="12pt"
text after the rule
</fo:block>
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="15pt"
space-before.optimum="5pt"
space-after.optimum="3pt"
text-align="start">
- Here are some fo:leader with the property rule and different rule styles
- (solid, dashed, dotted, double, groove, ridge the last one with colored backgrounds
+ Here are some fo:leader with the property rule and different rule styles
+ (solid, dashed, dotted, double, groove, ridge the last one with colored backgrounds
to the effect)
</fo:block>
- <!-- Inserts a leader (rule). Because leader is an inline fo you have
+ <!-- Inserts a leader (rule). Because leader is an inline fo you have
to wrap it into a block element -->
<fo:block text-align="center"
space-before.optimum="12pt"
- space-after.optimum="12pt">
- <fo:leader leader-pattern="rule"
+ space-after.optimum="12pt">
+ <fo:leader leader-pattern="rule"
rule-thickness="1pt"
- leader-length="6cm"/>
+ leader-length="6cm"/>
</fo:block>
<fo:block text-align="center"
space-before.optimum="12pt"
- space-after.optimum="12pt">
+ space-after.optimum="12pt">
- <fo:leader leader-pattern="rule"
+ <fo:leader leader-pattern="rule"
leader-length="6cm"
rule-thickness="1pt"
rule-style="dashed"/>
<fo:block text-align="center"
space-before.optimum="12pt"
- space-after.optimum="12pt">
- <fo:leader leader-pattern="rule"
+ space-after.optimum="12pt">
+ <fo:leader leader-pattern="rule"
leader-length="6cm"
rule-style="dotted"
rule-thickness="1pt"/>
<fo:block text-align="center"
space-before.optimum="12pt"
- space-after.optimum="12pt">
- <fo:leader leader-pattern="rule"
+ space-after.optimum="12pt">
+ <fo:leader leader-pattern="rule"
leader-length="6cm"
rule-thickness="2pt"
rule-style="double"/>
<fo:block text-align="center" background-color="silver"
space-before.optimum="12pt"
- space-after.optimum="12pt">
- <fo:leader leader-pattern="rule"
+ space-after.optimum="12pt">
+ <fo:leader leader-pattern="rule"
leader-length="6cm"
rule-thickness="1pt"
rule-style="groove"
<fo:block text-align="center" background-color="silver"
space-before.optimum="12pt"
- space-after.optimum="12pt">
- <fo:leader leader-pattern="rule"
+ space-after.optimum="12pt">
+ <fo:leader leader-pattern="rule"
leader-length="6cm"
rule-thickness="1pt"
rule-style="ridge"
</fo:block>
<!-- Normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="15pt"
space-before.optimum="5pt"
space-after.optimum="3pt"
Here are 4 fo:leader with increasing rule-thickness (1pt, 2pt, 3pt, 4pt)
</fo:block>
- <!-- Inserts a leader (rule). Because leader is an inline fo you have
+ <!-- Inserts a leader (rule). Because leader is an inline fo you have
to wrap it into a block element -->
<fo:block text-align="center"
space-before.optimum="12pt"
- space-after.optimum="12pt">
- <fo:leader leader-pattern="rule"
+ space-after.optimum="12pt">
+ <fo:leader leader-pattern="rule"
rule-thickness="1.0pt"
- leader-length="6cm"/>
+ leader-length="6cm"/>
</fo:block>
- <!-- Inserts a leader (rule). Because leader is an inline fo you have
+ <!-- Inserts a leader (rule). Because leader is an inline fo you have
to wrap it into a block element -->
<fo:block text-align="center"
space-before.optimum="12pt"
- space-after.optimum="12pt">
- <fo:leader leader-pattern="rule"
+ space-after.optimum="12pt">
+ <fo:leader leader-pattern="rule"
rule-thickness="2.0pt"
leader-length="6cm"/>
</fo:block>
- <!-- Inserts a leader (rule). Because leader is an inline fo you have
+ <!-- Inserts a leader (rule). Because leader is an inline fo you have
to wrap it into a block element -->
<fo:block text-align="center"
space-before.optimum="12pt"
- space-after.optimum="12pt">
- <fo:leader leader-pattern="rule"
+ space-after.optimum="12pt">
+ <fo:leader leader-pattern="rule"
rule-thickness="3.0pt"
leader-length="6cm"/>
</fo:block>
- <!-- Inserts a leader (rule). Because leader is an inline fo you have
+ <!-- Inserts a leader (rule). Because leader is an inline fo you have
to wrap it into a block element -->
<fo:block text-align="center"
space-before.optimum="12pt"
- space-after.optimum="12pt">
- <fo:leader leader-pattern="rule"
+ space-after.optimum="12pt">
+ <fo:leader leader-pattern="rule"
rule-thickness="4.0pt"
leader-length="6cm"/>
</fo:block>
<!-- Normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="15pt"
space-before.optimum="5pt"
space-after.optimum="3pt"
Here are 4 fo:leader with increasing rule-thickness (1pt, 2pt, 3pt, 4pt) and leader-length: 25%, 50%, 75%, 100%
</fo:block>
- <!-- Inserts a leader (rule). Because leader is an inline fo you have
+ <!-- Inserts a leader (rule). Because leader is an inline fo you have
to wrap it into a block element -->
<fo:block text-align="center"
space-before.optimum="12pt"
- space-after.optimum="12pt">
- <fo:leader leader-pattern="rule"
+ space-after.optimum="12pt">
+ <fo:leader leader-pattern="rule"
rule-thickness="1.0pt"
- leader-length="25%"/>
+ leader-length="25%"/>
</fo:block>
- <!-- Inserts a leader (rule). Because leader is an inline fo you have
+ <!-- Inserts a leader (rule). Because leader is an inline fo you have
to wrap it into a block element -->
<fo:block text-align="center"
space-before.optimum="12pt"
- space-after.optimum="12pt">
- <fo:leader leader-pattern="rule"
+ space-after.optimum="12pt">
+ <fo:leader leader-pattern="rule"
rule-thickness="2.0pt"
leader-length="50%"/>
</fo:block>
- <!-- Inserts a leader (rule). Because leader is an inline fo you have
+ <!-- Inserts a leader (rule). Because leader is an inline fo you have
to wrap it into a block element -->
<fo:block text-align="center"
space-before.optimum="12pt"
- space-after.optimum="12pt">
- <fo:leader leader-pattern="rule"
+ space-after.optimum="12pt">
+ <fo:leader leader-pattern="rule"
rule-thickness="3.0pt"
leader-length="75%"/>
</fo:block>
- <!-- Inserts a leader (rule). Because leader is an inline fo you have
+ <!-- Inserts a leader (rule). Because leader is an inline fo you have
to wrap it into a block element -->
<fo:block text-align="center"
space-before.optimum="12pt"
- space-after.optimum="12pt">
- <fo:leader leader-pattern="rule"
+ space-after.optimum="12pt">
+ <fo:leader leader-pattern="rule"
rule-thickness="4.0pt"
leader-length="100%"/>
</fo:block>
<fo:block text-align="center"
font-size="15pt"
space-before.optimum="16pt"
- space-after.optimum="12pt">
+ space-after.optimum="12pt">
Using leader in combination with justified text
</fo:block>
- <fo:block text-align="justify">Here is some longer text. Here is some longer text.
- Here is some longer text. Here comes the leader (dots width 8pt):
- <fo:leader leader-pattern="dots"
+ <fo:block text-align="justify">Here is some longer text. Here is some longer text.
+ Here is some longer text. Here comes the leader (dots width 8pt):
+ <fo:leader leader-pattern="dots"
leader-pattern-width="8pt"
- leader-length="5cm"/>Here is some longer text. Here is some longer text.
- Here is some longer text. Here is some longer text. Here is some longer text.
+ leader-length="5cm"/>Here is some longer text. Here is some longer text.
+ Here is some longer text. Here is some longer text. Here is some longer text.
</fo:block>
- <fo:block text-align="justify">Here is some longer text. Here is some longer text.
- Here is some longer text. Here comes the leader (dots width 5pt):
- <fo:leader leader-pattern="dots"
+ <fo:block text-align="justify">Here is some longer text. Here is some longer text.
+ Here is some longer text. Here comes the leader (dots width 5pt):
+ <fo:leader leader-pattern="dots"
leader-pattern-width="5pt"
- leader-length="5cm"/>Here is some longer text. Here is some longer text.
- Here is some longer text. Here is some longer text. Here is some longer text.
+ leader-length="5cm"/>Here is some longer text. Here is some longer text.
+ Here is some longer text. Here is some longer text. Here is some longer text.
</fo:block>
- <fo:block text-align="justify">Here is some longer text. Here is some longer text.
- Here is some longer text. Here comes the leader (dots):
- <fo:leader leader-pattern="dots"
- leader-length="5cm"/>Here is some longer text. Here is some longer text.
- Here is some longer text. Here is some longer text. Here is some longer text.
+ <fo:block text-align="justify">Here is some longer text. Here is some longer text.
+ Here is some longer text. Here comes the leader (dots):
+ <fo:leader leader-pattern="dots"
+ leader-length="5cm"/>Here is some longer text. Here is some longer text.
+ Here is some longer text. Here is some longer text. Here is some longer text.
</fo:block>
- <fo:block text-align="justify">Here is some longer text. Here is some longer text.
- Here is some longer text. Here comes the leader (rule):
- <fo:leader leader-pattern="rule"
- leader-length="5cm"/>Here is some longer text. Here is some longer text.
- Here is some longer text. Here is some longer text. Here is some longer text.
+ <fo:block text-align="justify">Here is some longer text. Here is some longer text.
+ Here is some longer text. Here comes the leader (rule):
+ <fo:leader leader-pattern="rule"
+ leader-length="5cm"/>Here is some longer text. Here is some longer text.
+ Here is some longer text. Here is some longer text. Here is some longer text.
</fo:block>
- <fo:block text-align="justify">Here is some longer text. Here is some longer text.
- Here is some longer text. Here comes the leader (space):
- <fo:leader leader-pattern="space"
- leader-length="5cm"/>Here is some longer text. Here is some longer text.
- Here is some longer text. Here is some longer text. Here is some longer text.
+ <fo:block text-align="justify">Here is some longer text. Here is some longer text.
+ Here is some longer text. Here comes the leader (space):
+ <fo:leader leader-pattern="space"
+ leader-length="5cm"/>Here is some longer text. Here is some longer text.
+ Here is some longer text. Here is some longer text. Here is some longer text.
</fo:block>
<fo:block space-before.optimum="15pt" font-weight="bold" font-size="14pt">
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
- <!-- defines page layout -->
- <fo:layout-master-set>
- <fo:simple-page-master master-name="first"
- page-height="29.7cm" page-width="21cm"
- margin-top="1cm"
- margin-bottom="2cm"
- margin-left="2.5cm"
- margin-right="2.5cm">
- <fo:region-body margin-top="3cm"/>
- <fo:region-before extent="3cm"/>
- <fo:region-after extent="1.5cm"/>
- </fo:simple-page-master>
- </fo:layout-master-set>
- <!-- end: defines page layout -->
-
- <!-- actual layout -->
- <fo:page-sequence master-reference="first">
-
- <!-- text body -->
- <fo:flow flow-name="xsl-region-body">
-
- <!-- Normal text -->
- <fo:block text-align="center">0. Normal text without link
- </fo:block>
-
-
- <!-- Normal text -->
- <fo:block text-align="center"
- font-family="serif">1. <fo:basic-link external-destination="normal.pdf">normal.pdf</fo:basic-link>
- </fo:block>
-
- <!-- Normal text -->
- <fo:block text-align="center">---</fo:block>
-
- <!-- Normal text -->
- <fo:block text-align="center">
- 2. A one line example (text-align='start'): <fo:basic-link external-destination="normal.pdf">normal.pdf</fo:basic-link>
- </fo:block>
-
- <!-- Normal text -->
- <fo:block text-align="center">---</fo:block>
-
- <!-- Normal text -->
- <fo:block text-align="start" hyphenate="true" language="en">
- 3. A multiline text (text-align='start'). The Extensible Markup Language (XML) is a subset of SGML that is completely described in this document. Its goal is to
- enable generic SGML to be served, received, and processed on the Web in the way that is now possible with HTML. XML
- has been designed for ease of implementation and for interoperability with both SGML and HTML. For further information
- go to <fo:basic-link external-destination="normal.pdf">normal.pdf</fo:basic-link>
- </fo:block>
-
- <!-- Normal text -->
- <fo:block text-align="center">---</fo:block>
-
- <!-- Normal text -->
- <fo:block text-align="center">
- 4. A multiline text (text-align='centered'). The Extensible Markup Language (XML) is a subset of SGML that is completely described in this document. Its goal is to
- enable generic SGML to be served, received, and processed on the Web in the way that is now possible with HTML. XML
- has been designed for ease of implementation and for interoperability with both SGML and HTML. For further information
- go to <fo:basic-link external-destination="normal.pdf">normal.pdf</fo:basic-link>
- </fo:block>
-
- <!-- Normal text -->
- <fo:block text-align="center">---</fo:block>
-
- <!-- Normal text -->
- <fo:block text-align="end">
- 5. A multiline text (text-align='end'). The Extensible Markup Language (XML) is a subset of SGML that is completely described in this document. Its goal is to
- enable generic SGML to be served, received, and processed on the Web in the way that is now possible with HTML. XML
- has been designed for ease of implementation and for interoperability with both SGML and HTML. For further information
- go to <fo:basic-link external-destination="normal.pdf">normal.pdf</fo:basic-link>
- </fo:block>
-
- <!-- Normal text -->
- <fo:block text-align="center">---</fo:block>
-
- <!-- Normal text -->
- <fo:block text-align="justify" hyphenate="true" language="en">
- 6. A multiline text (text-align='justify'). The Extensible Markup Language (XML) is a subset of SGML that is completely described in this document. Its goal is to
- enable generic SGML to be served, received, and processed on the Web in the way that is now possible with HTML. XML
- has been designed for ease of implementation and for interoperability with both SGML and HTML. For further information
- go to <fo:basic-link external-destination="normal.pdf">normal.pdf</fo:basic-link>
- </fo:block>
-
- <!-- Normal text -->
- <fo:block text-align="center">---</fo:block>
-
- <!-- Normal text -->
- <fo:block text-align="start"
- space-before.optimum="6pt"
- line-height="24pt"
- font-family="serif"
- padding-top="3pt"
- >
- 7. A multiline text (text-align='start', space-before.optimum=6pt, font-family=serif padding-top="3pt"). The Extensible Markup Language (XML) is a subset of SGML that is completely described in this document. Its goal is to
- enable <fo:basic-link external-destination="normal.pdf">generic</fo:basic-link> SGML to be served, received, and processed on the Web in the way that is now possible with HTML. XML
- has been designed for ease of implementation and for interoperability with both SGML and HTML. For further information
- go to <fo:basic-link external-destination="normal.pdf">normal.pdf</fo:basic-link>
- </fo:block>
-
- <!-- Normal text -->
- <fo:block text-align="start"
- space-before.optimum="6pt"
- line-height="24pt"
- font-family="serif"
- padding-top="3pt"
- >
- 8. A multiline text (text-align='start', space-before.optimum=6pt, font-family=serif, padding-top="3pt"). The Extensible Markup Language (XML) is a subset of SGML that is completely described in this document. Its goal is to
- enable <fo:basic-link external-destination="normal.pdf">generic</fo:basic-link> SGML to be served, received, and processed on the Web in the way that is now possible with HTML. XML
- has been designed for ease of implementation and for interoperability with both SGML and HTML. For further information
- go to <fo:basic-link external-destination="normal.pdf">normal.pdf</fo:basic-link>
- </fo:block>
-
- <!-- Normal text -->
- <fo:block text-align="start"
- space-before.optimum="6pt"
- line-height="24pt"
- font-family="serif"
- padding-top="3pt"
- >
- 9. Linking to a specific page of an external:
- <fo:basic-link external-destination="extensive.pdf#page=1">extensive.pdf, Page 2</fo:basic-link>.
- </fo:block>
-
- <!-- Normal text -->
+ <!-- defines page layout -->
+ <fo:layout-master-set>
+ <fo:simple-page-master master-name="first"
+ page-height="29.7cm" page-width="21cm"
+ margin-top="1cm"
+ margin-bottom="2cm"
+ margin-left="2.5cm"
+ margin-right="2.5cm">
+ <fo:region-body margin-top="3cm"/>
+ <fo:region-before extent="3cm"/>
+ <fo:region-after extent="1.5cm"/>
+ </fo:simple-page-master>
+ </fo:layout-master-set>
+ <!-- end: defines page layout -->
+
+ <!-- actual layout -->
+ <fo:page-sequence master-reference="first">
+
+ <!-- text body -->
+ <fo:flow flow-name="xsl-region-body">
+
+ <!-- Normal text -->
+ <fo:block text-align="center">0. Normal text without link
+ </fo:block>
+
+
+ <!-- Normal text -->
+ <fo:block text-align="center"
+ font-family="serif">1. <fo:basic-link external-destination="normal.pdf">normal.pdf</fo:basic-link>
+ </fo:block>
+
+ <!-- Normal text -->
+ <fo:block text-align="center">---</fo:block>
+
+ <!-- Normal text -->
+ <fo:block text-align="center">
+ 2. A one line example (text-align='start'): <fo:basic-link external-destination="normal.pdf">normal.pdf</fo:basic-link>
+ </fo:block>
+
+ <!-- Normal text -->
+ <fo:block text-align="center">---</fo:block>
+
+ <!-- Normal text -->
+ <fo:block text-align="start" hyphenate="true" language="en">
+ 3. A multiline text (text-align='start'). The Extensible Markup Language (XML) is a subset of SGML that is completely described in this document. Its goal is to
+ enable generic SGML to be served, received, and processed on the Web in the way that is now possible with HTML. XML
+ has been designed for ease of implementation and for interoperability with both SGML and HTML. For further information
+ go to <fo:basic-link external-destination="normal.pdf">normal.pdf</fo:basic-link>
+ </fo:block>
+
+ <!-- Normal text -->
+ <fo:block text-align="center">---</fo:block>
+
+ <!-- Normal text -->
+ <fo:block text-align="center">
+ 4. A multiline text (text-align='centered'). The Extensible Markup Language (XML) is a subset of SGML that is completely described in this document. Its goal is to
+ enable generic SGML to be served, received, and processed on the Web in the way that is now possible with HTML. XML
+ has been designed for ease of implementation and for interoperability with both SGML and HTML. For further information
+ go to <fo:basic-link external-destination="normal.pdf">normal.pdf</fo:basic-link>
+ </fo:block>
+
+ <!-- Normal text -->
+ <fo:block text-align="center">---</fo:block>
+
+ <!-- Normal text -->
+ <fo:block text-align="end">
+ 5. A multiline text (text-align='end'). The Extensible Markup Language (XML) is a subset of SGML that is completely described in this document. Its goal is to
+ enable generic SGML to be served, received, and processed on the Web in the way that is now possible with HTML. XML
+ has been designed for ease of implementation and for interoperability with both SGML and HTML. For further information
+ go to <fo:basic-link external-destination="normal.pdf">normal.pdf</fo:basic-link>
+ </fo:block>
+
+ <!-- Normal text -->
+ <fo:block text-align="center">---</fo:block>
+
+ <!-- Normal text -->
+ <fo:block text-align="justify" hyphenate="true" language="en">
+ 6. A multiline text (text-align='justify'). The Extensible Markup Language (XML) is a subset of SGML that is completely described in this document. Its goal is to
+ enable generic SGML to be served, received, and processed on the Web in the way that is now possible with HTML. XML
+ has been designed for ease of implementation and for interoperability with both SGML and HTML. For further information
+ go to <fo:basic-link external-destination="normal.pdf">normal.pdf</fo:basic-link>
+ </fo:block>
+
+ <!-- Normal text -->
+ <fo:block text-align="center">---</fo:block>
+
+ <!-- Normal text -->
+ <fo:block text-align="start"
+ space-before.optimum="6pt"
+ line-height="24pt"
+ font-family="serif"
+ padding-top="3pt"
+ >
+ 7. A multiline text (text-align='start', space-before.optimum=6pt, font-family=serif padding-top="3pt"). The Extensible Markup Language (XML) is a subset of SGML that is completely described in this document. Its goal is to
+ enable <fo:basic-link external-destination="normal.pdf">generic</fo:basic-link> SGML to be served, received, and processed on the Web in the way that is now possible with HTML. XML
+ has been designed for ease of implementation and for interoperability with both SGML and HTML. For further information
+ go to <fo:basic-link external-destination="normal.pdf">normal.pdf</fo:basic-link>
+ </fo:block>
+
+ <!-- Normal text -->
+ <fo:block text-align="start"
+ space-before.optimum="6pt"
+ line-height="24pt"
+ font-family="serif"
+ padding-top="3pt"
+ >
+ 8. A multiline text (text-align='start', space-before.optimum=6pt, font-family=serif, padding-top="3pt"). The Extensible Markup Language (XML) is a subset of SGML that is completely described in this document. Its goal is to
+ enable <fo:basic-link external-destination="normal.pdf">generic</fo:basic-link> SGML to be served, received, and processed on the Web in the way that is now possible with HTML. XML
+ has been designed for ease of implementation and for interoperability with both SGML and HTML. For further information
+ go to <fo:basic-link external-destination="normal.pdf">normal.pdf</fo:basic-link>
+ </fo:block>
+
+ <!-- Normal text -->
+ <fo:block text-align="start"
+ space-before.optimum="6pt"
+ line-height="24pt"
+ font-family="serif"
+ padding-top="3pt"
+ >
+ 9. Linking to a specific page of an external:
+ <fo:basic-link external-destination="extensive.pdf#page=1">extensive.pdf, Page 2</fo:basic-link>.
+ </fo:block>
+
+ <!-- Normal text -->
<!-- <fo:block text-align="start"
- space-before.optimum="6pt"
- line-height="24pt"
- font-family="serif"
- padding-top="3pt"
- >
- 8. A multiline text (text-align='start', space-before.optimum=6pt, font-family=serif, padding-top="3pt"). The Extensible Markup Language (XML) is a subset of SGML that is completely described in this document. Its goal is to
- enable <fo:basic-link external-destination="normal.pdf">generic</fo:basic-link> SGML to be served, received, and processed on the Web in the way that is now possible with HTML. XML
- has been designed for ease of implementation and for interoperability with both SGML and HTML. For further information
- go to <fo:basic-link external-destination="normal.pdf">normal.pdf</fo:basic-link>
- </fo:block>
+ space-before.optimum="6pt"
+ line-height="24pt"
+ font-family="serif"
+ padding-top="3pt"
+ >
+ 8. A multiline text (text-align='start', space-before.optimum=6pt, font-family=serif, padding-top="3pt"). The Extensible Markup Language (XML) is a subset of SGML that is completely described in this document. Its goal is to
+ enable <fo:basic-link external-destination="normal.pdf">generic</fo:basic-link> SGML to be served, received, and processed on the Web in the way that is now possible with HTML. XML
+ has been designed for ease of implementation and for interoperability with both SGML and HTML. For further information
+ go to <fo:basic-link external-destination="normal.pdf">normal.pdf</fo:basic-link>
+ </fo:block>
-->
- </fo:flow>
- </fo:page-sequence>
+ </fo:flow>
+ </fo:page-sequence>
</fo:root>
<?xml version="1.0" encoding="utf-8"?>
-<!-- example for use of list elements
- At the beginning the page layout is set.
- Below fo:root there is always
+<!-- example for use of list elements
+ At the beginning the page layout is set.
+ Below fo:root there is always
- a single fo:layout-master-set which defines one or more page layouts
-- an optional fo:declarations
-- and a sequence of one or more fo:page-sequences containing the text and formatting instructions
+- an optional fo:declarations
+- and a sequence of one or more fo:page-sequences containing the text and formatting instructions
-->
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set>
- <!-- fo:layout-master-set defines in its children the page layout:
+ <!-- fo:layout-master-set defines in its children the page layout:
the pagination and layout specifications
- - page-masters: have the role of describing the intended subdivisions
- of a page and the geometry of these subdivisions
- In this case there is only a simple-page-master which defines the
+ - page-masters: have the role of describing the intended subdivisions
+ of a page and the geometry of these subdivisions
+ In this case there is only a simple-page-master which defines the
layout for all pages of the text
-->
<!-- layout information -->
<fo:simple-page-master master-name="simple"
- page-height="29.7cm"
+ page-height="29.7cm"
page-width="21cm"
- margin-top="2cm"
- margin-bottom="2cm"
- margin-left="2.5cm"
+ margin-top="2cm"
+ margin-bottom="2cm"
+ margin-left="2.5cm"
margin-right="2.5cm">
<fo:region-body margin-top="0cm"/>
<fo:region-before extent="2cm"/>
<!-- start page-sequence
here comes the text (contained in flow objects)
- the page-sequence can contain different fo:flows
+ the page-sequence can contain different fo:flows
the attribute value of master-name refers to the page layout
which is to be used to layout the text contained in this
page-sequence-->
<fo:page-sequence master-reference="simple">
<!-- start fo:flow
- each flow is targeted
+ each flow is targeted
at one (and only one) of the following:
xsl-region-body (usually: normal text)
xsl-region-before (usually: header)
xsl-region-after (usually: footer)
- xsl-region-start (usually: left margin)
+ xsl-region-start (usually: left margin)
xsl-region-end (usually: right margin)
- ['usually' applies here to languages with left-right and top-down
+ ['usually' applies here to languages with left-right and top-down
writing direction like English]
in this case there is only one target: xsl-region-body
-->
font-family and size, line-heigth etc. -->
<!-- this defines a title level 1-->
- <fo:block font-size="18pt"
- font-family="sans-serif"
+ <fo:block font-size="18pt"
+ font-family="sans-serif"
line-height="24pt"
space-after.optimum="15pt"
background-color="blue"
</fo:block>
<!-- this defines a title level 2-->
- <fo:block font-size="16pt"
- font-family="sans-serif"
+ <fo:block font-size="16pt"
+ font-family="sans-serif"
space-after.optimum="15pt"
text-align="center">
A simple list with bullets in list-item-label
<!-- list -->
<fo:list-block >
-
+
<!-- list item -->
<fo:list-item>
<!-- insert a bullet -->
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<!-- end list -->
<!-- code -->
- <fo:block font-size="10pt"
- font-family="Courier"
+ <fo:block font-size="10pt"
+ font-family="Courier"
line-height="10pt"
text-align="start"
space-before.optimum="3cm"
- white-space-collapse="false"
+ white-space-collapse="false"
linefeed-treatment="preserve"
white-space-treatment="preserve"
wrap-option="no-wrap">
</fo:list-item-body>
</fo:list-item>
- [other list items...]
+ [other list items...]
</fo:list-block>
<!-- end list -->
]]>
-</fo:block>
+</fo:block>
<!-- code ends -->
<!-- this defines a title level 2-->
- <fo:block font-size="16pt"
- font-family="sans-serif"
+ <fo:block font-size="16pt"
+ font-family="sans-serif"
space-after.optimum="15pt"
text-align="center"
break-before="page">
Doing it better
</fo:block>
- <fo:block font-size="12pt"
+ <fo:block font-size="12pt"
font-family="sans-serif"
space-before.optimum="15pt">
- The distance between the bullets and the list text in the example on the
- previous page is too large. You can define this distance and some more. Here is
+ The distance between the bullets and the list text in the example on the
+ previous page is too large. You can define this distance and some more. Here is
an overview how to specify what aspects of a list
</fo:block>
<!-- the following image is taken from the w3c xsl working draft 18 October 2000
authors: Sharon Adler, Anders Berglund, Jeff Caruso, Stephen Deach
- Paul Grosso, Eduardo Gutentag, Alex Milowski, Scott Parnell,
+ Paul Grosso, Eduardo Gutentag, Alex Milowski, Scott Parnell,
Jeremy Richman, Steve Zilles
url: http://www.w3.org/TR/xsl/ -->
<fo:block text-align="center"
space-before.optimum="0.5cm">
<fo:external-graphic src="file:../../graphics/listgeometry.gif"/>
</fo:block>
- <fo:block font-size="10pt"
+ <fo:block font-size="10pt"
font-family="sans-serif"
text-align="center"
space-after.optimum="15pt">
image from the w3c xsl working draft 18.10.2000 (full info in list2.fo)
</fo:block>
- <fo:block font-size="12pt"
+ <fo:block font-size="12pt"
font-family="sans-serif"
space-before.optimum="15pt">
- This is the same list with a defined provisional-distance-between-starts (0.3cm) and
+ This is the same list with a defined provisional-distance-between-starts (0.3cm) and
provisional-label-separation (0.15cm).
</fo:block>
<!-- list start -->
- <!-- use provisional-distance-between-starts to define
- the distance between the start of the label and the item text
-
+ <!-- use provisional-distance-between-starts to define
+ the distance between the start of the label and the item text
+
use provisional-label-separation to define the distance between
the end of the item label and the start of item text
-->
<fo:list-block provisional-distance-between-starts="0.3cm"
provisional-label-separation="0.15cm">
-
+
<!-- list item -->
<fo:list-item>
<!-- insert a bullet -->
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-size="10pt" font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-size="10pt" font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-size="10pt" font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<!-- end list -->
<!-- code -->
- <fo:block font-size="10pt"
- font-family="Courier"
+ <fo:block font-size="10pt"
+ font-family="Courier"
line-height="10pt"
text-align="start"
space-before.optimum="0.7cm"
- white-space-collapse="false"
+ white-space-collapse="false"
white-space-treatment="preserve"
linefeed-treatment="preserve"
wrap-option="no-wrap">
<!-- ***************************** Next page ************************ -->
<!-- this defines a title level 2-->
- <fo:block font-size="16pt"
- font-family="sans-serif"
+ <fo:block font-size="16pt"
+ font-family="sans-serif"
space-after.optimum="15pt"
text-align="center"
break-before="page">
- A simple list with text before and after
+ A simple list with text before and after
</fo:block>
<!-- this defines normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="15pt"
text-align="start"
>
- This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
- This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
+ This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
+ This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
</fo:block>
<!-- list -->
<fo:list-block provisional-distance-between-starts="0.3cm"
provisional-label-separation="0.15cm">
-
+
<!-- list item -->
<fo:list-item>
<!-- insert a bullet -->
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<!-- end list -->
<!-- this defines normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="15pt"
space-after.optimum="3pt"
text-align="start"
>
- This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
- This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
+ This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
+ This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
</fo:block>
<!-- normal text ends -->
<!-- ***************************** Next page ************************ -->
<!-- this defines a title level 2-->
- <fo:block font-size="16pt"
- font-family="sans-serif"
+ <fo:block font-size="16pt"
+ font-family="sans-serif"
space-after.optimum="15pt"
text-align="center"
break-before="page">
- A list with longer text
+ A list with longer text
</fo:block>
<!-- list -->
<fo:list-block provisional-distance-between-starts="0.3cm"
provisional-label-separation="0.15cm">
-
+
<!-- list item -->
<fo:list-item>
<!-- insert a bullet -->
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
- here is text in the list item body. here is text in the list item body.
- here is text in the list item body. here is text in the list item body.
- here is text in the list item body. here is text in the list item body.
- here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
- here is text in the list item body. here is text in the list item body.
- here is text in the list item body. here is text in the list item body.
- here is text in the list item body. here is text in the list item body.
- here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
- here is text in the list item body. here is text in the list item body.
- here is text in the list item body. here is text in the list item body.
- here is text in the list item body. here is text in the list item body.
- here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
- here is text in the list item body. here is text in the list item body.
- here is text in the list item body. here is text in the list item body.
- here is text in the list item body. here is text in the list item body.
- here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
- here is text in the list item body. here is text in the list item body.
- here is text in the list item body. here is text in the list item body.
- here is text in the list item body. here is text in the list item body.
- here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<!-- ***************************** Next page ************************ -->
<!-- this defines a title level 2-->
- <fo:block font-size="16pt"
- font-family="sans-serif"
+ <fo:block font-size="16pt"
+ font-family="sans-serif"
space-after.optimum="15pt"
text-align="center"
break-before="page">
</fo:block>
<!-- this defines normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="15pt"
text-align="start"
>
- This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
- This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
+ This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
+ This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
</fo:block>
<!-- list -->
<fo:list-item-label end-indent="label-end()">
<fo:block text-align="end">label 1)</fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block text-align="end">lab. 2)</fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block text-align="end">lab. 3)</fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block text-align="end">lab. 4)</fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block text-align="end">lab. 5)</fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<!-- end list -->
<!-- this defines normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="15pt"
space-after.optimum="3pt"
text-align="start"
>
- This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
- This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
+ This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
+ This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
</fo:block>
<!-- normal text ends -->
<!-- ***************************** Next page ************************ -->
<!-- this defines a title level 2-->
- <fo:block font-size="16pt"
- font-family="sans-serif"
+ <fo:block font-size="16pt"
+ font-family="sans-serif"
line-height="20pt"
space-after.optimum="15pt"
text-align="center"
padding-top="3pt"
break-before="page">
- A long list
+ A long list
</fo:block>
<!-- list -->
<fo:list-block provisional-distance-between-starts="0.3cm"
provisional-label-separation="0.15cm">
-
+
<!-- list item -->
<fo:list-item>
<!-- insert a bullet -->
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block>
here is text in the list item body
<!-- ***************************** Next page ************************ -->
<!-- this defines a title level 2-->
- <fo:block font-size="16pt"
- font-family="sans-serif"
+ <fo:block font-size="16pt"
+ font-family="sans-serif"
space-after.optimum="15pt"
text-align="center"
break-before="page">
- A nested list with justified text
+ A nested list with justified text
</fo:block>
<!-- this defines normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="15pt"
text-align="justify"
>
- This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
- This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
+ This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
+ This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
</fo:block>
<!-- list level 1 -->
<fo:list-block provisional-distance-between-starts="0.4cm"
provisional-label-separation="0.15cm">
-
+
<!-- list item -->
<fo:list-item start-indent="0.5cm">
<!-- insert a bullet -->
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
- here is text in the list item body. here is text in the list item body.
- here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">here comes a nested list with numbers
<fo:list-item-label end-indent="label-end()">
<fo:block text-align="end">1.)</fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
nested list item </fo:block>
<fo:list-item-label end-indent="label-end()">
<fo:block text-align="end">2.)</fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block text-align="end">3.)</fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
nested list item </fo:block>
<fo:list-item-label end-indent="label-end()">
<fo:block text-align="end">4.)</fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block text-align="end">5.)</fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
nested list item </fo:block>
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
- here is text in the list item body. here is text in the list item body.
- here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
- here is text in the list item body. here is text in the list item body.
- here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<!-- end list -->
<!-- this defines normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="15pt"
space-after.optimum="3pt"
text-align="justify"
>
- This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
- This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
+ This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
+ This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
</fo:block>
<!-- normal text ends -->
<!-- ****************************** Next Page ************************* -->
<!-- code -->
- <fo:block font-size="10pt"
- font-family="Courier"
+ <fo:block font-size="10pt"
+ font-family="Courier"
line-height="10pt"
text-align="start"
space-before.optimum="3cm"
- white-space-collapse="false"
+ white-space-collapse="false"
white-space-treatment="preserve"
linefeed-treatment="preserve"
wrap-option="no-wrap">
<![CDATA[<!-- list level 1 -->
<fo:list-block provisional-distance-between-starts="0.4cm"
provisional-label-separation="0.15cm">
-
+
<!-- list item -->
<fo:list-item start-indent="0.5cm">
<!-- insert a bullet -->
<!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
- here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
here is text in the list item body. here is text in the list item body.
</fo:block>
</fo:list-item-body>
<!-- end list -->
]]>
-</fo:block>
+</fo:block>
<!-- ***************************** Next page ************************ -->
<!-- this defines a title level 2-->
- <fo:block font-size="16pt"
- font-family="sans-serif"
+ <fo:block font-size="16pt"
+ font-family="sans-serif"
space-after.optimum="15pt"
text-align="center"
break-before="page"
white-space-collapse="true">
- A long nested list
+ A long nested list
</fo:block>
<!-- this defines normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="15pt"
text-align="justify"
>
- This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
- This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
+ This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
+ This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
</fo:block>
<!-- list level 1 -->
<fo:list-block provisional-distance-between-starts="0.4cm"
provisional-label-separation="0.15cm">
-
+
<!-- list item -->
<fo:list-item start-indent="0.5cm">
<!-- insert a bullet -->
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
- here is text in the list item body. here is text in the list item body.
- here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
- here is text in the list item body. here is text in the list item body.
- here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
- here is text in the list item body. here is text in the list item body.
- here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
- here is text in the list item body. here is text in the list item body.
- here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
- here is text in the list item body. here is text in the list item body.
- here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
- here is text in the list item body. here is text in the list item body.
- here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">here comes a nested list with numbers
<fo:list-item-label end-indent="label-end()">
<fo:block text-align="end">1.)</fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
nested list item </fo:block>
<fo:list-item-label end-indent="label-end()">
<fo:block text-align="end">2.)</fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block text-align="end">3.)</fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
nested list item </fo:block>
<fo:list-item-label end-indent="label-end()">
<fo:block text-align="end">4.)</fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block text-align="end">5.)</fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
nested list item </fo:block>
<fo:list-item-label end-indent="label-end()">
<fo:block text-align="end">6.)</fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block text-align="end">7.)</fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block text-align="end">8.)</fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block text-align="end">9.)</fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block text-align="end">10.)</fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block text-align="end">11.)</fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block text-align="end">12.)</fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block text-align="end">13.)</fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block text-align="end">14.)</fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block text-align="end">15.)</fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block text-align="end">16.)</fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block text-align="end">17.)</fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
- nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
+ nested list item with more text. nested list item with more text.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
- here is text in the list item body. here is text in the list item body.
- here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
here is text in the list item body
<fo:list-item-label end-indent="label-end()">
<fo:block><fo:inline font-family="Symbol">•</fo:inline></fo:block>
</fo:list-item-label>
- <!-- list text -->
+ <!-- list text -->
<fo:list-item-body start-indent="body-start()">
<fo:block text-align="justify">
- here is text in the list item body. here is text in the list item body.
- here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
+ here is text in the list item body. here is text in the list item body.
</fo:block>
</fo:list-item-body>
</fo:list-item>
<!-- this defines normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="15pt"
space-after.optimum="3pt"
text-align="justify"
>
- This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
- This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
+ This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
+ This is normal text. This is normal text. This is normal text. This is normal text. This is normal text.
</fo:block>
<!-- normal text ends -->
<!-- layout for the first page -->
<fo:simple-page-master master-name="first"
- margin-top="1in"
- margin-bottom="1in"
- margin-left="1in"
+ margin-top="1in"
+ margin-bottom="1in"
+ margin-left="1in"
margin-right="1in">
<fo:region-body margin-top="2.5cm" margin-bottom="1.5cm"/>
<fo:region-before extent="2.5cm"/>
the case of XT) SAX events.
</fo:block>
- <fo:block space-after.optimum="12pt" font-family="serif">FOP is part of Apache's XML project. The homepage of FOP is
+ <fo:block space-after.optimum="12pt" font-family="serif">FOP is part of Apache's XML project. The homepage of FOP is
<fo:inline font-style="italic" font-family="serif"><fo:basic-link color="blue" external-destination="http://xml.apache.org/fop">http://xml.apache.org/fop</fo:basic-link></fo:inline>
</fo:block>
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
- <fo:layout-master-set>
- <!-- fo:layout-master-set defines in its children the page layout:
- the pagination and layout specifications
- - page-masters: have the role of describing the intended subdivisions
- of a page and the geometry of these subdivisions
- - page-sequence-masters: have the role of describing the sequence
- of page-masters that will be used to generate
- pages during the formatting of an fo:page-sequence
-
- -->
-
- <!-- layout for the first page -->
- <fo:simple-page-master master-name="first"
- page-height="21cm"
- page-width="29.7cm"
- margin-top="1cm"
- margin-bottom="2cm"
- margin-left="2.5cm"
- margin-right="2.5cm">
- <fo:region-body margin-top="3cm"/>
- <fo:region-before extent="3cm"/>
- <fo:region-after extent="1.5cm"/>
- </fo:simple-page-master>
-
- <!-- layout for the other pages -->
- <fo:simple-page-master master-name="rest"
- page-height="29.7cm"
- page-width="21cm"
- margin-top="1cm"
- margin-bottom="2cm"
- margin-left="2.5cm"
- margin-right="2.5cm">
- <fo:region-body margin-top="2.5cm"/>
- <fo:region-before extent="2.5cm"/>
- <fo:region-after extent="1.5cm"/>
- </fo:simple-page-master>
+ <fo:layout-master-set>
+ <!-- fo:layout-master-set defines in its children the page layout:
+ the pagination and layout specifications
+ - page-masters: have the role of describing the intended subdivisions
+ of a page and the geometry of these subdivisions
+ - page-sequence-masters: have the role of describing the sequence
+ of page-masters that will be used to generate
+ pages during the formatting of an fo:page-sequence
+
+ -->
+
+ <!-- layout for the first page -->
+ <fo:simple-page-master master-name="first"
+ page-height="21cm"
+ page-width="29.7cm"
+ margin-top="1cm"
+ margin-bottom="2cm"
+ margin-left="2.5cm"
+ margin-right="2.5cm">
+ <fo:region-body margin-top="3cm"/>
+ <fo:region-before extent="3cm"/>
+ <fo:region-after extent="1.5cm"/>
+ </fo:simple-page-master>
+
+ <!-- layout for the other pages -->
+ <fo:simple-page-master master-name="rest"
+ page-height="29.7cm"
+ page-width="21cm"
+ margin-top="1cm"
+ margin-bottom="2cm"
+ margin-left="2.5cm"
+ margin-right="2.5cm">
+ <fo:region-body margin-top="2.5cm"/>
+ <fo:region-before extent="2.5cm"/>
+ <fo:region-after extent="1.5cm"/>
+ </fo:simple-page-master>
<fo:page-sequence-master master-name="basicPSM" >
- <fo:repeatable-page-master-alternatives>
- <fo:conditional-page-master-reference master-reference="first"
- page-position="first" />
- <fo:conditional-page-master-reference master-reference="rest"
- page-position="rest" />
- <!-- recommended fallback procedure -->
- <fo:conditional-page-master-reference master-reference="rest" />
- </fo:repeatable-page-master-alternatives>
+ <fo:repeatable-page-master-alternatives>
+ <fo:conditional-page-master-reference master-reference="first"
+ page-position="first" />
+ <fo:conditional-page-master-reference master-reference="rest"
+ page-position="rest" />
+ <!-- recommended fallback procedure -->
+ <fo:conditional-page-master-reference master-reference="rest" />
+ </fo:repeatable-page-master-alternatives>
</fo:page-sequence-master>
- </fo:layout-master-set>
- <!-- end: defines page layout -->
-
- <!-- actual layout -->
- <fo:page-sequence master-reference="basicPSM">
-
- <!-- header -->
- <fo:static-content flow-name="xsl-region-before">
- <fo:block text-align="end"
- font-size="10pt"
- font-family="serif"
- line-height="14pt" >
- XML Recommendation - p. <fo:page-number/>
- </fo:block>
- </fo:static-content>
-
- <fo:flow flow-name="xsl-region-body">
-
- <!-- defines text title level 1-->
- <fo:block font-size="18pt"
- font-family="sans-serif"
- line-height="24pt"
- space-after.optimum="15pt"
- background-color="blue"
- color="white"
- text-align="center"
- padding-top="3pt"
- font-variant="small-caps">
- Extensible Markup Language (XML) 1.0
- </fo:block>
-
- <!-- defines text title level 2-->
- <fo:block font-size="16pt"
- font-family="sans-serif"
- line-height="20pt"
- space-before.optimum="10pt"
- space-after.optimum="10pt"
- text-align="start"
- padding-top="3pt">
- Abstract
- </fo:block>
-
- <!-- Normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
- line-height="15pt"
- space-after.optimum="3pt"
- text-align="start">
- The <fo:inline font-variant="small-caps">Extensible Markup Language (XML)</fo:inline> is a subset of SGML that is completely described in this document. Its goal is to
- enable generic SGML to be served, received, and processed on the Web in the way that is now possible with HTML. XML
- has been designed for ease of implementation and for interoperability with both SGML and HTML.
- </fo:block>
-
- <!-- defines text title level 2-->
- <fo:block font-size="16pt"
- font-family="sans-serif"
- line-height="20pt"
- space-before.optimum="10pt"
- space-after.optimum="10pt"
- text-align="start"
- padding-top="3pt">
- Status of this document
- </fo:block>
-
- <!-- Normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
- line-height="15pt"
- space-after.optimum="3pt"
- text-align="start">
- This document has been reviewed by W3C Members and other interested parties and has been endorsed by the Director as a
- W3C Recommendation. It is a stable document and may be used as reference material or cited as a normative reference from
- another document. W3C's role in making the Recommendation is to draw attention to the specification and to promote its
- widespread deployment. This enhances the functionality and interoperability of the Web.
- </fo:block>
-
- <!-- Normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
- line-height="15pt"
- space-after.optimum="3pt"
- text-align="start">
- This document specifies a syntax created by subsetting an existing, widely used international text processing standard
- (Standard Generalized Markup Language, ISO 8879:1986(E) as amended and corrected) for use on the World Wide Web. It
- is a product of the W3C XML Activity, details of which can be found at http://www.w3.org/XML. A list of current W3C
- Recommendations and other technical documents can be found at http://www.w3.org/TR.
- </fo:block>
- </fo:flow>
- </fo:page-sequence>
+ </fo:layout-master-set>
+ <!-- end: defines page layout -->
+
+ <!-- actual layout -->
+ <fo:page-sequence master-reference="basicPSM">
+
+ <!-- header -->
+ <fo:static-content flow-name="xsl-region-before">
+ <fo:block text-align="end"
+ font-size="10pt"
+ font-family="serif"
+ line-height="14pt" >
+ XML Recommendation - p. <fo:page-number/>
+ </fo:block>
+ </fo:static-content>
+
+ <fo:flow flow-name="xsl-region-body">
+
+ <!-- defines text title level 1-->
+ <fo:block font-size="18pt"
+ font-family="sans-serif"
+ line-height="24pt"
+ space-after.optimum="15pt"
+ background-color="blue"
+ color="white"
+ text-align="center"
+ padding-top="3pt"
+ font-variant="small-caps">
+ Extensible Markup Language (XML) 1.0
+ </fo:block>
+
+ <!-- defines text title level 2-->
+ <fo:block font-size="16pt"
+ font-family="sans-serif"
+ line-height="20pt"
+ space-before.optimum="10pt"
+ space-after.optimum="10pt"
+ text-align="start"
+ padding-top="3pt">
+ Abstract
+ </fo:block>
+
+ <!-- Normal text -->
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
+ line-height="15pt"
+ space-after.optimum="3pt"
+ text-align="start">
+ The <fo:inline font-variant="small-caps">Extensible Markup Language (XML)</fo:inline> is a subset of SGML that is completely described in this document. Its goal is to
+ enable generic SGML to be served, received, and processed on the Web in the way that is now possible with HTML. XML
+ has been designed for ease of implementation and for interoperability with both SGML and HTML.
+ </fo:block>
+
+ <!-- defines text title level 2-->
+ <fo:block font-size="16pt"
+ font-family="sans-serif"
+ line-height="20pt"
+ space-before.optimum="10pt"
+ space-after.optimum="10pt"
+ text-align="start"
+ padding-top="3pt">
+ Status of this document
+ </fo:block>
+
+ <!-- Normal text -->
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
+ line-height="15pt"
+ space-after.optimum="3pt"
+ text-align="start">
+ This document has been reviewed by W3C Members and other interested parties and has been endorsed by the Director as a
+ W3C Recommendation. It is a stable document and may be used as reference material or cited as a normative reference from
+ another document. W3C's role in making the Recommendation is to draw attention to the specification and to promote its
+ widespread deployment. This enhances the functionality and interoperability of the Web.
+ </fo:block>
+
+ <!-- Normal text -->
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
+ line-height="15pt"
+ space-after.optimum="3pt"
+ text-align="start">
+ This document specifies a syntax created by subsetting an existing, widely used international text processing standard
+ (Standard Generalized Markup Language, ISO 8879:1986(E) as amended and corrected) for use on the World Wide Web. It
+ is a product of the W3C XML Activity, details of which can be found at http://www.w3.org/XML. A list of current W3C
+ Recommendations and other technical documents can be found at http://www.w3.org/TR.
+ </fo:block>
+ </fo:flow>
+ </fo:page-sequence>
</fo:root>
<?xml version="1.0" encoding="utf-8"?>
-<!-- example for a simple fo file. At the beginning the page layout is set.
-Below fo:root there is always
+<!-- example for a simple fo file. At the beginning the page layout is set.
+Below fo:root there is always
- a single fo:layout-master-set which defines one or more page layouts
- an optional fo:declarations,
- and a sequence of one or more fo:page-sequences containing the text and formatting instructions -->
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set>
- <!-- fo:layout-master-set defines in its children the page layout:
+ <!-- fo:layout-master-set defines in its children the page layout:
the pagination and layout specifications
- - page-masters: have the role of describing the intended subdivisions
- of a page and the geometry of these subdivisions
- - page-sequence-masters: have the role of describing the sequence
- of page-masters that will be used to generate
- pages during the formatting of an fo:page-sequence
+ - page-masters: have the role of describing the intended subdivisions
+ of a page and the geometry of these subdivisions
+ - page-sequence-masters: have the role of describing the sequence
+ of page-masters that will be used to generate
+ pages during the formatting of an fo:page-sequence
-->
<!-- layout for the first page -->
<fo:simple-page-master master-name="first"
- page-height="21cm"
+ page-height="21cm"
page-width="29.7cm"
margin-top="6.3cm - 3.8cm - 1.5cm"
- margin-bottom="3cm - (.25cm * 4)"
+ margin-bottom="3cm - (.25cm * 4)"
margin-left="2.0cm + 0.5cm"
margin-right="(5cm * 1cm) div 2cm">
<fo:region-body margin-top="3cm"/>
<fo:simple-page-master master-name="rest"
page-height="abs(-30cm + .3cm)"
page-width="(10cm * 2) + 1cm"
- margin-top="round(.5) * 1cm"
+ margin-top="round(.5) * 1cm"
margin-bottom="round(2.4) * 1cm"
- margin-left="2.5 * 1cm"
+ margin-left="2.5 * 1cm"
margin-right="5.5cm - 3cm">
<fo:region-body margin-top="2.5cm"/>
<fo:region-before extent="2.5cm"/>
</fo:simple-page-master>
<fo:page-sequence-master master-name="basicPSM" >
- <fo:repeatable-page-master-alternatives>
- <fo:conditional-page-master-reference master-reference="first"
- page-position="first" />
- <fo:conditional-page-master-reference master-reference="rest"
- page-position="rest" />
- <!-- recommended fallback procedure -->
- <fo:conditional-page-master-reference master-reference="rest" />
- </fo:repeatable-page-master-alternatives>
+ <fo:repeatable-page-master-alternatives>
+ <fo:conditional-page-master-reference master-reference="first"
+ page-position="first" />
+ <fo:conditional-page-master-reference master-reference="rest"
+ page-position="rest" />
+ <!-- recommended fallback procedure -->
+ <fo:conditional-page-master-reference master-reference="rest" />
+ </fo:repeatable-page-master-alternatives>
</fo:page-sequence-master>
</fo:layout-master-set>
<!-- header -->
<fo:static-content flow-name="xsl-region-before">
- <fo:block text-align="end"
- font-size="10pt"
- font-family="serif"
+ <fo:block text-align="end"
+ font-size="10pt"
+ font-family="serif"
line-height="1em + 4pt" >
XML Recommendation - p. <fo:page-number/>
</fo:block>
- </fo:static-content>
+ </fo:static-content>
<fo:flow flow-name="xsl-region-body">
<!-- defines text title level 1-->
- <fo:block font-size="min(18pt,20pt)"
- font-family="sans-serif"
+ <fo:block font-size="min(18pt,20pt)"
+ font-family="sans-serif"
line-height="max(24pt,18pt)"
space-after.optimum="5 mod 3 * 7.5pt"
background-color="rgb(0,0,255)"
</fo:block>
<!-- defines text title level 2-->
- <fo:block font-size="floor(16.3) * 1pt"
- font-family="sans-serif"
+ <fo:block font-size="floor(16.3) * 1pt"
+ font-family="sans-serif"
line-height="2pt * ceiling(9.3)"
space-before.optimum="10pt"
space-after.optimum="10pt"
</fo:block>
<!-- Normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="2 * (.5em + 1.5pt)"
space-after.optimum=".25 * 1em"
text-align="start">
</fo:block>
<!-- defines text title level 2-->
- <fo:block font-size="16pt"
- font-family="sans-serif"
+ <fo:block font-size="16pt"
+ font-family="sans-serif"
line-height="1.25"
space-before.optimum="10pt"
space-after.optimum="10pt"
</fo:block>
<!-- Normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="15pt"
space-after.optimum="3pt"
text-align="start">
</fo:block>
<!-- Normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="1.25em"
space-after.optimum="1pc div 4"
text-align="start">
This document specifies a syntax created by subsetting an existing, widely used international text processing standard
(Standard Generalized Markup Language, ISO 8879:1986(E) as amended and corrected) for use on the World Wide Web. It
is a product of the W3C XML Activity, details of which can be found at http://www.w3.org/XML. A list of current W3C
- Recommendations and other technical documents can be found at http://www.w3.org/TR.
+ Recommendations and other technical documents can be found at http://www.w3.org/TR.
</fo:block>
</fo:flow>
<?xml version="1.0" encoding="utf-8"?>
<!--
-THIS IS NOT THE LATEST VERSION OF THE FOP DOCUMENTATION BUT ONLY AN EXAMPLE FILE
+THIS IS NOT THE LATEST VERSION OF THE FOP DOCUMENTATION BUT ONLY AN EXAMPLE FILE
This files shows next to the trivial usage of fo:block and fo:inline examples of
- fo:basic-link external-destination
- fo:basic-link internal-destination
- fo:table
- fo:list-block (including a bullet from the font Symbol as list-item-label)
-- fo:page-number-citation (computes dynamically the page number in section 'content')
+- fo:page-number-citation (computes dynamically the page number in section 'content')
-->
<!-- note the extensions namespace (fox) -->
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"
- xmlns:fox="http://xml.apache.org/fop/extensions">
+ xmlns:fox="http://xml.apache.org/fop/extensions">
<fo:layout-master-set>
<!-- layout for the first page -->
<fo:simple-page-master master-name="first"
- page-height="29.7cm"
+ page-height="29.7cm"
page-width="21cm"
- margin-top="1cm"
- margin-bottom="2cm"
- margin-left="2.5cm"
+ margin-top="1cm"
+ margin-bottom="2cm"
+ margin-left="2.5cm"
margin-right="2.5cm">
<fo:region-body margin-top="3cm"/>
<fo:region-before extent="3cm"/>
<!-- layout for the other pages -->
<fo:simple-page-master master-name="rest"
- page-height="29.7cm"
+ page-height="29.7cm"
page-width="21cm"
- margin-top="1cm"
- margin-bottom="2cm"
- margin-left="2.5cm"
+ margin-top="1cm"
+ margin-bottom="2cm"
+ margin-left="2.5cm"
margin-right="2.5cm">
<fo:region-body margin-top="2.5cm"/>
<fo:region-before extent="2.5cm"/>
</fo:simple-page-master>
<fo:page-sequence-master master-name="basicPSM" >
- <fo:repeatable-page-master-alternatives>
- <fo:conditional-page-master-reference master-reference="first"
- page-position="first" />
- <fo:conditional-page-master-reference master-reference="rest"
- page-position="rest" />
- <!-- recommended fallback procedure -->
- <fo:conditional-page-master-reference master-reference="rest" />
- </fo:repeatable-page-master-alternatives>
+ <fo:repeatable-page-master-alternatives>
+ <fo:conditional-page-master-reference master-reference="first"
+ page-position="first" />
+ <fo:conditional-page-master-reference master-reference="rest"
+ page-position="rest" />
+ <!-- recommended fallback procedure -->
+ <fo:conditional-page-master-reference master-reference="rest" />
+ </fo:repeatable-page-master-alternatives>
</fo:page-sequence-master>
</fo:layout-master-set>
<!-- end: defines page layout -->
-<!-- beginning of the PDF outline extensions -->
+<!-- beginning of the PDF outline extensions -->
<fox:bookmarks>
<fox:outline internal-destination="sec1">
-<fo:block id="sec1" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >A)
+<fo:block id="sec1" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >A)
What is FOP?</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">FOP is the world's first print formatter driven by XSL formatting
objects. It is a Java 1.1 application that reads a formatting object
the case of XT) SAX events.
</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">FOP is part of Apache's XML project. The homepage of FOP is
+ <fo:block space-after.optimum="3pt" font-family="serif">FOP is part of Apache's XML project. The homepage of FOP is
<fo:inline font-style="italic" font-family="serif"><fo:basic-link color="blue" external-destination="http://xml.apache.org/fop">http://xml.apache.org/fop</fo:basic-link></fo:inline>
</fo:block>
- <fo:block id="sec2" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >B)
+ <fo:block id="sec2" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >B)
Downloading FOP</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">The latest release version is <fo:inline font-style="italic" font-family="serif">FOP
0.14</fo:inline> <fo:inline font-family="serif">
<fo:block space-after.optimum="3pt" font-family="serif">Documentation can be downloaded here as <fo:inline font-style="italic" font-family="serif">HMTL file</fo:inline>
<fo:inline font-family="serif">
()
- </fo:inline> or
+ </fo:inline> or
as <fo:inline font-style="italic" font-family="serif">PDF file</fo:inline>
<fo:inline font-family="serif">
()
</fo:inline>.</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">To run FOP from the command line, see Running FOP. If you are interested in
+ <fo:block space-after.optimum="3pt" font-family="serif">To run FOP from the command line, see Running FOP. If you are interested in
embedding FOP in a Java application of your own, see Embedding FOP.
</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">You can also download the <fo:inline font-style="italic" font-family="serif">source code v. 0.14</fo:inline>
- <fo:block id="sec3" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >C)
+ <fo:block id="sec3" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >C)
Running FOP</fo:block>
-
+
<fo:block id="sec3-1" font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" >1) Prerequisites</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">Following software must be installed:</fo:block>
<fo:block id="sec3-1-1" space-after.optimum="3pt" font-family="serif">a) Java 1.1.x or later</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">For the fo-file viewer mode of FOP (see below) you must have the swing classes installed.
- From Java 1.2 on (aka Java 2) they are part of the standard java distribution.
+ <fo:block space-after.optimum="3pt" font-family="serif">For the fo-file viewer mode of FOP (see below) you must have the swing classes installed.
+ From Java 1.2 on (aka Java 2) they are part of the standard java distribution.
If you use Java 1.1.x you must seperately include the swing classes, which can
be found at the <fo:inline font-style="italic" font-family="serif">
Sun website</fo:inline>
<fo:inline font-family="serif">
(http://java.sun.com/products/jfc/#download-swing)
- </fo:inline>.
+ </fo:inline>.
</fo:block>
- <fo:block id="sec3-1-2" space-after.optimum="3pt" font-family="serif">b) An XML parser which supports SAX and DOM like
+ <fo:block id="sec3-1-2" space-after.optimum="3pt" font-family="serif">b) An XML parser which supports SAX and DOM like
<fo:inline font-style="italic" font-family="serif">Xerces-J</fo:inline>
<fo:inline font-family="serif">
(http://xml.apache.org/xerces-j/index.html)
</fo:inline>.</fo:block>
- <fo:block id="sec3-1-3" space-after.optimum="3pt" font-family="serif">c) If you have to produce the flow objects files, which are the input for FOP,
- you need a transformation utility to create this files from your xml files.
- Normally this is an XSLT stylesheet processor like
+ <fo:block id="sec3-1-3" space-after.optimum="3pt" font-family="serif">c) If you have to produce the flow objects files, which are the input for FOP,
+ you need a transformation utility to create this files from your xml files.
+ Normally this is an XSLT stylesheet processor like
<fo:inline font-style="italic" font-family="serif">XT</fo:inline>
<fo:inline font-family="serif">
(http://www.jclark.com/xml/xt.html)
- </fo:inline>
+ </fo:inline>
or <fo:inline font-style="italic" font-family="serif">XALAN</fo:inline>
<fo:inline font-family="serif">
(http://xml.apache.org/xalan/index.html)
- </fo:inline>.
+ </fo:inline>.
</fo:block>
-
-
+
+
<fo:block id="sec3-2" font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" >2) Starting FOP as an standalone application</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">There are three ways to run FOP from the command line.</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">a) Batch processing formatting objects (fo) files: </fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">java org.apache.fop.apps.CommandLine xml-file xsl-file pdf-file</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">c) Previewing the fo-file:</fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">java org.apache.fop.apps.AWTCommandLine fo-file</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">Each method uses next to the fop classes other packages. The following describes
+ <fo:block space-after.optimum="3pt" font-family="serif">Each method uses next to the fop classes other packages. The following describes
each method in detail.</fo:block>
-
+
<fo:block font-size="14pt" font-family="serif" line-height="16pt" space-before.optimum="8pt" space-after.optimum="4pt" >a) Method One</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">One is to first use an XSLT engine to produce the formatting object tree as an
+ <fo:block space-after.optimum="3pt" font-family="serif">One is to first use an XSLT engine to produce the formatting object tree as an
XML document and then running the class org.apache.fop.apps.CommandLine with the
- formatting object file name and PDF filename as arguments. You will need to include
- FOP and your XML Parser in your classpath and so you might invoke
+ formatting object file name and PDF filename as arguments. You will need to include
+ FOP and your XML Parser in your classpath and so you might invoke
</fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">java -cp fop_x_xx_x.jar;xerces.jar</fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">org.apache.fop.apps.CommandLine fo-file pdf-file</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">If your SAX Parser is other than Xerces, you will need to set the property
- org.xml.sax.parser to the SAX Parser class to use. The following example shows
- the command line, if you use XP, the XML parser from James Clark:
+ <fo:block space-after.optimum="3pt" font-family="serif">If your SAX Parser is other than Xerces, you will need to set the property
+ org.xml.sax.parser to the SAX Parser class to use. The following example shows
+ the command line, if you use XP, the XML parser from James Clark:
</fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">java -Dorg.xml.sax.parser=com.jclark.xml.sax.Driver</fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">-cp fop_x_xx_x.jar;sax.jar;xt.jar;xp.jar;xerces.jar</fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">org.apache.fop.apps.AWTCommandLine formatting-tree-file pdf-file</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">(You have to include xerces.jar or another xml parser which supports DOM in your classpath.) </fo:block>
-
-
+
+
<fo:block font-size="14pt" font-family="serif" line-height="16pt" space-before.optimum="8pt" space-after.optimum="4pt" >b) Method Two</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">Rather than performing transformation with an XSLT before invoking FOP, it is
- possible, if you use XT as your XSLT engine, to just call FOP and have it call
- XT for you. To do this, run the class org.apache.fop.apps.CommandLine with the
- source XML file name, XSL file name and PDF file name as arguments. You will
- need to include FOP, SAX, your SAX Parser and XT in your classpath and so you might
- invoke
+ <fo:block space-after.optimum="3pt" font-family="serif">Rather than performing transformation with an XSLT before invoking FOP, it is
+ possible, if you use XT as your XSLT engine, to just call FOP and have it call
+ XT for you. To do this, run the class org.apache.fop.apps.CommandLine with the
+ source XML file name, XSL file name and PDF file name as arguments. You will
+ need to include FOP, SAX, your SAX Parser and XT in your classpath and so you might
+ invoke
</fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">java -Dorg.xml.sax.parser=com.jclark.xml.sax.Driver</fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">-cp fop_x_xx_x.jar;xt.jar;xerces.jar</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">Again, if your SAX Parser is other than Xerces, you will need to set the property
org.xml.sax.parser to the SAX Parser class to use.
</fo:block>
-
-
+
+
<fo:block font-size="14pt" font-family="serif" line-height="16pt" space-before.optimum="8pt" space-after.optimum="4pt" >c) Method Three</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">If you already produced the FO file, you can preview the results of your
- transformation without using any pdf viewer by invoking FOP with the viewer
- application. You will need to include FOP and your XML Parser in your classpath
+ <fo:block space-after.optimum="3pt" font-family="serif">If you already produced the FO file, you can preview the results of your
+ transformation without using any pdf viewer by invoking FOP with the viewer
+ application. You will need to include FOP and your XML Parser in your classpath
</fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">java -cp fop_x_xx_x.jar;xerces.jar</fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">org.apache.fop.apps.AWTCommandLine fo-file </fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">The viewer uses the swing classes.</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">Note: If you are using java 2 or later (i.e. jdk 1.2. or later) you can put all
- needed jar files into the subdirectory jdk1.2.x\jre\lib\ext (windows example). Then
- FOP can be started without classpath:
+ <fo:block space-after.optimum="3pt" font-family="serif">The viewer uses the swing classes.</fo:block>
+ <fo:block space-after.optimum="3pt" font-family="serif">Note: If you are using java 2 or later (i.e. jdk 1.2. or later) you can put all
+ needed jar files into the subdirectory jdk1.2.x\jre\lib\ext (windows example). Then
+ FOP can be started without classpath:
</fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">java org.apache.fop.apps.CommandLine fo-file pdf-file</fo:block>
-
-
-
- <fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" >3) Running FOP on MacOS</fo:block>
-
+
+
+
+ <fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" >3) Running FOP on MacOS</fo:block>
+
<fo:block space-after.optimum="3pt" font-family="serif">Ensure that you have a recent MRJ, and that you have downloaded and
unpacked the XP and SAX distributions. The xp.jar and sax.jar files work
as is on MacOS.
</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">Once both are added (the FOP jarfile will already be in the list), click
Run. A "stdout" window will appear and display FOP runtime messages.
- </fo:block>
-
-
+ </fo:block>
+
+
<fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" >4) Problems</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">If you have problems running FOP, please have a look at the
+ <fo:block space-after.optimum="3pt" font-family="serif">If you have problems running FOP, please have a look at the
<fo:inline font-style="italic" font-family="serif">FOP FAQ</fo:inline>
<fo:inline font-family="serif">
(faq.html)
</fo:inline>. If you don't find a solution there,
- you can ask for help on the list fop-dev@xml.apache.org. Maybe it's bug and
- maybe somebody is already working on it.
+ you can ask for help on the list fop-dev@xml.apache.org. Maybe it's bug and
+ maybe somebody is already working on it.
</fo:block>
-
- <fo:block id="sec4" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >D)
+
+ <fo:block id="sec4" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >D)
Embedding FOP </fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">Instantiate org.apache.fop.apps.Driver. Once this class is
+ <fo:block space-after.optimum="3pt" font-family="serif">Instantiate org.apache.fop.apps.Driver. Once this class is
instantiated, methods are called to set the
Renderer to use, the (possibly multiple) ElementMapping(s) to
use and the PrintWriter to use to output the results of the
- <fo:block id="sec5" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >E)
+ <fo:block id="sec5" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >E)
What's Implemented?</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">Also see STATUS for what is being worked on.</fo:block>
-
+
<fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" >1) Formatting Objects</fo:block>
<fo:list-block start-indent="1cm" provisional-distance-between-starts="12pt" font-family="serif">
<fo:list-item>
</fo:list-item-body>
</fo:list-item>
</fo:list-block>
-
-
+
+
<fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" >2) Properties</fo:block>
<fo:list-block start-indent="1cm" provisional-distance-between-starts="12pt" font-family="serif">
<fo:list-item>
</fo:list-item-body>
</fo:list-item>
</fo:list-block>
-
-
- <fo:block id="sec6" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >F)
+
+
+ <fo:block id="sec6" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >F)
Limitations</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">Although FOP implements the above listed fo objects and properties, sometimes it does so
- only in a limited way.
+ <fo:block space-after.optimum="3pt" font-family="serif">Although FOP implements the above listed fo objects and properties, sometimes it does so
+ only in a limited way.
</fo:block>
-
+
<fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" >list-block</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">The fo working draft allows describes two ways to markup lists.The list-block must have as
+ <fo:block space-after.optimum="3pt" font-family="serif">The fo working draft allows describes two ways to markup lists.The list-block must have as
children either: 1) pairs of fo:list-item-label and fo:list-item-body formatting objects, or
2) fo:list-item formatting objects.</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">At the moment FOP only implements the second way. Therefore a list has a basic structure like this:</fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"><fo:list-item-body><fo:block></fo:block></fo:list-item-body></fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"></fo:list-item></fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"></fo:list-block></fo:block>
-
-
+
+
<fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" >Padding</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">Padding works in conjunction with indents and spaces. It is only implemented
+ <fo:block space-after.optimum="3pt" font-family="serif">Padding works in conjunction with indents and spaces. It is only implemented
for blocks. At the moment padding can't be used to make extra space (indents+spaces
must be used), but only to control how much the background-color extends beyond
the content rectangle.
- </fo:block>
-
-
+ </fo:block>
+
+
<fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" >Tables</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">There two limitations for tables: 1) FOP needs you to explicitly specify column widths
+ <fo:block space-after.optimum="3pt" font-family="serif">There two limitations for tables: 1) FOP needs you to explicitly specify column widths
2) Cells have to contain block-level FOs. They can't contain straight character data.
</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">A working basic example of a table looks like this: </fo:block>
+ <fo:block space-after.optimum="3pt" font-family="serif">A working basic example of a table looks like this: </fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"><fo:table></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-column column-width="150pt"/></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-column column-width="150pt"/></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-body font-size="10pt" font-family="sans-serif"></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-row></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-cell></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:block>text</fo:block></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-cell></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-cell></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:block>text</fo:block></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-cell></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-row></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-row></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-cell></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:block>text</fo:block></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-cell></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-cell></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:block>text</fo:block></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-cell></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-row></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-row></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-cell></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:block>text</fo:block></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-cell></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-cell></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:block>text</fo:block></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-cell></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-row></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-body></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-column column-width="150pt"/></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-column column-width="150pt"/></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-body font-size="10pt" font-family="sans-serif"></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-row></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-cell></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:block>text</fo:block></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-cell></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-cell></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:block>text</fo:block></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-cell></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-row></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-row></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-cell></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:block>text</fo:block></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-cell></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-cell></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:block>text</fo:block></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-cell></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-row></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-row></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-cell></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:block>text</fo:block></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-cell></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-cell></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:block>text</fo:block></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-cell></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-row></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-body></fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"></fo:table></fo:block>
-
-
-
- <fo:block id="sec7" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >G)
+
+
+
+ <fo:block id="sec7" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >G)
Bugs</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">see STATUS file</fo:block>
- <fo:block id="sec8" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >H)
+ <fo:block id="sec8" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >H)
Compiling FOP</fo:block>
-
+
<fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" >1. Prerequisites</fo:block>
-
+
<fo:block font-size="14pt" font-family="serif" line-height="16pt" space-before.optimum="8pt" space-after.optimum="4pt" >a) Java 1.1.x or later</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">If you use Java 1.1.x you must also seperately include the swing classes, which can
be found at the <fo:inline font-style="italic" font-family="serif">
Sun website</fo:inline>
<fo:inline font-family="serif">
(http://java.sun.com/products/jfc/#download-swing)
- </fo:inline>. From Java 1.2 on (aka Java 2) they are part of the standard
- distribution.
+ </fo:inline>. From Java 1.2 on (aka Java 2) they are part of the standard
+ distribution.
</fo:block>
-
-
+
+
<fo:block font-size="14pt" font-family="serif" line-height="16pt" space-before.optimum="8pt" space-after.optimum="4pt" >b) An XML parser</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">An XML parser which supports DOM like
+ <fo:block space-after.optimum="3pt" font-family="serif">An XML parser which supports DOM like
<fo:inline font-style="italic" font-family="serif">Xerces-J</fo:inline>
<fo:inline font-family="serif">
(http://xml.apache.org/xerces-j/index.html)
</fo:inline>.</fo:block>
-
-
+
+
<fo:block font-size="14pt" font-family="serif" line-height="16pt" space-before.optimum="8pt" space-after.optimum="4pt" >c) XT from James Clark</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">Some of the Java source code in FOP is generated from XML using
XSLT. XT must be used to generate this code.</fo:block>
generic jar file, otherwise make won't work)
</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">XT relies on an sax parser like XP (also J. Clark), which can be
- downloaded at <fo:inline font-style="italic" font-family="serif">James
+ downloaded at <fo:inline font-style="italic" font-family="serif">James
Clark's Website</fo:inline>
<fo:inline font-family="serif">
(http://www.jclark.com/xml/xp/index.html)
</fo:inline>
</fo:block>
-
-
+
+
<fo:block font-size="14pt" font-family="serif" line-height="16pt" space-before.optimum="8pt" space-after.optimum="4pt" >d) make</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">Under windows it has been reported that the use of the cygnus solutions port
- of the GNU utilities works. You can find it at
+ <fo:block space-after.optimum="3pt" font-family="serif">Under windows it has been reported that the use of the cygnus solutions port
+ of the GNU utilities works. You can find it at
<fo:inline font-style="italic" font-family="serif">Cygnus Solutions</fo:inline>
<fo:inline font-family="serif">
(http://sourceware.cygnus.com/cygwin/)
</fo:inline>
</fo:block>
-
-
-
+
+
+
<fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" >Compiling FOP on MacOS</fo:block>
-
+
<fo:block space-after.optimum="3pt" font-family="serif">We strongly recommend the use of Codewarrior Java. This Readme will
contain a link to more information in the near future.
</fo:block>
-
- <fo:block id="sec9" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >I)
+
+ <fo:block id="sec9" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >I)
Getting involved</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">1. Subscribe to fop-dev@xml.apache.org by sending an email
+ <fo:block space-after.optimum="3pt" font-family="serif">1. Subscribe to fop-dev@xml.apache.org by sending an email
to fop-dev-subscribe@xml.apache.org</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">2. Read the archives to fop-dev to get an idea of the issues being
+ <fo:block space-after.optimum="3pt" font-family="serif">2. Read the archives to fop-dev to get an idea of the issues being
discussed. </fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">3. Subscribe to fop-cvs@xml.apache.org by sending an email to
- fop-cvs-subscribe@xml.apache.org (it is important
+ <fo:block space-after.optimum="3pt" font-family="serif">3. Subscribe to fop-cvs@xml.apache.org by sending an email to
+ fop-cvs-subscribe@xml.apache.org (it is important
that you follow changes being made). </fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">4. Try :-) to wrap your head around the XSL working draft. </fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">5. Get CVS working on your system. </fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">6. Ask, on fop-dev, any questions you have at all about the code, design, etc. </fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">7. When you feel comfortable modifying the code, send diffs to
+ <fo:block space-after.optimum="3pt" font-family="serif">7. When you feel comfortable modifying the code, send diffs to
fop-dev with your contributions. </fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">8. Have fun!</fo:block>
- <fo:block id="sec10" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >J)
+ <fo:block id="sec10" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >J)
FOP Relevant Specifications</fo:block>
<fo:list-block start-indent="1cm" provisional-distance-between-starts="12pt" font-family="serif">
<fo:list-item>
<fo:inline font-style="italic" font-family="serif">XML Recommendation</fo:inline>
<fo:inline font-family="serif" >
(<fo:basic-link color="blue" external-destination="http://www.w3.org/TR/REC-xml">http://www.w3.org/TR/REC-xml</fo:basic-link>)
- </fo:inline>
+ </fo:inline>
</fo:block>
</fo:list-item-body>
</fo:list-item>
- <fo:block id="sec11" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >K)
+ <fo:block id="sec11" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >K)
Licence</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif"> ============================================================================</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif"> The Apache Software License, Version 1.1</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif"> ============================================================================</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif"> Copyright (C) 1999 The Apache Software Foundation. All rights reserved.</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif"> Redistribution and use in source and binary forms, with or without modification,
+ <fo:block space-after.optimum="3pt" font-family="serif"> Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">1. Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
<fo:block space-after.optimum="3pt" font-family="serif">5. Products derived from this software may not be called "Apache", nor may
"Apache" appear in their name, without prior written permission of the
Apache Software Foundation.
- </fo:block>
+ </fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
</fo:block>
-
+
<fo:block space-after.optimum="3pt" font-family="serif">
This software consists of voluntary contributions made by many individuals
on behalf of the Apache Software Foundation and was originally created by
- James Tauber <jtauber@jtauber.com>. For more information on the Apache
+ James Tauber <jtauber@jtauber.com>. For more information on the Apache
Software Foundation, please see <fo:inline font-style="italic" font-family="serif">http://www.apache.org/</fo:inline>
<fo:inline font-family="serif">
(http://www.apache.org/)
<fo:table-body font-size="10pt" font-family="sans-serif">
<fo:table-row line-height="12pt">
<fo:table-cell>
-<fo:block text-align="end">A)
+<fo:block text-align="end">A)
</fo:block>
</fo:table-cell>
<fo:table-cell>
</fo:table-row>
<fo:table-row line-height="12pt">
<fo:table-cell>
-<fo:block text-align="end">B)
+<fo:block text-align="end">B)
</fo:block>
</fo:table-cell>
<fo:table-cell>
</fo:table-row>
<fo:table-row line-height="12pt">
<fo:table-cell>
-<fo:block text-align="end">C)
+<fo:block text-align="end">C)
</fo:block>
</fo:table-cell>
<fo:table-cell>
</fo:table-row>
<fo:table-row line-height="12pt">
<fo:table-cell>
-<fo:block text-align="end">D)
+<fo:block text-align="end">D)
</fo:block>
</fo:table-cell>
<fo:table-cell>
</fo:table-row>
<fo:table-row line-height="12pt">
<fo:table-cell>
-<fo:block text-align="end">E)
+<fo:block text-align="end">E)
</fo:block>
</fo:table-cell>
<fo:table-cell>
</fo:table-row>
<fo:table-row line-height="12pt">
<fo:table-cell>
-<fo:block text-align="end">F)
+<fo:block text-align="end">F)
</fo:block>
</fo:table-cell>
<fo:table-cell>
</fo:table-row>
<fo:table-row line-height="12pt">
<fo:table-cell>
-<fo:block text-align="end">G)
+<fo:block text-align="end">G)
</fo:block>
</fo:table-cell>
<fo:table-cell>
</fo:table-row>
<fo:table-row line-height="12pt">
<fo:table-cell>
-<fo:block text-align="end">H)
+<fo:block text-align="end">H)
</fo:block>
</fo:table-cell>
<fo:table-cell>
</fo:table-row>
<fo:table-row line-height="12pt">
<fo:table-cell>
-<fo:block text-align="end">I)
+<fo:block text-align="end">I)
</fo:block>
</fo:table-cell>
<fo:table-cell>
</fo:table-row>
<fo:table-row line-height="12pt">
<fo:table-cell>
-<fo:block text-align="end">J)
+<fo:block text-align="end">J)
</fo:block>
</fo:table-cell>
<fo:table-cell>
</fo:table-row>
<fo:table-row line-height="12pt">
<fo:table-cell>
-<fo:block text-align="end">K)
+<fo:block text-align="end">K)
</fo:block>
</fo:table-cell>
<fo:table-cell>
<?xml version="1.0" encoding="utf-8"?>
<!--
-THIS IS NOT THE LATEST VERSION OF THE FOP DOCUMENTATION BUT ONLY AN EXAMPLE FILE
+THIS IS NOT THE LATEST VERSION OF THE FOP DOCUMENTATION BUT ONLY AN EXAMPLE FILE
This files shows next to the trivial usage of fo:block and fo:inline examples of
- fo:basic-link external-destination
- fo:basic-link internal-destination
- fo:table
- fo:list-block (including a bullet from the font Symbol as list-item-label)
-- fo:page-number-citation (computes dynamically the page number in section 'content')
+- fo:page-number-citation (computes dynamically the page number in section 'content')
-->
<!-- layout for the first page -->
<fo:simple-page-master master-name="first"
- page-height="29.7cm"
+ page-height="29.7cm"
page-width="21cm"
- margin-top="1cm"
- margin-bottom="2cm"
- margin-left="2.5cm"
+ margin-top="1cm"
+ margin-bottom="2cm"
+ margin-left="2.5cm"
margin-right="2.5cm">
<fo:region-body margin-top="3cm"/>
<fo:region-before extent="3cm"/>
<!-- layout for the other pages -->
<fo:simple-page-master master-name="rest"
- page-height="29.7cm"
+ page-height="29.7cm"
page-width="21cm"
- margin-top="1cm"
- margin-bottom="2cm"
- margin-left="2.5cm"
+ margin-top="1cm"
+ margin-bottom="2cm"
+ margin-left="2.5cm"
margin-right="2.5cm">
<fo:region-body margin-top="2.5cm"/>
<fo:region-before extent="2.5cm"/>
</fo:simple-page-master>
<fo:page-sequence-master master-name="basicPSM" >
- <fo:repeatable-page-master-alternatives>
- <fo:conditional-page-master-reference master-reference="first"
- page-position="first" />
- <fo:conditional-page-master-reference master-reference="rest"
- page-position="rest" />
- <!-- recommended fallback procedure -->
- <fo:conditional-page-master-reference master-reference="rest" />
- </fo:repeatable-page-master-alternatives>
+ <fo:repeatable-page-master-alternatives>
+ <fo:conditional-page-master-reference master-reference="first"
+ page-position="first" />
+ <fo:conditional-page-master-reference master-reference="rest"
+ page-position="rest" />
+ <!-- recommended fallback procedure -->
+ <fo:conditional-page-master-reference master-reference="rest" />
+ </fo:repeatable-page-master-alternatives>
</fo:page-sequence-master>
</fo:layout-master-set>
<fo:flow flow-name="xsl-region-body">
<fo:block font-size="18pt" font-family="sans-serif" line-height="24pt" space-after.optimum="15pt" background-color="blue" color="white" text-align="center" padding-top="3pt">FOP: An Open-Source XSL Formatter and Renderer</fo:block>
-<fo:block id="sec1" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >A)
+<fo:block id="sec1" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >A)
What is FOP?</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">FOP is the world's first print formatter driven by XSL formatting
objects. It is a Java 1.1 application that reads a formatting object
the case of XT) SAX events.
</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">FOP is part of Apache's XML project. The homepage of FOP is
+ <fo:block space-after.optimum="3pt" font-family="serif">FOP is part of Apache's XML project. The homepage of FOP is
<fo:inline font-style="italic" font-family="serif"><fo:basic-link color="blue" external-destination="http://xml.apache.org/fop">http://xml.apache.org/fop</fo:basic-link></fo:inline>
</fo:block>
- <fo:block id="sec2" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >B)
+ <fo:block id="sec2" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >B)
Downloading FOP</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">The latest release version is <fo:inline font-style="italic" font-family="serif">FOP
0.14</fo:inline> <fo:inline font-family="serif">
<fo:block space-after.optimum="3pt" font-family="serif">Documentation can be downloaded here as <fo:inline font-style="italic" font-family="serif">HMTL file</fo:inline>
<fo:inline font-family="serif">
()
- </fo:inline> or
+ </fo:inline> or
as <fo:inline font-style="italic" font-family="serif">PDF file</fo:inline>
<fo:inline font-family="serif">
()
</fo:inline>.</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">To run FOP from the command line, see Running FOP. If you are interested in
+ <fo:block space-after.optimum="3pt" font-family="serif">To run FOP from the command line, see Running FOP. If you are interested in
embedding FOP in a Java application of your own, see Embedding FOP.
</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">You can also download the <fo:inline font-style="italic" font-family="serif">source code v. 0.14</fo:inline>
- <fo:block id="sec3" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >C)
+ <fo:block id="sec3" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >C)
Running FOP</fo:block>
-
+
<fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" >1) Prerequisites</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">Following software must be installed:</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">a) Java 1.1.x or later</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">For the fo-file viewer mode of FOP (see below) you must have the swing classes installed.
- From Java 1.2 on (aka Java 2) they are part of the standard java distribution.
+ <fo:block space-after.optimum="3pt" font-family="serif">For the fo-file viewer mode of FOP (see below) you must have the swing classes installed.
+ From Java 1.2 on (aka Java 2) they are part of the standard java distribution.
If you use Java 1.1.x you must seperately include the swing classes, which can
be found at the <fo:inline font-style="italic" font-family="serif">
Sun website</fo:inline>
<fo:inline font-family="serif">
(http://java.sun.com/products/jfc/#download-swing)
- </fo:inline>.
+ </fo:inline>.
</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">b) An XML parser which supports SAX and DOM like
+ <fo:block space-after.optimum="3pt" font-family="serif">b) An XML parser which supports SAX and DOM like
<fo:inline font-style="italic" font-family="serif">Xerces-J</fo:inline>
<fo:inline font-family="serif">
(http://xml.apache.org/xerces-j/index.html)
</fo:inline>.</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">c) If you have to produce the flow objects files, which are the input for FOP,
- you need a transformation utility to create this files from your xml files.
- Normally this is an XSLT stylesheet processor like
+ <fo:block space-after.optimum="3pt" font-family="serif">c) If you have to produce the flow objects files, which are the input for FOP,
+ you need a transformation utility to create this files from your xml files.
+ Normally this is an XSLT stylesheet processor like
<fo:inline font-style="italic" font-family="serif">XT</fo:inline>
<fo:inline font-family="serif">
(http://www.jclark.com/xml/xt.html)
- </fo:inline>
+ </fo:inline>
or <fo:inline font-style="italic" font-family="serif">XALAN</fo:inline>
<fo:inline font-family="serif">
(http://xml.apache.org/xalan/index.html)
- </fo:inline>.
+ </fo:inline>.
</fo:block>
-
-
+
+
<fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" >2) Starting FOP as an standalone application</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">There are three ways to run FOP from the command line.</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">a) Batch processing formatting objects (fo) files: </fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">java org.apache.fop.apps.CommandLine xml-file xsl-file pdf-file</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">c) Previewing the fo-file:</fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">java org.apache.fop.apps.AWTCommandLine fo-file</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">Each method uses next to the fop classes other packages. The following describes
+ <fo:block space-after.optimum="3pt" font-family="serif">Each method uses next to the fop classes other packages. The following describes
each method in detail.</fo:block>
-
+
<fo:block font-size="14pt" font-family="serif" line-height="16pt" space-before.optimum="8pt" space-after.optimum="4pt" >a) Method One</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">One is to first use an XSLT engine to produce the formatting object tree as an
+ <fo:block space-after.optimum="3pt" font-family="serif">One is to first use an XSLT engine to produce the formatting object tree as an
XML document and then running the class org.apache.fop.apps.CommandLine with the
- formatting object file name and PDF filename as arguments. You will need to include
- FOP and your XML Parser in your classpath and so you might invoke
+ formatting object file name and PDF filename as arguments. You will need to include
+ FOP and your XML Parser in your classpath and so you might invoke
</fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">java -cp fop_x_xx_x.jar;xerces.jar</fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">org.apache.fop.apps.CommandLine fo-file pdf-file</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">If your SAX Parser is other than Xerces, you will need to set the property
- org.xml.sax.parser to the SAX Parser class to use. The following example shows
- the command line, if you use XP, the XML parser from James Clark:
+ <fo:block space-after.optimum="3pt" font-family="serif">If your SAX Parser is other than Xerces, you will need to set the property
+ org.xml.sax.parser to the SAX Parser class to use. The following example shows
+ the command line, if you use XP, the XML parser from James Clark:
</fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">java -Dorg.xml.sax.parser=com.jclark.xml.sax.Driver</fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">-cp fop_x_xx_x.jar;sax.jar;xt.jar;xp.jar;xerces.jar</fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">org.apache.fop.apps.AWTCommandLine formatting-tree-file pdf-file</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">(You have to include xerces.jar or another xml parser which supports DOM in your classpath.) </fo:block>
-
-
+
+
<fo:block font-size="14pt" font-family="serif" line-height="16pt" space-before.optimum="8pt" space-after.optimum="4pt" >b) Method Two</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">Rather than performing transformation with an XSLT before invoking FOP, it is
- possible, if you use XT as your XSLT engine, to just call FOP and have it call
- XT for you. To do this, run the class org.apache.fop.apps.CommandLine with the
- source XML file name, XSL file name and PDF file name as arguments. You will
- need to include FOP, SAX, your SAX Parser and XT in your classpath and so you might
- invoke
+ <fo:block space-after.optimum="3pt" font-family="serif">Rather than performing transformation with an XSLT before invoking FOP, it is
+ possible, if you use XT as your XSLT engine, to just call FOP and have it call
+ XT for you. To do this, run the class org.apache.fop.apps.CommandLine with the
+ source XML file name, XSL file name and PDF file name as arguments. You will
+ need to include FOP, SAX, your SAX Parser and XT in your classpath and so you might
+ invoke
</fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">java -Dorg.xml.sax.parser=com.jclark.xml.sax.Driver</fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">-cp fop_x_xx_x.jar;xt.jar;xerces.jar</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">Again, if your SAX Parser is other than Xerces, you will need to set the property
org.xml.sax.parser to the SAX Parser class to use.
</fo:block>
-
-
+
+
<fo:block font-size="14pt" font-family="serif" line-height="16pt" space-before.optimum="8pt" space-after.optimum="4pt" >c) Method Three</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">If you already produced the FO file, you can preview the results of your
- transformation without using any pdf viewer by invoking FOP with the viewer
- application. You will need to include FOP and your XML Parser in your classpath
+ <fo:block space-after.optimum="3pt" font-family="serif">If you already produced the FO file, you can preview the results of your
+ transformation without using any pdf viewer by invoking FOP with the viewer
+ application. You will need to include FOP and your XML Parser in your classpath
</fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">java -cp fop_x_xx_x.jar;xerces.jar</fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">org.apache.fop.apps.AWTCommandLine fo-file </fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">The viewer uses the swing classes.</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">Note: If you are using java 2 or later (i.e. jdk 1.2. or later) you can put all
- needed jar files into the subdirectory jdk1.2.x\jre\lib\ext (windows example). Then
- FOP can be started without classpath:
+ <fo:block space-after.optimum="3pt" font-family="serif">The viewer uses the swing classes.</fo:block>
+ <fo:block space-after.optimum="3pt" font-family="serif">Note: If you are using java 2 or later (i.e. jdk 1.2. or later) you can put all
+ needed jar files into the subdirectory jdk1.2.x\jre\lib\ext (windows example). Then
+ FOP can be started without classpath:
</fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt">java org.apache.fop.apps.CommandLine fo-file pdf-file</fo:block>
-
-
-
- <fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" >3) Running FOP on MacOS</fo:block>
-
+
+
+
+ <fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" >3) Running FOP on MacOS</fo:block>
+
<fo:block space-after.optimum="3pt" font-family="serif">Ensure that you have a recent MRJ, and that you have downloaded and
unpacked the XP and SAX distributions. The xp.jar and sax.jar files work
as is on MacOS.
</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">Once both are added (the FOP jarfile will already be in the list), click
Run. A "stdout" window will appear and display FOP runtime messages.
- </fo:block>
-
-
+ </fo:block>
+
+
<fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" >4) Problems</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">If you have problems running FOP, please have a look at the
+ <fo:block space-after.optimum="3pt" font-family="serif">If you have problems running FOP, please have a look at the
<fo:inline font-style="italic" font-family="serif">FOP FAQ</fo:inline>
<fo:inline font-family="serif">
(faq.html)
</fo:inline>. If you don't find a solution there,
- you can ask for help on the list fop-dev@xml.apache.org. Maybe it's bug and
- maybe somebody is already working on it.
+ you can ask for help on the list fop-dev@xml.apache.org. Maybe it's bug and
+ maybe somebody is already working on it.
</fo:block>
-
- <fo:block id="sec4" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >D)
+
+ <fo:block id="sec4" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >D)
Embedding FOP </fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">Instantiate org.apache.fop.apps.Driver. Once this class is
+ <fo:block space-after.optimum="3pt" font-family="serif">Instantiate org.apache.fop.apps.Driver. Once this class is
instantiated, methods are called to set the
Renderer to use, the (possibly multiple) ElementMapping(s) to
use and the PrintWriter to use to output the results of the
- <fo:block id="sec5" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >E)
+ <fo:block id="sec5" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >E)
What's Implemented?</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">Also see STATUS for what is being worked on.</fo:block>
-
+
<fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" >1) Formatting Objects</fo:block>
<fo:list-block start-indent="1cm" provisional-distance-between-starts="12pt" font-family="serif">
<fo:list-item>
</fo:list-item-body>
</fo:list-item>
</fo:list-block>
-
-
+
+
<fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" >2) Properties</fo:block>
<fo:list-block start-indent="1cm" provisional-distance-between-starts="12pt" font-family="serif">
<fo:list-item>
</fo:list-item-body>
</fo:list-item>
</fo:list-block>
-
-
- <fo:block id="sec6" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >F)
+
+
+ <fo:block id="sec6" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >F)
Limitations</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">Although FOP implements the above listed fo objects and properties, sometimes it does so
- only in a limited way.
+ <fo:block space-after.optimum="3pt" font-family="serif">Although FOP implements the above listed fo objects and properties, sometimes it does so
+ only in a limited way.
</fo:block>
-
+
<fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" >list-block</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">The fo working draft allows describes two ways to markup lists.The list-block must have as
+ <fo:block space-after.optimum="3pt" font-family="serif">The fo working draft allows describes two ways to markup lists.The list-block must have as
children either: 1) pairs of fo:list-item-label and fo:list-item-body formatting objects, or
2) fo:list-item formatting objects.</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">At the moment FOP only implements the second way. Therefore a list has a basic structure like this:</fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"><fo:list-item-body><fo:block></fo:block></fo:list-item-body></fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"></fo:list-item></fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"></fo:list-block></fo:block>
-
-
+
+
<fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" >Padding</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">Padding works in conjunction with indents and spaces. It is only implemented
+ <fo:block space-after.optimum="3pt" font-family="serif">Padding works in conjunction with indents and spaces. It is only implemented
for blocks. At the moment padding can't be used to make extra space (indents+spaces
must be used), but only to control how much the background-color extends beyond
the content rectangle.
- </fo:block>
-
-
+ </fo:block>
+
+
<fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" >Tables</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">There two limitations for tables: 1) FOP needs you to explicitly specify column widths
+ <fo:block space-after.optimum="3pt" font-family="serif">There two limitations for tables: 1) FOP needs you to explicitly specify column widths
2) Cells have to contain block-level FOs. They can't contain straight character data.
</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">A working basic example of a table looks like this: </fo:block>
+ <fo:block space-after.optimum="3pt" font-family="serif">A working basic example of a table looks like this: </fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"><fo:table></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-column column-width="150pt"/></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-column column-width="150pt"/></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-body font-size="10pt" font-family="sans-serif"></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-row></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-cell></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:block>text</fo:block></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-cell></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-cell></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:block>text</fo:block></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-cell></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-row></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-row></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-cell></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:block>text</fo:block></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-cell></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-cell></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:block>text</fo:block></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-cell></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-row></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-row></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-cell></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:block>text</fo:block></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-cell></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-cell></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:block>text</fo:block></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-cell></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-row></fo:block>
- <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-body></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-column column-width="150pt"/></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-column column-width="150pt"/></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-body font-size="10pt" font-family="sans-serif"></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-row></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-cell></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:block>text</fo:block></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-cell></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-cell></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:block>text</fo:block></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-cell></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-row></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-row></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-cell></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:block>text</fo:block></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-cell></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-cell></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:block>text</fo:block></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-cell></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-row></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-row></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-cell></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:block>text</fo:block></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-cell></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:table-cell></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> <fo:block>text</fo:block></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-cell></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-row></fo:block>
+ <fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"> </fo:table-body></fo:block>
<fo:block font-size="10pt" font-family="monospace" line-height="12pt" space-before.optimum="0pt" space-after.optimum="0pt"></fo:table></fo:block>
-
-
-
- <fo:block id="sec7" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >G)
+
+
+
+ <fo:block id="sec7" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >G)
Bugs</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">see STATUS file</fo:block>
- <fo:block id="sec8" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >H)
+ <fo:block id="sec8" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >H)
Compiling FOP</fo:block>
-
+
<fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" >1. Prerequisites</fo:block>
-
+
<fo:block font-size="14pt" font-family="serif" line-height="16pt" space-before.optimum="8pt" space-after.optimum="4pt" >a) Java 1.1.x or later</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">If you use Java 1.1.x you must also seperately include the swing classes, which can
be found at the <fo:inline font-style="italic" font-family="serif">
Sun website</fo:inline>
<fo:inline font-family="serif">
(http://java.sun.com/products/jfc/#download-swing)
- </fo:inline>. From Java 1.2 on (aka Java 2) they are part of the standard
- distribution.
+ </fo:inline>. From Java 1.2 on (aka Java 2) they are part of the standard
+ distribution.
</fo:block>
-
-
+
+
<fo:block font-size="14pt" font-family="serif" line-height="16pt" space-before.optimum="8pt" space-after.optimum="4pt" >b) An XML parser</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">An XML parser which supports DOM like
+ <fo:block space-after.optimum="3pt" font-family="serif">An XML parser which supports DOM like
<fo:inline font-style="italic" font-family="serif">Xerces-J</fo:inline>
<fo:inline font-family="serif">
(http://xml.apache.org/xerces-j/index.html)
</fo:inline>.</fo:block>
-
-
+
+
<fo:block font-size="14pt" font-family="serif" line-height="16pt" space-before.optimum="8pt" space-after.optimum="4pt" >c) XT from James Clark</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">Some of the Java source code in FOP is generated from XML using
XSLT. XT must be used to generate this code.</fo:block>
generic jar file, otherwise make won't work)
</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">XT relies on an sax parser like XP (also J. Clark), which can be
- downloaded at <fo:inline font-style="italic" font-family="serif">James
+ downloaded at <fo:inline font-style="italic" font-family="serif">James
Clark's Website</fo:inline>
<fo:inline font-family="serif">
(http://www.jclark.com/xml/xp/index.html)
</fo:inline>
</fo:block>
-
-
+
+
<fo:block font-size="14pt" font-family="serif" line-height="16pt" space-before.optimum="8pt" space-after.optimum="4pt" >d) make</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">Under windows it has been reported that the use of the cygnus solutions port
- of the GNU utilities works. You can find it at
+ <fo:block space-after.optimum="3pt" font-family="serif">Under windows it has been reported that the use of the cygnus solutions port
+ of the GNU utilities works. You can find it at
<fo:inline font-style="italic" font-family="serif">Cygnus Solutions</fo:inline>
<fo:inline font-family="serif">
(http://sourceware.cygnus.com/cygwin/)
</fo:inline>
</fo:block>
-
-
-
+
+
+
<fo:block font-size="16pt" font-family="serif" line-height="18pt" space-before.optimum="8pt" space-after.optimum="8pt" >Compiling FOP on MacOS</fo:block>
-
+
<fo:block space-after.optimum="3pt" font-family="serif">We strongly recommend the use of Codewarrior Java. This Readme will
contain a link to more information in the near future.
</fo:block>
-
- <fo:block id="sec9" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >I)
+
+ <fo:block id="sec9" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >I)
Getting involved</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">1. Subscribe to fop-dev@xml.apache.org by sending an email
+ <fo:block space-after.optimum="3pt" font-family="serif">1. Subscribe to fop-dev@xml.apache.org by sending an email
to fop-dev-subscribe@xml.apache.org</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">2. Read the archives to fop-dev to get an idea of the issues being
+ <fo:block space-after.optimum="3pt" font-family="serif">2. Read the archives to fop-dev to get an idea of the issues being
discussed. </fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">3. Subscribe to fop-cvs@xml.apache.org by sending an email to
- fop-cvs-subscribe@xml.apache.org (it is important
+ <fo:block space-after.optimum="3pt" font-family="serif">3. Subscribe to fop-cvs@xml.apache.org by sending an email to
+ fop-cvs-subscribe@xml.apache.org (it is important
that you follow changes being made). </fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">4. Try :-) to wrap your head around the XSL working draft. </fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">5. Get CVS working on your system. </fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">6. Ask, on fop-dev, any questions you have at all about the code, design, etc. </fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif">7. When you feel comfortable modifying the code, send diffs to
+ <fo:block space-after.optimum="3pt" font-family="serif">7. When you feel comfortable modifying the code, send diffs to
fop-dev with your contributions. </fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">8. Have fun!</fo:block>
- <fo:block id="sec10" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >J)
+ <fo:block id="sec10" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >J)
FOP Relevant Specifications</fo:block>
<fo:list-block start-indent="1cm" provisional-distance-between-starts="12pt" font-family="serif">
<fo:list-item>
<fo:inline font-style="italic" font-family="serif">XML Recommendation</fo:inline>
<fo:inline font-family="serif" >
(<fo:basic-link color="blue" external-destination="http://www.w3.org/TR/REC-xml">http://www.w3.org/TR/REC-xml</fo:basic-link>)
- </fo:inline>
+ </fo:inline>
</fo:block>
</fo:list-item-body>
</fo:list-item>
- <fo:block id="sec11" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >K)
+ <fo:block id="sec11" font-size="18pt" font-family="serif" line-height="20pt" space-before.optimum="20pt" space-after.optimum="14pt" >K)
Licence</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif"> ============================================================================</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif"> The Apache Software License, Version 1.1</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif"> ============================================================================</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif"> Copyright (C) 1999 The Apache Software Foundation. All rights reserved.</fo:block>
- <fo:block space-after.optimum="3pt" font-family="serif"> Redistribution and use in source and binary forms, with or without modification,
+ <fo:block space-after.optimum="3pt" font-family="serif"> Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:</fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">1. Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
<fo:block space-after.optimum="3pt" font-family="serif">5. Products derived from this software may not be called "Apache", nor may
"Apache" appear in their name, without prior written permission of the
Apache Software Foundation.
- </fo:block>
+ </fo:block>
<fo:block space-after.optimum="3pt" font-family="serif">THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
</fo:block>
-
+
<fo:block space-after.optimum="3pt" font-family="serif">
This software consists of voluntary contributions made by many individuals
on behalf of the Apache Software Foundation and was originally created by
- James Tauber <jtauber@jtauber.com>. For more information on the Apache
+ James Tauber <jtauber@jtauber.com>. For more information on the Apache
Software Foundation, please see <fo:inline font-style="italic" font-family="serif">http://www.apache.org/</fo:inline>
<fo:inline font-family="serif">
(http://www.apache.org/)
<fo:table-body font-size="10pt" font-family="sans-serif">
<fo:table-row line-height="12pt">
<fo:table-cell>
-<fo:block text-align="end">A)
+<fo:block text-align="end">A)
</fo:block>
</fo:table-cell>
<fo:table-cell>
</fo:table-row>
<fo:table-row line-height="12pt">
<fo:table-cell>
-<fo:block text-align="end">B)
+<fo:block text-align="end">B)
</fo:block>
</fo:table-cell>
<fo:table-cell>
</fo:table-row>
<fo:table-row line-height="12pt">
<fo:table-cell>
-<fo:block text-align="end">C)
+<fo:block text-align="end">C)
</fo:block>
</fo:table-cell>
<fo:table-cell>
</fo:table-row>
<fo:table-row line-height="12pt">
<fo:table-cell>
-<fo:block text-align="end">D)
+<fo:block text-align="end">D)
</fo:block>
</fo:table-cell>
<fo:table-cell>
</fo:table-row>
<fo:table-row line-height="12pt">
<fo:table-cell>
-<fo:block text-align="end">E)
+<fo:block text-align="end">E)
</fo:block>
</fo:table-cell>
<fo:table-cell>
</fo:table-row>
<fo:table-row line-height="12pt">
<fo:table-cell>
-<fo:block text-align="end">F)
+<fo:block text-align="end">F)
</fo:block>
</fo:table-cell>
<fo:table-cell>
</fo:table-row>
<fo:table-row line-height="12pt">
<fo:table-cell>
-<fo:block text-align="end">G)
+<fo:block text-align="end">G)
</fo:block>
</fo:table-cell>
<fo:table-cell>
</fo:table-row>
<fo:table-row line-height="12pt">
<fo:table-cell>
-<fo:block text-align="end">H)
+<fo:block text-align="end">H)
</fo:block>
</fo:table-cell>
<fo:table-cell>
</fo:table-row>
<fo:table-row line-height="12pt">
<fo:table-cell>
-<fo:block text-align="end">I)
+<fo:block text-align="end">I)
</fo:block>
</fo:table-cell>
<fo:table-cell>
</fo:table-row>
<fo:table-row line-height="12pt">
<fo:table-cell>
-<fo:block text-align="end">J)
+<fo:block text-align="end">J)
</fo:block>
</fo:table-cell>
<fo:table-cell>
</fo:table-row>
<fo:table-row line-height="12pt">
<fo:table-cell>
-<fo:block text-align="end">K)
+<fo:block text-align="end">K)
</fo:block>
</fo:table-cell>
<fo:table-cell>
<?xml version="1.0" encoding="utf-8"?>
-<!-- example for a simple fo file. At the beginning the page layout is set.
- Below fo:root there is always
+<!-- example for a simple fo file. At the beginning the page layout is set.
+ Below fo:root there is always
- a single fo:layout-master-set which defines one or more page layouts
-- an optional fo:declarations
-- and a sequence of one or more fo:page-sequences containing the text and formatting instructions
+- an optional fo:declarations
+- and a sequence of one or more fo:page-sequences containing the text and formatting instructions
-->
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set>
- <!-- fo:layout-master-set defines in its children the page layout:
+ <!-- fo:layout-master-set defines in its children the page layout:
the pagination and layout specifications
- - page-masters: have the role of describing the intended subdivisions
- of a page and the geometry of these subdivisions
- In this case there is only a simple-page-master which defines the
+ - page-masters: have the role of describing the intended subdivisions
+ of a page and the geometry of these subdivisions
+ In this case there is only a simple-page-master which defines the
layout for all pages of the text
-->
<!-- layout information -->
<fo:simple-page-master master-name="simple"
- page-height="29.7cm"
+ page-height="29.7cm"
page-width="21cm"
- margin-top="1cm"
- margin-bottom="2cm"
- margin-left="2.5cm"
+ margin-top="1cm"
+ margin-bottom="2cm"
+ margin-left="2.5cm"
margin-right="2.5cm">
<fo:region-body margin-top="3cm"/>
<fo:region-before extent="3cm"/>
<!-- start page-sequence
here comes the text (contained in flow objects)
- the page-sequence can contain different fo:flows
+ the page-sequence can contain different fo:flows
the attribute value of master-name refers to the page layout
which is to be used to layout the text contained in this
page-sequence-->
<fo:page-sequence master-reference="simple">
<!-- start fo:flow
- each flow is targeted
+ each flow is targeted
at one (and only one) of the following:
xsl-region-body (usually: normal text)
xsl-region-before (usually: header)
xsl-region-after (usually: footer)
- xsl-region-start (usually: left margin)
+ xsl-region-start (usually: left margin)
xsl-region-end (usually: right margin)
- ['usually' applies here to languages with left-right and top-down
+ ['usually' applies here to languages with left-right and top-down
writing direction like English]
in this case there is only one target: xsl-region-body
-->
font-family and size, line-heigth etc. -->
<!-- this defines a title -->
- <fo:block font-size="18pt"
- font-family="sans-serif"
+ <fo:block font-size="18pt"
+ font-family="sans-serif"
line-height="24pt"
space-after.optimum="15pt"
background-color="blue"
<!-- this defines normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="15pt"
space-after.optimum="3pt"
text-align="justify">
</fo:block>
<!-- this defines normal text -->
- <fo:block font-size="12pt"
- font-family="sans-serif"
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
line-height="15pt"
space-after.optimum="3pt"
text-align="justify">
<!-- defines the layout master -->
<fo:layout-master-set>
- <fo:simple-page-master master-name="first"
- page-height="29.7cm"
- page-width="21cm"
- margin-top="1cm"
- margin-bottom="2cm"
- margin-left="2.5cm"
+ <fo:simple-page-master master-name="first"
+ page-height="29.7cm"
+ page-width="21cm"
+ margin-top="1cm"
+ margin-bottom="2cm"
+ margin-left="2.5cm"
margin-right="2.5cm">
<fo:region-body margin-top="3cm"/>
<fo:region-before extent="3cm"/>
<fo:flow flow-name="xsl-region-body">
<!-- this defines a title level 1-->
- <fo:block font-size="18pt"
- font-family="sans-serif"
+ <fo:block font-size="18pt"
+ font-family="sans-serif"
line-height="24pt"
space-after.optimum="15pt"
background-color="blue"
</fo:block>
<!-- this defines a title level 2-->
- <fo:block font-size="16pt"
- font-family="sans-serif"
+ <fo:block font-size="16pt"
+ font-family="sans-serif"
space-after.optimum="15pt"
text-align="center">
A simple table, 3 columns, 4 rows
</fo:block>
<!-- normal text -->
- <fo:block text-align="start">this is normal text. this is normal text. this is normal text.
- this is normal text. this is normal text. this is normal text.
+ <fo:block text-align="start">this is normal text. this is normal text. this is normal text.
+ this is normal text. this is normal text. this is normal text.
</fo:block>
-
+
<!-- table start -->
<fo:table>
<fo:table-column column-width="50mm"/>
<!-- table end -->
<!-- normal text -->
- <fo:block text-align="start">this is normal text. this is normal text. this is normal text.
- this is normal text. this is normal text. this is normal text.
+ <fo:block text-align="start">this is normal text. this is normal text. this is normal text.
+ this is normal text. this is normal text. this is normal text.
</fo:block>
<!-- **************************** NEW PAGE ************************************* -->
<!-- this defines a title level 2-->
- <fo:block font-size="16pt"
- font-family="sans-serif"
+ <fo:block font-size="16pt"
+ font-family="sans-serif"
space-after.optimum="15pt"
text-align="center"
break-before="page">
- A table with borders
+ A table with borders
</fo:block>
<!-- normal text -->
- <fo:block text-align="start">this is normal text. this is normal text. this is normal text.
- this is normal text. this is normal text. this is normal text.
+ <fo:block text-align="start">this is normal text. this is normal text. this is normal text.
+ this is normal text. this is normal text. this is normal text.
</fo:block>
-
-
+
+
<!-- table start -->
<fo:table border-width="0.5mm" border-style="solid" background-color="yellow">
<fo:table-column column-width="50mm"/>
<!-- table end -->
<!-- normal text -->
- <fo:block text-align="start">this is normal text. this is normal text. this is normal text.
- this is normal text. this is normal text. this is normal text.
+ <fo:block text-align="start">this is normal text. this is normal text. this is normal text.
+ this is normal text. this is normal text. this is normal text.
</fo:block>
-
+
<!-- **************************** NEW PAGE ************************************* -->
<!-- this defines a title level 2-->
- <fo:block font-size="16pt"
- font-family="sans-serif"
+ <fo:block font-size="16pt"
+ font-family="sans-serif"
space-after.optimum="15pt"
text-align="center"
break-before="page">
- A table with thick borders
+ A table with thick borders
</fo:block>
<!-- normal text -->
- <fo:block text-align="start">this is normal text. this is normal text. this is normal text.
- this is normal text. this is normal text. this is normal text.
+ <fo:block text-align="start">this is normal text. this is normal text. this is normal text.
+ this is normal text. this is normal text. this is normal text.
</fo:block>
-
-
+
+
<!-- table start -->
<fo:table border-width="3mm" border-style="solid" background-color="yellow">
<fo:table-column column-width="50mm"/>
<!-- table end -->
<!-- normal text -->
- <fo:block text-align="start" start-indent="-3mm">this is normal text. this is normal text. this is normal text.
- this is normal text. this is normal text. this is normal text.
+ <fo:block text-align="start" start-indent="-3mm">this is normal text. this is normal text. this is normal text.
+ this is normal text. this is normal text. this is normal text.
</fo:block>
-
+
<!-- **************************** NEW PAGE ************************************* -->
<!-- this defines a title level 2-->
- <fo:block font-size="16pt"
- font-family="sans-serif"
+ <fo:block font-size="16pt"
+ font-family="sans-serif"
space-after.optimum="15pt"
text-align="center"
break-before="page">
<!-- normal text -->
- <fo:block text-align="start">this is normal text. this is normal text. this is normal text.
- this is normal text. this is normal text. this is normal text.
+ <fo:block text-align="start">this is normal text. this is normal text. this is normal text.
+ this is normal text. this is normal text. this is normal text.
</fo:block>
-
-
+
+
<!-- table start -->
<fo:table border-collapse="separate">
<fo:table-column column-width="50mm"/>
<!-- table end -->
<!-- normal text -->
- <fo:block text-align="start">this is normal text. this is normal text. this is normal text.
- this is normal text. this is normal text. this is normal text.
+ <fo:block text-align="start">this is normal text. this is normal text. this is normal text.
+ this is normal text. this is normal text. this is normal text.
</fo:block>
<!-- **************************** NEW PAGE ************************************* -->
<!-- this defines a title level 2-->
- <fo:block font-size="16pt"
- font-family="sans-serif"
+ <fo:block font-size="16pt"
+ font-family="sans-serif"
space-after.optimum="15pt"
text-align="center"
break-before="page">
<!-- normal text -->
- <fo:block text-align="start">this is normal text. this is normal text. this is normal text.
- this is normal text. this is normal text. this is normal text.
+ <fo:block text-align="start">this is normal text. this is normal text. this is normal text.
+ this is normal text. this is normal text. this is normal text.
</fo:block>
-
-
+
+
<!-- table start -->
<fo:table border-collapse="separate">
<fo:table-column column-width="50mm"/>
<!-- table end -->
<!-- normal text -->
- <fo:block text-align="start">this is normal text. this is normal text. this is normal text.
- this is normal text. this is normal text. this is normal text.
+ <fo:block text-align="start">this is normal text. this is normal text. this is normal text.
+ this is normal text. this is normal text. this is normal text.
</fo:block>
<!-- table start -->
<!-- table end -->
<!-- normal text -->
- <fo:block text-align="start">this is normal text. this is normal text. this is normal text.
- this is normal text. this is normal text. this is normal text.
+ <fo:block text-align="start">this is normal text. this is normal text. this is normal text.
+ this is normal text. this is normal text. this is normal text.
</fo:block>
<!-- **************************** NEW PAGE ************************************* -->
<!-- this defines a title level 2-->
- <fo:block font-size="16pt"
- font-family="sans-serif"
+ <fo:block font-size="16pt"
+ font-family="sans-serif"
space-after.optimum="15pt"
text-align="center"
break-before="page">
- 5 tables with borders
+ 5 tables with borders
</fo:block>
<!-- normal text -->
- <fo:block text-align="start">this is normal text. this is normal text. this is normal text.
- this is normal text. this is normal text. this is normal text.
+ <fo:block text-align="start">this is normal text. this is normal text. this is normal text.
+ this is normal text. this is normal text. this is normal text.
</fo:block>
-
+
<fo:table border-width="1.5mm" border-style="solid" background-color="rgb(100,210,250)">
<fo:table-column column-width="150mm"/>
</fo:table-body>
</fo:table>
-
+
<fo:table border-width="1.5mm" border-style="solid" background-color="rgb(100,210,250)" >
<fo:table-column column-width="150mm"/>
<fo:table-body>
</fo:table>
<!-- normal text -->
- <fo:block text-align="start">this is normal text. this is normal text. this is normal text.
- this is normal text. this is normal text. this is normal text.
+ <fo:block text-align="start">this is normal text. this is normal text. this is normal text.
+ this is normal text. this is normal text. this is normal text.
</fo:block>
<!-- **************************** NEW PAGE ************************************* -->
- <fo:block font-size="16pt"
- font-family="sans-serif"
- line-height="20pt"
- space-after.optimum="3pt"
+ <fo:block font-size="16pt"
+ font-family="sans-serif"
+ line-height="20pt"
+ space-after.optimum="3pt"
break-before="page"
text-align="justify">
A Contents table
<!-- defines the layout master -->
<fo:layout-master-set>
- <fo:simple-page-master master-name="first"
- page-height="29.7cm"
- page-width="21cm"
- margin-top="1cm"
- margin-bottom="2cm"
- margin-left="2.5cm"
+ <fo:simple-page-master master-name="first"
+ page-height="29.7cm"
+ page-width="21cm"
+ margin-top="1cm"
+ margin-bottom="2cm"
+ margin-left="2.5cm"
margin-right="2.5cm">
<fo:region-body margin-top="3cm" margin-bottom="1.5cm"/>
<fo:region-before extent="3cm"/>
<!-- normal text -->
<fo:block space-after="1cm" text-align="start" padding="0.4in"
- border="thick solid red">Table unit tests</fo:block>
+ border="thick solid red">Table unit tests</fo:block>
<fo:table border-collapse="collapse" width="6in">
<fo:table-column column-width="(4.5in - 2cm) div 3 +1in" background-color="yellow"/>
<fo:table-column column-width="(4.5in - 2cm) div 3 + 0.5in" background-color="blue"/>
<fo:table-column column-width="proportional-column-width(1) + 2.0cm" background-color="green"/>
<fo:table-body>
<fo:table-row>
- <fo:table-cell display-align="before"><fo:block>Some text to make this cell
+ <fo:table-cell display-align="before"><fo:block>Some text to make this cell
deeper than the others to check out the aliignment properties.</fo:block></fo:table-cell>
<fo:table-cell display-align="center"><fo:block>Centered</fo:block></fo:table-cell>
<fo:table-cell display-align="after"><fo:block>Bottom aligned</fo:block></fo:table-cell>
<fo:table-column background-color="green"/>
<fo:table-body>
<fo:table-row>
- <fo:table-cell display-align="before"><fo:block>Some text to make this cell
+ <fo:table-cell display-align="before"><fo:block>Some text to make this cell
deeper than the others to check out the aliignment properties.</fo:block></fo:table-cell>
<fo:table-cell display-align="center"><fo:block>Centered</fo:block></fo:table-cell>
<fo:table-cell display-align="after"><fo:block>Bottom aligned</fo:block></fo:table-cell>
</fo:block>
<!-- table start -->
<fo:table border-collapse="collapse" inline-progression-dimension="12cm"
- inline-progression-dimension.maximum="100%">
+ inline-progression-dimension.maximum="100%">
<fo:table-column column-width="8cm" background-color="yellow"/>
<fo:table-column column-width="proportional-column-width(2)" background-color="blue"/>
<fo:table-column column-width="5cm" background-color="green"/>
<fo:table-body>
<fo:table-row>
- <fo:table-cell display-align="before"><fo:block>Some text to make this cell
+ <fo:table-cell display-align="before"><fo:block>Some text to make this cell
deeper than the others to check out the aliignment properties.</fo:block></fo:table-cell>
<fo:table-cell display-align="center"><fo:block>Centered</fo:block></fo:table-cell>
<fo:table-cell display-align="after"><fo:block>Bottom aligned</fo:block></fo:table-cell>
</fo:block>
<!-- table start -->
<fo:table border-collapse="collapse" inline-progression-dimension="14cm"
- inline-progression-dimension.maximum="100%">
+ inline-progression-dimension.maximum="100%">
<fo:table-column column-width="8.5cm" background-color="yellow"/>
<fo:table-column column-width="proportional-column-width(2)" background-color="blue"/>
<fo:table-column column-width="8cm" background-color="green"/>
<fo:table-body>
<fo:table-row>
- <fo:table-cell display-align="before"><fo:block>Some text to make this cell
+ <fo:table-cell display-align="before"><fo:block>Some text to make this cell
deeper than the others to check out the aliignment properties.</fo:block></fo:table-cell>
<fo:table-cell display-align="center"><fo:block>Centered</fo:block></fo:table-cell>
<fo:table-cell display-align="after"><fo:block>Bottom aligned</fo:block></fo:table-cell>
<fo:table-column background-color="green"/>
<fo:table-body>
<fo:table-row>
- <fo:table-cell display-align="before"><fo:block>Some text to make this cell
+ <fo:table-cell display-align="before"><fo:block>Some text to make this cell
deeper than the others to check out the aliignment properties.</fo:block></fo:table-cell>
<fo:table-cell display-align="center"><fo:block>Centered</fo:block></fo:table-cell>
<fo:table-cell display-align="after"><fo:block>Bottom aligned</fo:block></fo:table-cell>
</fo:block>
<!-- table start -->
<fo:table border-collapse="collapse"
- inline-progression-dimension="15cm">
+ inline-progression-dimension="15cm">
<fo:table-column background-color="yellow"/>
<fo:table-column column-width="3cm" background-color="blue"/>
<fo:table-column background-color="green"/>
<fo:table-body>
<fo:table-row>
- <fo:table-cell display-align="before"><fo:block>Some text to make this cell
+ <fo:table-cell display-align="before"><fo:block>Some text to make this cell
deeper than the others to check out the aliignment properties.</fo:block></fo:table-cell>
<fo:table-cell display-align="center"><fo:block>Centered</fo:block></fo:table-cell>
<fo:table-cell display-align="after"><fo:block>Bottom aligned</fo:block></fo:table-cell>
<fo:table-column background-color="green"/>
<fo:table-body>
<fo:table-row>
- <fo:table-cell display-align="before"><fo:block>Some text to make this cell
+ <fo:table-cell display-align="before"><fo:block>Some text to make this cell
deeper than the others to check out the aliignment properties.</fo:block></fo:table-cell>
<fo:table-cell display-align="center"><fo:block>Centered</fo:block></fo:table-cell>
<fo:table-cell display-align="after"><fo:block>Bottom aligned</fo:block></fo:table-cell>
</fo:block>
<!-- table start -->
<fo:table table-layout="fixed" border-collapse="collapse"
- inline-progression-dimension.minimum="10cm">
+ inline-progression-dimension.minimum="10cm">
<fo:table-column background-color="yellow"/>
<fo:table-column column-width="5cm" background-color="blue"/>
<fo:table-column background-color="green"/>
<fo:table-body>
<fo:table-row>
- <fo:table-cell display-align="before"><fo:block>Some text to make this cell
+ <fo:table-cell display-align="before"><fo:block>Some text to make this cell
deeper than the others to check out the aliignment properties.</fo:block></fo:table-cell>
<fo:table-cell display-align="center"><fo:block>Centered</fo:block></fo:table-cell>
<fo:table-cell display-align="after"><fo:block>Bottom aligned</fo:block></fo:table-cell>
</fo:block>
<!-- table start -->
<fo:table table-layout="fixed" border-collapse="collapse"
- inline-progression-dimension.minimum="10cm"
- inline-progression-dimension.maximum="17cm">
+ inline-progression-dimension.minimum="10cm"
+ inline-progression-dimension.maximum="17cm">
<fo:table-column background-color="yellow"/>
<fo:table-column column-width="5cm" background-color="blue"/>
<fo:table-column background-color="green"/>
<fo:table-body>
<fo:table-row>
- <fo:table-cell display-align="before"><fo:block>Some text to make this cell
+ <fo:table-cell display-align="before"><fo:block>Some text to make this cell
deeper than the others to check out the aliignment properties.</fo:block></fo:table-cell>
<fo:table-cell display-align="center"><fo:block>Centered</fo:block></fo:table-cell>
<fo:table-cell display-align="after"><fo:block>Bottom aligned</fo:block></fo:table-cell>
<!-- layout for the first page -->
<fo:simple-page-master master-name="first"
- page-height="29.7cm"
+ page-height="29.7cm"
page-width="21cm"
- margin-top="1cm"
- margin-bottom="2cm"
- margin-left="2.5cm"
+ margin-top="1cm"
+ margin-bottom="2cm"
+ margin-left="2.5cm"
margin-right="2.5cm">
<fo:region-body margin-top="3cm"/>
<fo:region-before extent="3cm"/>
<!-- layout for the other pages -->
<fo:simple-page-master master-name="rest"
- page-height="29.7cm"
+ page-height="29.7cm"
page-width="21cm"
- margin-top="1cm"
- margin-bottom="2cm"
- margin-left="2.5cm"
+ margin-top="1cm"
+ margin-bottom="2cm"
+ margin-left="2.5cm"
margin-right="2.5cm">
<fo:region-body margin-top="2.5cm"/>
<fo:region-before extent="2.5cm"/>
</fo:simple-page-master>
<fo:page-sequence-master master-name="basicPSM" >
- <fo:repeatable-page-master-alternatives>
- <fo:conditional-page-master-reference master-reference="first"
- page-position="first" />
- <fo:conditional-page-master-reference master-reference="rest"
- page-position="rest" />
- <!-- recommended fallback procedure -->
- <fo:conditional-page-master-reference master-reference="rest" />
- </fo:repeatable-page-master-alternatives>
+ <fo:repeatable-page-master-alternatives>
+ <fo:conditional-page-master-reference master-reference="first"
+ page-position="first" />
+ <fo:conditional-page-master-reference master-reference="rest"
+ page-position="rest" />
+ <!-- recommended fallback procedure -->
+ <fo:conditional-page-master-reference master-reference="rest" />
+ </fo:repeatable-page-master-alternatives>
</fo:page-sequence-master>
</fo:layout-master-set>
<fo:inline font-family="monospace"><![CDATA[<fo:inline text-decoration="underline">underline</fo:inline>]]></fo:inline>
</fo:block>
- <fo:block font-size="12pt"
- font-family="serif"
+ <fo:block font-size="12pt"
+ font-family="serif"
line-height="15pt"
space-after.optimum="10pt"
text-align="start">
This is simple test of the text-decoration<fo:inline text-decoration="underline">underline</fo:inline>.
</fo:block>
- <fo:block font-size="22pt"
- font-family="sans-serif"
+ <fo:block font-size="22pt"
+ font-family="sans-serif"
line-height="15pt"
space-after.optimum="10pt"
text-align="start">
This is simple test with a <fo:inline text-decoration="underline">bigger</fo:inline> font-size.
</fo:block>
- <fo:block font-size="12pt"
- font-family="monospace"
+ <fo:block font-size="12pt"
+ font-family="monospace"
line-height="15pt"
space-after.optimum="20pt"
text-align="start">
</fo:inline>
</fo:block>
- <fo:block font-size="22pt"
- font-family="sans-serif"
+ <fo:block font-size="22pt"
+ font-family="sans-serif"
line-height="22pt"
space-after.optimum="10pt"
text-align="start">
This is simple test with a <fo:inline text-decoration="overline">bigger font-size</fo:inline>.
</fo:block>
- <fo:block font-size="15pt"
- font-family="monospace"
+ <fo:block font-size="15pt"
+ font-family="monospace"
line-height="15pt"
space-after.optimum="10pt"
text-align="start">
This is simple test with a <fo:inline text-decoration="line-through">monospaced font</fo:inline>.
</fo:block>
- <fo:block font-size="15pt"
+ <fo:block font-size="15pt"
line-height="15pt"
space-after.optimum="10pt"
text-align="start">