diff options
author | Glenn Adams <gadams@apache.org> | 2016-03-06 06:14:41 +0000 |
---|---|---|
committer | Glenn Adams <gadams@apache.org> | 2016-03-06 06:14:41 +0000 |
commit | 57949ba0cfffa2dd5933a103c6ad867de9f1e7a0 (patch) | |
tree | cd1d8100a9135449635251820f39f272151005ac /fop/test/xml | |
parent | c8cde713f54ca731f4a7f3bfaef8af9e8a1b9262 (diff) | |
download | xmlgraphics-fop-57949ba0cfffa2dd5933a103c6ad867de9f1e7a0.tar.gz xmlgraphics-fop-57949ba0cfffa2dd5933a103c6ad867de9f1e7a0.zip |
Configure maven build.
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/branches/maven@1733788 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'fop/test/xml')
51 files changed, 3223 insertions, 0 deletions
diff --git a/fop/test/xml/1.xml b/fop/test/xml/1.xml new file mode 100644 index 000000000..0b41cccc3 --- /dev/null +++ b/fop/test/xml/1.xml @@ -0,0 +1,9 @@ +<test xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:svg="http://www.w3.org/2000/svg"> +<data> + +<fo:block> +text text text text +</fo:block> + +</data> +</test> diff --git a/fop/test/xml/bbo1a1.xml b/fop/test/xml/bbo1a1.xml new file mode 100644 index 000000000..46585cdd7 --- /dev/null +++ b/fop/test/xml/bbo1a1.xml @@ -0,0 +1,169 @@ +<test xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:svg="http://www.w3.org/2000/svg"> +<data> + +<fo:block> +Test the alignment of text inside a block +</fo:block> + +<fo:block> +- +</fo:block> + +<fo:block> +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +</fo:block> + +<fo:block> +- +</fo:block> + +<fo:block text-align="start"> +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +</fo:block> + +<fo:block> +- +</fo:block> + +<fo:block text-align="end"> +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +</fo:block> + +<fo:block> +- +</fo:block> + +<fo:block text-align="justify"> +a bit of text a bit of text a bit of text a bit of text a bit of text a bit of text +a bit of text a bit of text a bit of text a bit of text a bit of text a bit of text +a bit of text a bit of text a bit of text a bit of text a bit of text a bit of text +a bit of text a bit of text a bit of text a bit of text a bit of text a bit of text +a bit of text a bit of text a bit of text a bit of text a bit of text a bit of text +</fo:block> + +<fo:block> +- +</fo:block> + +<fo:block text-align="center"> +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +</fo:block> + +<fo:block> +- +</fo:block> + +<fo:block text-align="center" text-align-last="relative"> +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +</fo:block> + +<fo:block> +- +</fo:block> + +<fo:block text-align="center" text-align-last="end"> +texttext texttext texttext text texttexttext texttext texttext text text +text text text text texttext texttext text texttexttext text text text text +text text text text text text text text text text text text text text text text +</fo:block> + +<fo:block> +- +</fo:block> + +<fo:block text-align="center" text-align-last="justify"> +texttext text texttext texttext texttext texttext texttext texttext text +texttext texttext texttext texttext texttext texttext texttext texttext +text text text text text text text text text text text text text text text text +</fo:block> + +<fo:block> +- +</fo:block> + +<fo:block text-align="center" text-align-last="inside"> +texttext texttext texttext texttext texttext texttext texttext texttext +text texttext text texttext text texttext text texttext texttext texttext +text text text text text text text text text text text text text text text text +</fo:block> + +<fo:block> +- +</fo:block> + +<fo:block text-align="center" text-indent="10pt"> +texttext texttext texttext texttext texttext texttext texttext texttext +text texttext text texttext text texttext text texttext texttext texttext +text text text text text text text text text text text text text text text text +</fo:block> + +<fo:block> +- +</fo:block> + +<fo:block text-align="start" text-indent="30%"> +texttext texttext texttext texttext texttext texttext texttext texttext +text texttext text texttext text texttext text texttext texttext texttext +text text text text text text text text text text text text text text text text +</fo:block> + +<fo:block> +- +</fo:block> + +<fo:block text-align="end" text-indent="15pt"> +<fo:block text-align="start" text-indent="inherit"> +texttext texttext texttext texttext texttext texttext texttext texttext +text texttext text texttext text texttext text texttext texttext texttext +text text text text text text text text text text text text text text text text +</fo:block> +</fo:block> + +<fo:block> +- +</fo:block> + +<fo:block text-align="end" last-line-end-indent="20%"> +texttext texttext texttext texttext texttext texttext texttext texttext +text texttext text texttext text texttext text texttext texttext texttext +text text text text text text text text text text text text text text text text +</fo:block> + +<fo:block> +- +</fo:block> + +<fo:block text-align="center" last-line-end-indent="40pt"> +texttext texttext texttext texttext texttext texttext texttext texttext +text texttext text texttext text texttext text texttext texttext texttext +text text text text text text text text text text text text text text text text +</fo:block> + +<fo:block> +- +</fo:block> + +<fo:block text-align="justify" last-line-end-indent="20%"> +texttext texttext texttext texttext texttext texttext texttext texttext +</fo:block> + +<fo:block> +- +</fo:block> + +<fo:block text-align="justify" text-indent="30pt" last-line-end-indent="20%"> +texttext texttext texttext texttext texttext texttext texttext texttext +</fo:block> + +</data> +</test> diff --git a/fop/test/xml/bbo1b1.xml b/fop/test/xml/bbo1b1.xml new file mode 100644 index 000000000..8e428c578 --- /dev/null +++ b/fop/test/xml/bbo1b1.xml @@ -0,0 +1,48 @@ +<test xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:svg="http://www.w3.org/2000/svg"> +<data> + +<fo:block> +This file covers the use of keeps, breaks, orphans and widows. These are items that effect the page breaking. +</fo:block> + +<fo:block space-before.optimum="660pt" break-before="page" break-after="page"> +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +</fo:block> + +<fo:block keep-together="always" space-before.optimum="660pt" break-after="page"> +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +</fo:block> + +<fo:block widows="4" space-before.optimum="660pt" break-after="page"> +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +text text text text text text text text text text text text text text text text +</fo:block> + +</data> +</test> diff --git a/fop/test/xml/bugtests/background_color.fo b/fop/test/xml/bugtests/background_color.fo new file mode 100644 index 000000000..6f393b054 --- /dev/null +++ b/fop/test/xml/bugtests/background_color.fo @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="25cm" + page-width="20cm" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1.5cm" + margin-right="1.5cm"> + <fo:region-body margin-top="3cm" margin-bottom="3cm"/> + <fo:region-before extent="2.5cm"/> + <fo:region-after extent="2.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <fo:flow flow-name="xsl-region-body"> + <fo:block background-color="#FF0000"> + <fo:block> + This is a simple fo block with red background. + </fo:block> + </fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/background_transparent.fo b/fop/test/xml/bugtests/background_transparent.fo new file mode 100644 index 000000000..013a8db8a --- /dev/null +++ b/fop/test/xml/bugtests/background_transparent.fo @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="25cm" + page-width="20cm" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1.5cm" + margin-right="1.5cm"> + <fo:region-body margin-top="3cm" margin-bottom="3cm"/> + <fo:region-before extent="2.5cm"/> + <fo:region-after extent="2.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <fo:flow flow-name="xsl-region-body"> + <fo:block> + This is a simple fo block with transparent background. + </fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/block-container.fo b/fop/test/xml/bugtests/block-container.fo new file mode 100644 index 000000000..8757f763b --- /dev/null +++ b/fop/test/xml/bugtests/block-container.fo @@ -0,0 +1,40 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="25cm" + page-width="20cm" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1.5cm" + margin-right="1.5cm"> + <fo:region-body margin-top="3cm" margin-bottom="3cm"/> + <fo:region-before extent="2.5cm"/> + <fo:region-after extent="2.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <fo:static-content flow-name="xsl-region-before"> + <fo:block-container border-color="black" border-style="solid" border-width="1pt" height="2.5cm" width="4cm" padding="8pt" position="absolute"> + <fo:block text-align="start" line-height="2cm" font-family="sans-serif" font-size="12pt"> + SOLD TO + </fo:block> + <fo:block text-align="start" line-height="1cm" font-family="sans-serif" font-size="12pt"> + Akf;lhdsaf;paesifhe;oifhqewf;oiewfhefdf;lhdsfadslhkfhdsafdshSOLDTO + Akf;lhdsaf;paesifhe;oifhqewf;oiewfhefdf;lhdsfadslhkfhdsafdshSOLDTO + Akf;lhdsaf;paesifhe;oifhqewf;oiewfhefdf;lhdsfadslhkfhdsafdshSOLDTO + Akf;lhdsaf;paesifhe;oifhqewf;oiewfhefdf;lhdsfadslhkfhdsafdshSOLDTO + Akf;lhdsaf;paesifhe;oifhqewf;oiewfhefdf;lhdsfadslhkfhdsafdshSOLDTO + Akf;lhdsaf;paesifhe;oifhqewf;oiewfhefdf;lhdsfadslhkfhdsafdshSOLDTO + Akf;lhdsaf;paesifhe;oifhqewf;oiewfhefdf;lhdsfadslhkfhdsafdshSOLDTO + </fo:block> + </fo:block-container> + </fo:static-content> + <fo:flow flow-name="xsl-region-body"> + <fo:block text-align="start" line-height="1cm" font-family="sans-serif" font-size="12pt"> + BBBBBBBBBBBBBBB + </fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/block.fo b/fop/test/xml/bugtests/block.fo new file mode 100644 index 000000000..b729e9ab6 --- /dev/null +++ b/fop/test/xml/bugtests/block.fo @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="25cm" + page-width="20cm" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1.5cm" + margin-right="1.5cm"> + <fo:region-body margin-top="3cm" margin-bottom="3cm"/> + <fo:region-before extent="2.5cm"/> + <fo:region-after extent="2.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <fo:flow flow-name="xsl-region-body"> + <fo:block> + This is a simple fo block. + </fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/border.fo b/fop/test/xml/bugtests/border.fo new file mode 100644 index 000000000..01ea34c24 --- /dev/null +++ b/fop/test/xml/bugtests/border.fo @@ -0,0 +1,71 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="25cm" + page-width="20cm" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1.5cm" + margin-right="1.5cm"> + <fo:region-body margin-top="3cm" margin-bottom="3cm"/> + <fo:region-before extent="2.5cm"/> + <fo:region-after extent="2.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <fo:flow flow-name="xsl-region-body"> + <fo:block> + This is a simple fo block. + </fo:block> + + <fo:block space-before.optimum="1cm" border-color="blue" border-style="solid" border-width="2pt"> + This is a simple fo block with borders. + </fo:block> + + <fo:block space-before.optimum="1cm" + border-left-color="blue" border-left-style="solid" border-left-width="2pt" + border-right-color="blue" border-right-style="solid" border-right-width="2pt" + border-top-color="blue" border-top-style="solid" border-top-width="2pt" + border-bottom-color="blue" border-bottom-style="solid" border-bottom-width="2pt"> + This is a simple fo block with borders. + </fo:block> + + <fo:block space-before.optimum="1cm" border-left-color="black" border-left-style="solid" border-left-width="2pt" + border-right-color="black" border-right-style="dotted" border-right-width="1cm" + border-top-color="black" border-top-style="dashed" border-top-width="5pt" + border-bottom-color="black" border-bottom-style="double" border-bottom-width="1in"> + This is a simple fo block with different borders viz; + border-left-color="black" + border-left-style="solid" + border-left-width="2pt" + border-right-color="black" + border-right-style="dotted" + border-right-width="1cm" + border-top-color="black" + border-top-style="dashed" + border-top-width="5pt" + border-bottom-color="black" + border-bottom-style="double" + border-bottom-width="1in" + </fo:block> + + <fo:block space-before.optimum="1cm" + border-top="2pt solid blue" + border-bottom="2pt solid blue" + border-left="2pt solid blue" + border-right="2pt solid blue"> + This is a simple fo block with borders. + </fo:block> + + <fo:block space-before.optimum="1cm" + border-top="2pt || solid || blue" + border-bottom="2pt || solid || blue" + border-left="2pt || solid || blue" + border-right="2pt || solid || blue"> + This is a simple fo block with borders. + </fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/break-before.fo b/fop/test/xml/bugtests/break-before.fo new file mode 100644 index 000000000..37701285b --- /dev/null +++ b/fop/test/xml/bugtests/break-before.fo @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="25cm" + page-width="20cm" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1.5cm" + margin-right="1.5cm"> + <fo:region-body margin-top="3cm" margin-bottom="3cm"/> + <fo:region-before extent="2.5cm"/> + <fo:region-after extent="2.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <fo:flow flow-name="xsl-region-body"> + <fo:block> + This is a simple fo block. + </fo:block> + <fo:block break-before="page"> + This is a simple fo block on a new page due to page-break using break-before="page". + </fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/charwidth.fo b/fop/test/xml/bugtests/charwidth.fo new file mode 100644 index 000000000..7d5ca565b --- /dev/null +++ b/fop/test/xml/bugtests/charwidth.fo @@ -0,0 +1,259 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> +<fo:layout-master-set> + <fo:simple-page-master margin-right="40pt" margin-left="40pt" master-name="one"> + <fo:region-body margin-bottom="30pt" margin-top="30pt"/> + </fo:simple-page-master> + </fo:layout-master-set> + <fo:page-sequence master-reference="one"> + <fo:flow font-size="12pt" flow-name="xsl-region-body"> + <fo:block> + This file contains a list of many characters in various fonts. The text is + aligned with the end in order to check that all the characters have their + correct width set in FOP. + </fo:block> + <fo:block> + If the right hand edge is left of the other lines in the same font then + this indicates it expects one (or more) of the characters to be wider + than it really is. Also if the end is to the right of the other lines + then FOP expects a character to be smaller than it really is or the + character is missing from the lookup. + </fo:block> + <fo:block font-size="12pt" font-family="Helvetica" text-align="end"> + <fo:block> + 1 + </fo:block> + <fo:block> + abcdefghijklmnopqrstuvwxyz1 + </fo:block> + <fo:block> + ABCDEFGHIJKLMNOPQRSTUVWXYZ1 + </fo:block> + <fo:block> + 12345678901 + </fo:block> + <fo:block> + `~!@#$%^&*()-_=+1 + </fo:block> + <fo:block> + [{]}\|;:'1 + </fo:block> + <fo:block> + ",<.>/?1 + </fo:block> + <fo:block> +!"#$%&'()*+,-./0123456789:;<1 + </fo:block> + <fo:block> +=>?@ABCDEFGHIJKLMNOPQRSTUVWX1 + </fo:block> + <fo:block> +YZ[\]^_`abcdefghijklmnopq1 + </fo:block> + <fo:block> +rstuvwxyz{|}~ ¡¢£¤¥¦§¨1 + </fo:block> + <fo:block> +©ª«¬®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁ1 + </fo:block> + <fo:block> +ÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙ1 + </fo:block> + <fo:block> +ÚÛÜÝÞßàáâãäåæçèéêëìíîïðñ1 + </fo:block> + <fo:block> +òóôõö÷øùúûüýþ1 + </fo:block> + </fo:block> + <fo:block font-size="12pt" font-family="Times Roman" text-align="end"> + <fo:block> + 1 + </fo:block> + <fo:block> + abcdefghijklmnopqrstuvwxyz1 + </fo:block> + <fo:block> + ABCDEFGHIJKLMNOPQRSTUVWXYZ1 + </fo:block> + <fo:block> + 12345678901 + </fo:block> + <fo:block> + `~!@#$%^&*()-_=+1 + </fo:block> + <fo:block> + [{]}\|;:'1 + </fo:block> + <fo:block> + ",<.>/?1 + </fo:block> + <fo:block> +!"#$%&'()*+,-./0123456789:;<1 + </fo:block> + <fo:block> +=>?@ABCDEFGHIJKLMNOPQRSTUVWX1 + </fo:block> + <fo:block> +YZ[\]^_`abcdefghijklmnopq1 + </fo:block> + <fo:block> +rstuvwxyz{|}~ ¡¢£¤¥¦§¨1 + </fo:block> + <fo:block> +©ª«¬®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁ1 + </fo:block> + <fo:block> +ÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙ1 + </fo:block> + <fo:block> +ÚÛÜÝÞßàáâãäåæçèéêëìíîïðñ1 + </fo:block> + <fo:block> +òóôõö÷øùúûüýþ1 + </fo:block> + </fo:block> + <fo:block font-family="Courier" text-align="end"> + <fo:block> + 1 + </fo:block> + <fo:block> + abcdefghijklmnopqrstuvwxyz1 + </fo:block> + <fo:block> + ABCDEFGHIJKLMNOPQRSTUVWXYZ1 + </fo:block> + <fo:block> + 12345678901 + </fo:block> + <fo:block> + `~!@#$%^&*()-_=+1 + </fo:block> + <fo:block> + [{]}\|;:'1 + </fo:block> + <fo:block> + ",<.>/?1 + </fo:block> + <fo:block> +!"#$%&'()*+,-./0123456789:;<1 + </fo:block> + <fo:block> +=>?@ABCDEFGHIJKLMNOPQRSTUVWX1 + </fo:block> + <fo:block> +YZ[\]^_`abcdefghijklmnopq1 + </fo:block> + <fo:block> +rstuvwxyz{|}~ ¡¢£¤¥¦§¨1 + </fo:block> + <fo:block> +©ª«¬®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁ1 + </fo:block> + <fo:block> +ÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙ1 + </fo:block> + <fo:block> +ÚÛÜÝÞßàáâãäåæçèéêëìíîïðñ1 + </fo:block> + <fo:block> +òóôõö÷øùúûüýþ1 + </fo:block> + </fo:block> + <fo:block font-family="ZapfDingbats" text-align="end"> + <fo:block> + 1 + </fo:block> + <fo:block> + abcdefghijklmnopqrstuvwxyz1 + </fo:block> + <fo:block> + ABCDEFGHIJKLMNOPQRSTUVWXYZ1 + </fo:block> + <fo:block> + 12345678901 + </fo:block> + <fo:block> + `~!@#$%^&*()-_=+1 + </fo:block> + <fo:block> + [{]}\|;:'1 + </fo:block> + <fo:block> + ",<.>/?1 + </fo:block> + <fo:block> +!"#$%&'()*+,-./0123456789:;<1 + </fo:block> + <fo:block> +=>?@ABCDEFGHIJKLMNOPQRSTUVWX1 + </fo:block> + <fo:block> +YZ[\]^_`abcdefghijklmnopq1 + </fo:block> + <fo:block> +rstuvwxyz{|}~ ¡¢£¤¥¦§¨1 + </fo:block> + <fo:block> +©ª«¬®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁ1 + </fo:block> + <fo:block> +ÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙ1 + </fo:block> + <fo:block> +ÚÛÜÝÞßàáâãäåæçèéêëìíîïðñ1 + </fo:block> + <fo:block> +òóôõö÷øùúûüýþ1 + </fo:block> + </fo:block> + <fo:block font-family="Symbol" text-align="end"> + <fo:block> + 1 + </fo:block> + <fo:block> + abcdefghijklmnopqrstuvwxyz1 + </fo:block> + <fo:block> + ABCDEFGHIJKLMNOPQRSTUVWXYZ1 + </fo:block> + <fo:block> + 12345678901 + </fo:block> + <fo:block> + `~!@#$%^&*()-_=+1 + </fo:block> + <fo:block> + [{]}\|;:'1 + </fo:block> + <fo:block> + ",<.>/?1 + </fo:block> + <fo:block> +!"#$%&'()*+,-./0123456789:;<1 + </fo:block> + <fo:block> +=>?@ABCDEFGHIJKLMNOPQRSTUVWX1 + </fo:block> + <fo:block> +YZ[\]^_`abcdefghijklmnopq1 + </fo:block> + <fo:block> +rstuvwxyz{|}~ ¡¢£¤¥¦§¨1 + </fo:block> + <fo:block> +©ª«¬®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁ1 + </fo:block> + <fo:block> +ÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙ1 + </fo:block> + <fo:block> +ÚÛÜÝÞßàáâãäåæçèéêëìíîïðñ1 + </fo:block> + <fo:block> +òóôõö÷øùúûüýþ1 + </fo:block> + </fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/color.fo b/fop/test/xml/bugtests/color.fo new file mode 100644 index 000000000..a4b252ac4 --- /dev/null +++ b/fop/test/xml/bugtests/color.fo @@ -0,0 +1,38 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="25cm" + page-width="20cm" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1.5cm" + margin-right="1.5cm"> + <fo:region-body margin-top="3cm" margin-bottom="3cm"/> + <fo:region-before extent="2.5cm"/> + <fo:region-after extent="2.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <fo:flow flow-name="xsl-region-body"> + <fo:block color="#C00000"> + This is a simple fo text in red color. + <fo:leader leader-pattern="rule" rule-thickness="3.0pt"></fo:leader> + </fo:block> + + <fo:block color="#00C000"> + This is a simple fo text in green color followed by black line. + <fo:leader color="#000000" leader-pattern="rule" rule-thickness="3.0pt"></fo:leader> + </fo:block> + + <fo:block color="#0000C0"> + This is a simple fo text in blue color. + <fo:inline color="#C055C0">This is in</fo:inline> + <fo:inline color="#550055">the same sentence</fo:inline> + This is text in blue again + <fo:leader leader-pattern="rule" rule-thickness="3.0pt"></fo:leader> + </fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/external-graphic.fo b/fop/test/xml/bugtests/external-graphic.fo new file mode 100644 index 000000000..f359fb5a5 --- /dev/null +++ b/fop/test/xml/bugtests/external-graphic.fo @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="25cm" + page-width="20cm" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1.5cm" + margin-right="1.5cm"> + <fo:region-body/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <fo:flow flow-name="xsl-region-body"> + <fo:block> + <fo:external-graphic src="file:../graphics/page.gif"/> + </fo:block> + + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/font-dir.fo b/fop/test/xml/bugtests/font-dir.fo new file mode 100644 index 000000000..c2178d7a1 --- /dev/null +++ b/fop/test/xml/bugtests/font-dir.fo @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="25cm" + page-width="20cm" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1.5cm" + margin-right="1.5cm"> + <fo:region-body margin-top="3cm" margin-bottom="3cm"/> + <fo:region-before extent="2.5cm"/> + <fo:region-after extent="2.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <fo:flow flow-name="xsl-region-body"> + <fo:block font-family="RageItalic" font-size="12pt"> + This is a simple fo text in Rage italic font. + </fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/font-family.fo b/fop/test/xml/bugtests/font-family.fo new file mode 100644 index 000000000..998458d38 --- /dev/null +++ b/fop/test/xml/bugtests/font-family.fo @@ -0,0 +1,76 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="25cm" + page-width="20cm" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1.5cm" + margin-right="1.5cm"> + <fo:region-body margin-top="3cm" margin-bottom="3cm"/> + <fo:region-before extent="2.5cm"/> + <fo:region-after extent="2.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <fo:flow flow-name="xsl-region-body"> + <fo:block> + default: + </fo:block> + <fo:block text-align="center"> + This is a simple fo text in FOP default font. + </fo:block> + <fo:block> + sans-serif: + </fo:block> + <fo:block text-align="center" font-family="sans-serif"> + This is a simple fo text in sans-serif font. + </fo:block> + + <fo:block> + monospace: + </fo:block> + <fo:block text-align="center" font-family="monospace"> + This is a simple fo text in monospace font. + </fo:block> + + <fo:block> + Courier: + </fo:block> + <fo:block text-align="center" font-family="Courier"> + This is a simple fo text in Courier font. + </fo:block> + + <fo:block> + Helvetica: + </fo:block> + <fo:block text-align="center" font-family="Helvetica"> + This is a simple fo text in Helvetica font. + </fo:block> + + <fo:block> + Symbol: + </fo:block> + <fo:block text-align="center" font-family="Symbol"> + This is a simple fo text in Symbol font. + </fo:block> + + <fo:block> + Times Roman: + </fo:block> + <fo:block text-align="center" font-family="Times Roman"> + This is a simple fo text in Times Roman font. + </fo:block> + + <fo:block> + ZapfDingbats: + </fo:block> + <fo:block text-align="center" font-family="ZapfDingbats"> + This is a simple fo text in ZapfDingBats font. + </fo:block> + + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/font-size.fo b/fop/test/xml/bugtests/font-size.fo new file mode 100644 index 000000000..a9c920b7b --- /dev/null +++ b/fop/test/xml/bugtests/font-size.fo @@ -0,0 +1,53 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="25cm" + page-width="20cm" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1.5cm" + margin-right="1.5cm"> + <fo:region-body margin-top="3cm" margin-bottom="3cm"/> + <fo:region-before extent="2.5cm"/> + <fo:region-after extent="2.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <fo:flow flow-name="xsl-region-body"> + <fo:block> + This is a simple fo text in FOP default font size and default font. + </fo:block> + + <fo:block font-family="Courier" font-size="8pt"> + This is a simple fo text in 8pt font Courier. + </fo:block> + <fo:block font-family="Courier" font-size="10pt"> + This is a simple fo text in 10pt font. + </fo:block> + <fo:block font-family="Courier" font-size="12pt"> + This is a simple fo text in 12pt font. + </fo:block> + <fo:block font-family="Courier" font-size="14pt"> + This is a simple fo text in 14pt font. + </fo:block> + <fo:block font-family="Courier" font-size="16pt"> + This is a simple fo text in 16pt font. + </fo:block> + <fo:block font-family="Courier" font-size="18pt"> + This is a simple fo text in 18pt font. + </fo:block> + <fo:block font-family="Courier" font-size="20pt"> + This is a simple fo text in 20pt font. + </fo:block> + <fo:block font-family="Courier" font-size="24pt"> + This is a simple fo text in 24pt font. + </fo:block> + <fo:block font-family="Courier" font-size="32pt"> + This is a simple fo text in 32pt font. + </fo:block> + + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/font.fo b/fop/test/xml/bugtests/font.fo new file mode 100644 index 000000000..8740f4429 --- /dev/null +++ b/fop/test/xml/bugtests/font.fo @@ -0,0 +1,85 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="25cm" + page-width="20cm" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1.5cm" + margin-right="1.5cm"> + <fo:region-body margin-top="3cm" margin-bottom="3cm"/> + <fo:region-before extent="2.5cm"/> + <fo:region-after extent="2.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <fo:flow flow-name="xsl-region-body"> + <fo:block font-family="Courier" font-size="12pt"> + This is a simple fo text in Courier font. + </fo:block> + <fo:block font-family="Courier" font-size="12pt" + font-weight="bold"> + This is a simple fo text in bold. + </fo:block> + <fo:block font-family="Courier" font-size="12pt" + font-style="italic"> + This is a simple fo text in italic. + </fo:block> + <fo:block font-family="Courier" font-size="12pt" + font-style="italic" font-weight="bold"> + This is a simple fo text in italic and bold. + </fo:block> + <fo:block font-family="Courier" font-size="12pt" + font-variant="small-caps"> + This is a simple fo text in small caps. + </fo:block> + + <fo:block space-before.optimum="1cm"></fo:block> + + <fo:block font-family="Times" font-size="12pt"> + This is a simple fo text in Times font. + </fo:block> + <fo:block font-family="Times" font-size="12pt" + font-weight="bold"> + This is a simple fo text in bold. + </fo:block> + <fo:block font-family="Times" font-size="12pt" + font-style="italic"> + This is a simple fo text in italic. + </fo:block> + <fo:block font-family="Times" font-size="12pt" + font-style="italic" font-weight="bold"> + This is a simple fo text in italic and bold. + </fo:block> + <fo:block font-family="Times" font-size="12pt" + font-variant="small-caps"> + This is a simple fo text in small caps. + </fo:block> + + <fo:block space-before.optimum="1cm"></fo:block> + + <fo:block font-family="Helvetica" font-size="12pt"> + This is a simple fo text in Helvetica font. + </fo:block> + <fo:block font-family="Helvetica" font-size="12pt" + font-weight="bold"> + This is a simple fo text in bold. + </fo:block> + <fo:block font-family="Helvetica" font-size="12pt" + font-style="italic"> + This is a simple fo text in italic. + </fo:block> + <fo:block font-family="Helvetica" font-size="12pt" + font-style="italic" font-weight="bold"> + This is a simple fo text in italic and bold. + </fo:block> + <fo:block font-family="Helvetica" font-size="12pt" + font-variant="small-caps"> + This is a simple fo text in small caps. + </fo:block> + + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/header_footer.fo b/fop/test/xml/bugtests/header_footer.fo new file mode 100644 index 000000000..d278e818a --- /dev/null +++ b/fop/test/xml/bugtests/header_footer.fo @@ -0,0 +1,137 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="25cm" + page-width="18cm" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1.5cm" + margin-right="1.5cm"> + <fo:region-body margin-top="4cm" margin-bottom="3cm"/> + <fo:region-before extent="3cm"/> + <fo:region-after extent="3cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <!-- header --> + <fo:static-content flow-name="xsl-region-before"> + <fo:block-container width="5cm" height="3cm" position="absolute" background-color="#22CC55"> + <fo:block text-align="start"> + Left + </fo:block> + </fo:block-container> + <fo:block-container width="5cm" height="3cm" left="5cm" position="absolute" background-color="#55AA55"> + <fo:block text-align="center"> + Center + </fo:block> + </fo:block-container> + <fo:block-container width="5cm" height="3cm" left="10cm" position="absolute" background-color="#FFCCFF"> + <fo:block text-align="end"> + Right + </fo:block> + </fo:block-container> + + </fo:static-content> + + <!-- footer --> + <fo:static-content flow-name="xsl-region-after"> + <fo:block-container width="5cm" height="3cm" position="absolute"> + <fo:block text-align="start"> + Left + </fo:block> + </fo:block-container> + <fo:block-container width="5cm" height="3cm" left="5cm" position="absolute"> + <fo:block text-align="center"> + Center + </fo:block> + </fo:block-container> + <fo:block-container width="5cm" height="3cm" left="10cm" position="absolute"> + <fo:block text-align="end"> + Right + </fo:block> + </fo:block-container> + + </fo:static-content> + + <fo:flow flow-name="xsl-region-body"> + <fo:block> + There is top-margin for body region.This is bcos margin-top for body is greater than extent of region-before. + </fo:block> + <fo:block> + There is NO bottom-margin for body region. Bcos margin-bottom for body = extent for region-after. + </fo:block> + <fo:block> + </fo:block> + <fo:block> + The fo:static-content formatting object holds a sequence or a tree of formatting objects that is to be presented in a single region or repeated in like-named regions on one or more pages in the page-sequence. Its common use is for repeating or running headers and footers. + </fo:block> + <fo:block> + This content is repeated, in its entirety, on every page to which it is assigned. + </fo:block> + <fo:block> + This content is repeated, in its entirety, on every page to which it is assigned. + </fo:block> + <fo:block> + This content is repeated, in its entirety, on every page to which it is assigned. + </fo:block> + <fo:block> + This content is repeated, in its entirety, on every page to which it is assigned. + </fo:block> + <fo:block> + This content is repeated, in its entirety, on every page to which it is assigned. + </fo:block> + <fo:block> + This content is repeated, in its entirety, on every page to which it is assigned. + </fo:block> + <fo:block> + This content is repeated, in its entirety, on every page to which it is assigned. + </fo:block> + <fo:block> + This content is repeated, in its entirety, on every page to which it is assigned. + </fo:block> + <fo:block> + This content is repeated, in its entirety, on every page to which it is assigned. + </fo:block> + <fo:block> + This content is repeated, in its entirety, on every page to which it is assigned. + </fo:block> + <fo:block> + This content is repeated, in its entirety, on every page to which it is assigned. + </fo:block> + <fo:block> + This content is repeated, in its entirety, on every page to which it is assigned. + </fo:block> + <fo:block> + This content is repeated, in its entirety, on every page to which it is assigned. + </fo:block> + <fo:block> + This content is repeated, in its entirety, on every page to which it is assigned. + </fo:block> + <fo:block> + This content is repeated, in its entirety, on every page to which it is assigned. + </fo:block> + <fo:block> + This content is repeated, in its entirety, on every page to which it is assigned. + </fo:block> + <fo:block> + This content is repeated, in its entirety, on every page to which it is assigned. + </fo:block> + <fo:block> +The fo:static-content formatting object does not generate any areas. The fo:static-content formatting object returns the sequence of areas created by concatenating the sequences of areas returned by each of the children of the fo:static-content. The order of concatenation is the same order as the children are ordered under the fo:static-content. + </fo:block> + <fo:block> +The fo:static-content formatting object does not generate any areas. The fo:static-content formatting object returns the sequence of areas created by concatenating the sequences of areas returned by each of the children of the fo:static-content. The order of concatenation is the same order as the children are ordered under the fo:static-content. + </fo:block> + <fo:block> +The fo:static-content formatting object does not generate any areas. The fo:static-content formatting object returns the sequence of areas created by concatenating the sequences of areas returned by each of the children of the fo:static-content. The order of concatenation is the same order as the children are ordered under the fo:static-content. + </fo:block> + <fo:block> +The fo:static-content formatting object does not generate any areas. The fo:static-content formatting object returns the sequence of areas created by concatenating the sequences of areas returned by each of the children of the fo:static-content. The order of concatenation is the same order as the children are ordered under the fo:static-content. + </fo:block> + + </fo:flow> + + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/image.fo b/fop/test/xml/bugtests/image.fo new file mode 100644 index 000000000..cc9270056 --- /dev/null +++ b/fop/test/xml/bugtests/image.fo @@ -0,0 +1,43 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="25cm" + page-width="10cm" + margin-top="3cm" + margin-bottom="2cm" + margin-left="3cm" + margin-right="2cm"> + <fo:region-body/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <fo:flow flow-name="xsl-region-body"> + <fo:block> + <fo:external-graphic src="file:../graphics/page.gif"/> + </fo:block> + + <fo:block> + <fo:external-graphic height="3in" width="3in" src="file:../graphics/page.gif"/> + height=3in width=3in + </fo:block> + + <fo:block> + <fo:external-graphic height="3in" src="file:../graphics/page.gif"/> + height="3in" + </fo:block> + + <fo:block> + <fo:external-graphic width="1.5in" src="file:../graphics/page.gif"/> + width="1.5in" + </fo:block> + + <fo:block> + <fo:external-graphic height="6in" width="4in" src="file:../graphics/page.gif"/> + height="6in" width="4in" + </fo:block> + + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/indent.fo b/fop/test/xml/bugtests/indent.fo new file mode 100644 index 000000000..ab3d91be0 --- /dev/null +++ b/fop/test/xml/bugtests/indent.fo @@ -0,0 +1,55 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="25cm" + page-width="20cm" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1.5cm" + margin-right="1.5cm"> + <fo:region-body margin-top="3cm" margin-bottom="3cm"/> + <fo:region-before extent="2.5cm"/> + <fo:region-after extent="2.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <fo:flow flow-name="xsl-region-body"> + <fo:block text-align="justify" start-indent="1in"> + This is a simple fo block with justify indented in the start. + This is a simple fo block indented in the start. + This is a simple fo block indented in the start. + This is a simple fo block indented in the start. + This is a simple fo block indented in the start. + This is a simple fo block indented in the start. + </fo:block> + <fo:block text-align="justify" end-indent="1in"> + This is a simple fo block with justify indented in the end. + This is a simple fo block indented in the end. + This is a simple fo block indented in the end. + This is a simple fo block indented in the end. + This is a simple fo block indented in the end. + This is a simple fo block indented in the end. + </fo:block> + <fo:block start-indent="1in"> + This is a simple fo block indented in the start. + This is a simple fo block indented in the start. + This is a simple fo block indented in the start. + This is a simple fo block indented in the start. + This is a simple fo block indented in the start. + This is a simple fo block indented in the start. + This is a simple fo block indented in the start. + </fo:block> + <fo:block end-indent="1in"> + This is a simple fo block indented in the end. + This is a simple fo block indented in the end. + This is a simple fo block indented in the end. + This is a simple fo block indented in the end. + This is a simple fo block indented in the end. + This is a simple fo block indented in the end. + This is a simple fo block indented in the end. + </fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/inline.fo b/fop/test/xml/bugtests/inline.fo new file mode 100644 index 000000000..8ae7aeee8 --- /dev/null +++ b/fop/test/xml/bugtests/inline.fo @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="25cm" + page-width="20cm" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1.5cm" + margin-right="1.5cm"> + <fo:region-body margin-top="3cm" margin-bottom="3cm"/> + <fo:region-before extent="2.5cm"/> + <fo:region-after extent="2.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <fo:flow flow-name="xsl-region-body"> + <fo:block> + <fo:inline>The sentence is</fo:inline> + <fo:inline>in the same line.</fo:inline> + </fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/keep-with-next.fo b/fop/test/xml/bugtests/keep-with-next.fo new file mode 100644 index 000000000..ba808219b --- /dev/null +++ b/fop/test/xml/bugtests/keep-with-next.fo @@ -0,0 +1,88 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="11in" + page-width="8.5in" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1in" + margin-right="0.75in"> + <fo:region-body margin-top="3cm" margin-bottom="3cm"/> + <fo:region-before extent="2.5cm"/> + <fo:region-after extent="2.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <fo:flow flow-name="xsl-region-body"> + <fo:block space-before.optimum="1cm" font-family="monospace" font-size="10pt" white-space-treatment="preserve" wrap-option="no-wrap"> + F I N A L C A L C U L A T I O N AUD $ AUD $ + ---------------------------------- + L A B O U R TIME BASIS 10 WU = 1 HR + TOTAL 33 WU X 20.00AUD $/WU 660.00 + TOTAL LABOUR................................................. 660.00 + P A I N T W O R K + LABOUR COST 210.00 + MATERIAL COST 163.20 + TOTAL PAINT.................................................. 373.20 + P A R T S 425.00 + SUNDRY PARTS ( 2.0%) 8.50 + TOTAL PARTS.................................................. 433.50 + R E P A I R C O S T S....................................... 1 466.70 + ---------------------- +C O M M E N T S : +E-PART PRICES = MANUFACTURERS RRP. *-POSITION = USER SUPPLIED DATA +E-PART NUMBER IS NOT ORDER NUMBER NN = NO MANUFACTURERS CODE EXISTS +SKEZAX=WORKING UNITS AS PER AUDATEX )=WU PARTIAL INCL IN OTHER POSITIONS +C O N T R O L - I N F O R M A T I O N NO 666 25.08.2000 +OWNER MRS SARAH + SCHAER GUNDELDINGERSTRASSE 131 + 4053 BASEL +REFER. NO. 999 +MAKE AUDI S4 QUATTRO +REG. NO BS 66961 SHEET NO 00 33 03 +FIRST REG. 08.2000 NAECH HU 08.2000 +INSP DATE 24.08.2000 ACC DATE 24.08.2000 +REPAIRER ZICK ZACK 061/ 361 76 06 + MR. MEIER ZOLLSTRASSE 62 + 8000 ZUERICH +REP TIME . DAYS +CU-NO / CUSTOMER-CODE : 004001 ZATEST01 CLASSDIRECT REL 2.9 +QUOTE DATE : 25.08.2000 +MO-CODE +- MODEL-OPTIONS : E3 F3 I4 I7 J6 K2 M8 P8 Q6 Q7 V3 V6 W4 Z8 +PARTS / PAINTING +- REP-METHOD/CODE-NO : N 0741 LO + </fo:block> + + <fo:block keep-with-next="true" font-family="Helvetica" font-size="10pt"> + The following is the control page for the Repair Assessment. It includes the + <fo:inline font-weight="bold">Owner</fo:inline><fo:inline>, Reference No, Make, Reg No, and Options.</fo:inline> + </fo:block> + + <fo:block space-before.optimum="2cm" font-family="monospace" font-size="10pt" white-space-treatment="preserve" wrap-option="no-wrap"> +R E P A I R /-/ A S S E S S M E N T NO 666 25.08.2000 +OWNER MRS SARAH + SCHAER GUNDELDINGERSTRASSE 131 + 4053 BASEL +REFER. NO. 999 + +MAKE AUDI S4 QUATTRO +REG. NO BS 66961 SHEET NO 00 33 03 +FIRST REG. 08.2000 NAECH HU 08.2000 +INSP DATE 24.08.2000 ACC DATE 24.08.2000 +REPAIRER ZICK ZACK 061/ 361 76 06 + MR. MEIER ZOLLSTRASSE 62 + 8000 ZUERICH +REP TIME . DAYS + +OPTIONS FROM VIN X_200001 LUGGAGE NET ELECTRIC FRONT SEATS + AUTO HEADLAMP LEVEL SPORT SEATS TRIM-JACQUARD GRAPH + ALTERNATOR 120 AMP 4-SPEED AUTOMATIC SPORTS SUSPENSION + ANTI-LOCK BRAKES ELECT STABILITY PROG SUNROOF (ACCESSORY) + 2.7 LTR V6 + </fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/leader.fo b/fop/test/xml/bugtests/leader.fo new file mode 100644 index 000000000..384ecf21f --- /dev/null +++ b/fop/test/xml/bugtests/leader.fo @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="25cm" + page-width="20cm" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1.5cm" + margin-right="1.5cm"> + <fo:region-body margin-top="3cm" margin-bottom="3cm"/> + <fo:region-before extent="2.5cm"/> + <fo:region-after extent="2.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <fo:flow flow-name="xsl-region-body"> + <fo:block> + <fo:leader leader-pattern="rule" rule-thickness="3.0pt"></fo:leader> + </fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/letter-spacing.fo b/fop/test/xml/bugtests/letter-spacing.fo new file mode 100644 index 000000000..abd022c93 --- /dev/null +++ b/fop/test/xml/bugtests/letter-spacing.fo @@ -0,0 +1,59 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="25cm" + page-width="20cm" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1.5cm" + margin-right="1.5cm"> + <fo:region-body margin-top="3cm" margin-bottom="3cm"/> + <fo:region-before extent="2.5cm"/> + <fo:region-after extent="2.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <fo:flow flow-name="xsl-region-body"> + <fo:block letter-spacing="normal"> + This text is normally spaced. + This text is normally spaced. + This text is normally spaced. + This text is normally spaced. + This text is normally spaced. + </fo:block> + + + <fo:block letter-spacing="1pt"> + This text has inter-character intervals increased by 1pt. + This text has inter-character intervals increased by 1pt. + This text has inter-character intervals increased by 1pt. + This text has inter-character intervals increased by 1pt. + </fo:block> + + + <fo:block letter-spacing="8pt"> + This text has inter-character intervals increased by 8pt. + This text has inter-character intervals increased by 8pt. + This text has inter-character intervals increased by 8pt. + This text has inter-character intervals increased by 8pt. + </fo:block> + + <fo:block letter-spacing="0pt"> + This text has inter-character intervals increased by 0pt (i.e. normally spaced). + This text has inter-character intervals increased by 0pt (i.e. normally spaced). + This text has inter-character intervals increased by 0pt (i.e. normally spaced). + This text has inter-character intervals increased by 0pt (i.e. normally spaced). + </fo:block> + + <fo:block letter-spacing="-1pt"> + This text has inter-character intervals increased by reduced by -1pt. + This text has inter-character intervals increased by reduced by -1pt. + This text has inter-character intervals increased by reduced by -1pt. + This text has inter-character intervals increased by reduced by -1pt. + </fo:block> + + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/line-height.fo b/fop/test/xml/bugtests/line-height.fo new file mode 100644 index 000000000..640fe462c --- /dev/null +++ b/fop/test/xml/bugtests/line-height.fo @@ -0,0 +1,108 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="25cm" + page-width="20cm" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1.5cm" + margin-right="1.5cm"> + <fo:region-body margin-top="3cm" margin-bottom="3cm"/> + <fo:region-before extent="2.5cm"/> + <fo:region-after extent="2.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <fo:flow flow-name="xsl-region-body"> + <fo:block font-weight="bold" text-align="center"> + <fo:inline text-decoration="underline"> + Absolute Values + </fo:inline> + </fo:block> + + + <fo:block line-height="12pt" font-size="8pt"> + This text has a fixed line height of 12pt and its font size is 8pt. + This text has a fixed line height of 12pt and its font size is 8pt. + This text has a fixed line height of 12pt and its font size is 8pt. + This text has a fixed line height of 12pt and its font size is 8pt. + This text has a fixed line height of 12pt and its font size is 8pt. + </fo:block> + + + <fo:block text-align="start" space-before.optimum="6pt" line-height="12pt" font-size="12pt"> + This text has a fixed line height of 12pt and its font size is 12pt. + This text has a fixed line height of 12pt and its font size is 12pt. + This text has a fixed line height of 12pt and its font size is 12pt. + This text has a fixed line height of 12pt and its font size is 12pt. + This text has a fixed line height of 12pt and its font size is 12pt. + </fo:block> + + + <fo:block text-align="start" space-before.optimum="6pt" line-height="12pt" font-size="16pt"> + This text has a fixed line height of 12pt and its font size is 16pt. + This text has a fixed line height of 12pt and its font size is 16pt. + This text has a fixed line height of 12pt and its font size is 16pt. + This text has a fixed line height of 12pt and its font size is 16pt. + This text has a fixed line height of 12pt and its font size is 16pt. + </fo:block> + + <fo:block font-weight="bold" text-align="center"> + <fo:inline text-decoration="underline"> + Relative Values + </fo:inline> + </fo:block> + + <fo:block text-align="start" space-before.optimum="6pt" line-height="normal" font-size="10pt"> + This text has a normal line height at font size of 10pt. + This text has a normal line height at font size of 10pt. + This text has a normal line height at font size of 10pt. + This text has a normal line height at font size of 10pt. + This text has a normal line height at font size of 10pt. + </fo:block> + + <fo:block text-align="start" space-before.optimum="6pt" line-height="normal" font-size="14pt"> + This text has a normal line height at font size of 14pt. + This text has a normal line height at font size of 14pt. + This text has a normal line height at font size of 14pt. + This text has a normal line height at font size of 14pt. + This text has a normal line height at font size of 14pt. + </fo:block> + + <fo:block text-align="start" space-before.optimum="6pt" line-height="1.0" font-size="10pt"> + This text is single-spaced at font size of 10pt. + This text is single-spaced at font size of 10pt. + This text is single-spaced at font size of 10pt. + This text is single-spaced at font size of 10pt. + This text is single-spaced at font size of 10pt. + </fo:block> + + <fo:block text-align="start" space-before.optimum="6pt" line-height="1.0" font-size="14pt"> + This text is single-spaced at font size of 14pt. + This text is single-spaced at font size of 14pt. + This text is single-spaced at font size of 14pt. + This text is single-spaced at font size of 14pt. + This text is single-spaced at font size of 14pt. + </fo:block> + + <fo:block text-align="start" space-before.optimum="6pt" line-height="2.0" font-size="10pt"> + This text is double-spaced at font size of 10pt. + This text is double-spaced at font size of 10pt. + This text is double-spaced at font size of 10pt. + This text is double-spaced at font size of 10pt. + This text is double-spaced at font size of 10pt. + </fo:block> + + <fo:block text-align="start" space-before.optimum="6pt" line-height="2.0" font-size="14pt"> + This text is double-spaced at font size of 14pt. + This text is double-spaced at font size of 14pt. + This text is double-spaced at font size of 14pt. + This text is double-spaced at font size of 14pt. + This text is double-spaced at font size of 14pt. + </fo:block> + + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/list-mountjoy.fo b/fop/test/xml/bugtests/list-mountjoy.fo new file mode 100644 index 000000000..9c47fd93c --- /dev/null +++ b/fop/test/xml/bugtests/list-mountjoy.fo @@ -0,0 +1,244 @@ +<?xml version="1.0" encoding="utf-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + + <!-- 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" + 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> + + <!-- starts actual layout --> + <fo:page-sequence master-reference="first"> + + <!-- Inserts a header with the page number --> + <fo:static-content flow-name="xsl-region-before"> + <fo:block text-align="end" font-size="10pt" font-family="serif" line-height="14pt"> + XSL-FO Example: simple list - p. <fo:page-number/> + </fo:block> + </fo:static-content> + + <fo:flow flow-name="xsl-region-body"> + + <!-- title --> + <fo:block font-size="14pt" + font-family="sans-serif" + line-height="18pt" + space-before.optimum="3pt" + space-after.optimum="3pt" + font-weight="bold" + start-indent="15pt"> + Validity Constraint: Standalone Document Declaration + </fo:block> + + <!-- normal text --> + <fo:block font-size="12pt" + font-family="sans-serif" + line-height="15pt" + space-after.optimum="3pt" > + The standalone document declaration must have the value "no" if + any external markup declarations contain declarations of: + </fo:block> + + <!-- list --> + <fo:list-block> + + <!-- list item --> + <fo:list-item> + <!-- insert a bullet --> + <fo:list-item-label end-indent="label-end()"> + <fo:block>•</fo:block> + </fo:list-item-label> + <!-- list text --> + <fo:list-item-body start-indent="body-start()"> + <fo:block> + attributes with default values, if elements to which these attributes apply appear in the document without specifications of values for these attributes, or + </fo:block> + </fo:list-item-body> + </fo:list-item> + + <!-- list item --> + <fo:list-item> + <!-- insert a bullet --> + <fo:list-item-label end-indent="label-end()"> + <fo:block>•</fo:block> + </fo:list-item-label> + <!-- list text --> + <fo:list-item-body start-indent="body-start()"> + <fo:block> + entities (other than amp, lt, gt, apos, quot), if references to those entities appear in the document, or + </fo:block> + </fo:list-item-body> + </fo:list-item> + + <!-- list entry --> + <fo:list-item> + <!-- insert a bullet --> + <fo:list-item-label end-indent="label-end()"> + <fo:block>•</fo:block> + </fo:list-item-label> + <!-- list text --> + <fo:list-item-body start-indent="body-start()"> + <fo:block> + attributes with values subject to normalization, where the attribute appears in the document with a value which will + </fo:block> + </fo:list-item-body> + </fo:list-item> + + <!-- list entry --> + <fo:list-item> + <!-- insert a bullet --> + <fo:list-item-label end-indent="label-end()"> + <fo:block>•</fo:block> + </fo:list-item-label> + <!-- list text --> + <fo:list-item-body start-indent="body-start()"> + <fo:block> + change as a result of normalization, or + </fo:block> + </fo:list-item-body> + </fo:list-item> + + <!-- list entry --> + <fo:list-item> + <!-- insert a bullet --> + <fo:list-item-label end-indent="label-end()"> + <fo:block>•</fo:block> + </fo:list-item-label> + <!-- list text --> + <fo:list-item-body start-indent="body-start()"> + <fo:block> + + element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white spaceadsfadsfsssssssssssssss thin any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white spaceadsfadsfssssssssthin any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white spaceadsfadsfssssssssthin any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white spaceadsfadsfssssssssthin any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white spaceadsfadsfssssssss + element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. elementtance of those types. sfg sfd gdg d d + </fo:block> + </fo:list-item-body> + </fo:list-item> + + + + + <fo:list-item> + <fo:list-item-label end-indent="label-end()"> <fo:block/></fo:list-item-label> + <fo:list-item-body start-indent="body-start()"> + <fo:list-block> + + <!-- list item --> + <fo:list-item> + <!-- insert a bullet --> + <fo:list-item-label end-indent="label-end()"> + <fo:block>•</fo:block> + </fo:list-item-label> + <!-- list text --> + <fo:list-item-body start-indent="body-start()"> + <fo:block> + attributes with default values, if elements to which these attributes apply appear in the document without specifications of values for these attributes, or + </fo:block> + </fo:list-item-body> + </fo:list-item> + <!-- list item --> + <fo:list-item> + <!-- insert a bullet --> + <fo:list-item-label end-indent="label-end()"> + <fo:block>•</fo:block> + </fo:list-item-label> + <!-- list text --> + <fo:list-item-body start-indent="body-start()"> + <fo:block> + attributes with default values, if elements to which these attributes apply appear in the document without specifications of values for these attributes, or + </fo:block> + </fo:list-item-body> + </fo:list-item> + <!-- list item --> + <fo:list-item> + <!-- insert a bullet --> + <fo:list-item-label end-indent="label-end()"> + <fo:block>•</fo:block> + </fo:list-item-label> + <!-- list text --> + <fo:list-item-body start-indent="body-start()"> + <fo:block> + attributes with default values, if elements to which these attributes apply appear in the document without specifications of values for these attributes, or + </fo:block> + </fo:list-item-body> + </fo:list-item> + <!-- list item --> + <fo:list-item> + <!-- insert a bullet --> + <fo:list-item-label end-indent="label-end()"> + <fo:block>•</fo:block> + </fo:list-item-label> + <!-- list text --> + <fo:list-item-body start-indent="body-start()"> + <fo:block> + attributes with default values, if elements to which these attributes apply appear in the document without specifications of values for these attributes, or + </fo:block> + </fo:list-item-body> + </fo:list-item> + </fo:list-block> + </fo:list-item-body> + </fo:list-item> + + + <!-- list entry --> + <fo:list-item> + <!-- insert a bullet --> + <fo:list-item-label end-indent="label-end()"> + <fo:block>•</fo:block> + </fo:list-item-label> + <!-- list text --> + <fo:list-item-body start-indent="body-start()"> + <fo:block> + element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. elementtance of those types. + </fo:block> + </fo:list-item-body> + </fo:list-item> + <!-- list entry --> + <fo:list-item> + <!-- insert a bullet --> + <fo:list-item-label end-indent="label-end()"> + <fo:block>•</fo:block> + </fo:list-item-label> + <!-- list text --> + <fo:list-item-body start-indent="body-start()"> + <fo:block> + element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. elementtance of those types. + </fo:block> + </fo:list-item-body> + </fo:list-item> + <!-- list entry --> + <fo:list-item> + <!-- insert a bullet --> + <fo:list-item-label end-indent="label-end()"> + <fo:block>•</fo:block> + </fo:list-item-label> + <!-- list text --> + <fo:list-item-body start-indent="body-start()"> + <fo:block> + element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. element types with element content, if white space occurs directly within any instance of those types. elementtance of those types. + </fo:block> + </fo:list-item-body> + </fo:list-item> + + + + + + + + + </fo:list-block> + + + </fo:flow> + </fo:page-sequence> +</fo:root> + + diff --git a/fop/test/xml/bugtests/list-nested-breaks.fo b/fop/test/xml/bugtests/list-nested-breaks.fo new file mode 100644 index 000000000..6d75b5969 --- /dev/null +++ b/fop/test/xml/bugtests/list-nested-breaks.fo @@ -0,0 +1,196 @@ +<?xml version="1.0" encoding="utf-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + + <!-- 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" + 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> + + <!-- starts actual layout --> + <fo:page-sequence master-reference="first"> + + <!-- Inserts a header with the page number --> + <fo:static-content flow-name="xsl-region-before"> + <fo:block text-align="end" font-size="10pt" font-family="serif" line-height="14pt"> + XSL-FO Example: simple list - p. <fo:page-number/> + </fo:block> + </fo:static-content> + + <fo:flow flow-name="xsl-region-body"> + + <!-- title --> + <fo:block font-size="14pt" + font-family="sans-serif" + line-height="18pt" + space-before.optimum="3pt" + space-after.optimum="3pt" + font-weight="bold" + start-indent="15pt"> + Validity Constraint: Standalone Document Declaration + </fo:block> + + <!-- normal text --> + <fo:block font-size="12pt" + font-family="sans-serif" + line-height="15pt" + space-after.optimum="3pt" > + The standalone document declaration must have the value "no" if + any external markup declarations contain declarations of: + </fo:block> + + <!-- 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 --> + <fo:list-item-body start-indent="body-start()"> + <fo:block> + attributes with default values, if elements to which these attributes apply appear in the document without specifications of values for these attributes, or + </fo:block> + </fo:list-item-body> + </fo:list-item> + + <!-- 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 --> + <fo:list-item-body start-indent="body-start()"> + <fo:block> + entities (other than amp, lt, gt, apos, quot), if references to those entities appear in the document, or + </fo:block> + </fo:list-item-body> + </fo:list-item> + + <!-- list entry --> + <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 --> + <fo:list-item-body start-indent="body-start()"> + <fo:block> + attributes with values subject to normalization, where the attribute appears in the document with a value which will + </fo:block> + </fo:list-item-body> + </fo:list-item> + + <!-- list entry --> + <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 --> + <fo:list-item-body start-indent="body-start()"> + <fo:block> + change as a result of normalization, or + </fo:block> + </fo:list-item-body> + </fo:list-item> + + <!-- list entry --> + <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 --> + <fo:list-item-body start-indent="body-start()"> + <fo:block> + element types with element content, if white space occurs directly within any instance of those types. + <fo:list-block> + <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> + <fo:list-item-body start-indent="body-start()"> + <fo:block>This is the first item of a nested list</fo:block> + </fo:list-item-body> + </fo:list-item> + <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> + <fo:list-item-body start-indent="body-start()"> + <fo:block>This is the second item of a nested list</fo:block> + </fo:list-item-body> + </fo:list-item> + <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> + <fo:list-item-body start-indent="body-start()"> + <fo:block>This is the third item of a nested list. The next list item's block will have a page break-after</fo:block> + </fo:list-item-body> + </fo:list-item> + <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> + <fo:list-item-body start-indent="body-start()"> + <fo:block break-after="page">This is the fourth item of a nested list</fo:block> + </fo:list-item-body> + </fo:list-item> + <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> + <fo:list-item-body start-indent="body-start()"> + <fo:block>This is the fifth item of a nested list</fo:block> + </fo:list-item-body> + </fo:list-item> + <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> + <fo:list-item-body start-indent="body-start()"> + <fo:block>This is the sixth item of a nested list. The next list-item-body's block contains a page break-before.</fo:block> + </fo:list-item-body> + </fo:list-item> + <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> + <fo:list-item-body start-indent="body-start()"> + <fo:block break-before="page">This is the seventh item of a nested list</fo:block> + </fo:list-item-body> + </fo:list-item> + <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> + <fo:list-item-body start-indent="body-start()"> + <fo:block>This is the eigth item of a nested list</fo:block> + </fo:list-item-body> + </fo:list-item> + </fo:list-block> + </fo:block> + </fo:list-item-body> + </fo:list-item> + + </fo:list-block> + <!-- end list --> + + </fo:flow> + </fo:page-sequence> +</fo:root> + + diff --git a/fop/test/xml/bugtests/list-nested.fo b/fop/test/xml/bugtests/list-nested.fo new file mode 100644 index 000000000..b52fb42c9 --- /dev/null +++ b/fop/test/xml/bugtests/list-nested.fo @@ -0,0 +1,172 @@ +<?xml version="1.0" encoding="utf-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + + <!-- 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" + 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> + + <!-- starts actual layout --> + <fo:page-sequence master-reference="first"> + + <!-- Inserts a header with the page number --> + <fo:static-content flow-name="xsl-region-before"> + <fo:block text-align="end" font-size="10pt" font-family="serif" line-height="14pt"> + XSL-FO Example: simple list - p. <fo:page-number/> + </fo:block> + </fo:static-content> + + <fo:flow flow-name="xsl-region-body"> + + <!-- title --> + <fo:block font-size="14pt" + font-family="sans-serif" + line-height="18pt" + space-before.optimum="3pt" + space-after.optimum="3pt" + font-weight="bold" + start-indent="15pt"> + Validity Constraint: Standalone Document Declaration + </fo:block> + + <!-- normal text --> + <fo:block font-size="12pt" + font-family="sans-serif" + line-height="15pt" + space-after.optimum="3pt" > + The standalone document declaration must have the value "no" if + any external markup declarations contain declarations of: + </fo:block> + + <!-- 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 --> + <fo:list-item-body start-indent="body-start()"> + <fo:block> + attributes with default values, if elements to which these attributes apply appear in the document without specifications of values for these attributes, or + </fo:block> + </fo:list-item-body> + </fo:list-item> + + <!-- 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 --> + <fo:list-item-body start-indent="body-start()"> + <fo:block> + entities (other than amp, lt, gt, apos, quot), if references to those entities appear in the document, or + </fo:block> + </fo:list-item-body> + </fo:list-item> + + <!-- list entry --> + <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 --> + <fo:list-item-body start-indent="body-start()"> + <fo:block> + attributes with values subject to normalization, where the attribute appears in the document with a value which will + </fo:block> + </fo:list-item-body> + </fo:list-item> + + <!-- list entry --> + <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 --> + <fo:list-item-body start-indent="body-start()"> + <fo:block> + change as a result of normalization, or + </fo:block> + </fo:list-item-body> + </fo:list-item> + + <!-- list entry --> + <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 --> + <fo:list-item-body start-indent="body-start()"> + <fo:block> + element types with element content, if white space occurs directly within any instance of those types. + <fo:list-block> + <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> + <fo:list-item-body start-indent="body-start()"> + <fo:block>This is the first item of a nested list</fo:block> + </fo:list-item-body> + </fo:list-item> + <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> + <fo:list-item-body start-indent="body-start()"> + <fo:block>This is the second item of a nested list</fo:block> + </fo:list-item-body> + </fo:list-item> + <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> + <fo:list-item-body start-indent="body-start()"> + <fo:block>This is the third item of a nested list</fo:block> + </fo:list-item-body> + </fo:list-item> + <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> + <fo:list-item-body start-indent="body-start()"> + <fo:block>This is the fourth item of a nested list</fo:block> + </fo:list-item-body> + </fo:list-item> + <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> + <fo:list-item-body start-indent="body-start()"> + <fo:block>This is the fifth item of a nested list</fo:block> + </fo:list-item-body> + </fo:list-item> + </fo:list-block> + </fo:block> + </fo:list-item-body> + </fo:list-item> + + </fo:list-block> + <!-- end list --> + + </fo:flow> + </fo:page-sequence> +</fo:root> + + diff --git a/fop/test/xml/bugtests/padding.fo b/fop/test/xml/bugtests/padding.fo new file mode 100644 index 000000000..74028f13f --- /dev/null +++ b/fop/test/xml/bugtests/padding.fo @@ -0,0 +1,88 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="25cm" + page-width="20cm" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1.5cm" + margin-right="1.5cm"> + <fo:region-body margin-top="3cm" margin-bottom="3cm"/> + <fo:region-before extent="2.5cm"/> + <fo:region-after extent="2.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <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" + padding-top="6pt"> + Extensible Markup Language (XML) 1.0 with padding + </fo:block> + + <fo:block font-size="18pt" + font-family="sans-serif" + line-height="24pt" + space-after.optimum="15pt" + background-color="blue" + color="white"> + Extensible Markup Language (XML) 1.0 without padding + </fo:block> + + <fo:block-container border-width="1pt" height="5cm" width="5cm" padding-top="1cm"> + <fo:block> + This block-container has a top padding of 1 cm. + </fo:block> + </fo:block-container> + + <fo:block-container border-width="1pt" height="5cm" width="5cm" padding-bottom="1cm"> + <fo:block> + bottom padding of 1 cm. + </fo:block> + </fo:block-container> + + <fo:block-container border-width="1pt" height="5cm" width="5cm" padding-left="1cm"> + <fo:block> + left padding of 1 cm. + </fo:block> + </fo:block-container> + + <fo:block-container border-width="1pt" height="5cm" width="5cm" padding-right="1cm"> + <fo:block> + right padding of 1 cm. + </fo:block> + </fo:block-container> + + <fo:block-container border-width="1pt" height="5cm" width="5cm" padding-before="1cm"> + <fo:block> + This block-container has a before padding of 1 cm. + </fo:block> + </fo:block-container> + + <fo:block-container border-width="1pt" height="5cm" width="5cm" padding-after="1cm"> + <fo:block> + after padding of 1 cm. + </fo:block> + </fo:block-container> + + <fo:block-container border-width="1pt" height="5cm" width="5cm" padding-start="1cm"> + <fo:block> + start padding of 1 cm. + </fo:block> + </fo:block-container> + + <fo:block-container border-width="1pt" height="5cm" width="5cm" padding-end="1cm"> + <fo:block> + end padding of 1 cm. + </fo:block> + </fo:block-container> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/page-number.fo b/fop/test/xml/bugtests/page-number.fo new file mode 100644 index 000000000..cd3b37bb1 --- /dev/null +++ b/fop/test/xml/bugtests/page-number.fo @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="25cm" + page-width="20cm" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1.5cm" + margin-right="1.5cm"> + <fo:region-body margin-top="3cm" margin-bottom="3cm"/> + <fo:region-before extent="2.5cm"/> + <fo:region-after extent="2.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <fo:flow flow-name="xsl-region-body"> + <fo:block> + This is Page Number <fo:page-number/>. + </fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/rule.fo b/fop/test/xml/bugtests/rule.fo new file mode 100644 index 000000000..f3b23fdb8 --- /dev/null +++ b/fop/test/xml/bugtests/rule.fo @@ -0,0 +1,85 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="25cm" + page-width="20cm" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1.5cm" + margin-right="1.5cm"> + <fo:region-body margin-top="3cm" margin-bottom="3cm"/> + <fo:region-before extent="2.5cm"/> + <fo:region-after extent="2.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <fo:flow flow-name="xsl-region-body"> + <fo:block space-before.optimum="1cm"> + leader-pattern="rule" rule-style="solid" rule-thickness="0.5pt" + </fo:block> + <fo:block space-before.optimum="1cm"> + <fo:leader leader-pattern="rule" rule-style="solid" rule-thickness="0.5pt"></fo:leader> + </fo:block> + <fo:block space-before.optimum="1cm"> + <fo:leader leader-pattern="rule" rule-style="solid" rule-thickness="1pt"></fo:leader> + </fo:block> + <fo:block space-before.optimum="1cm"> + <fo:leader leader-pattern="rule" rule-style="solid" rule-thickness="3pt"></fo:leader> + </fo:block> + <fo:block space-before.optimum="1cm"> + <fo:leader leader-pattern="rule" rule-style="solid" rule-thickness="3mm"></fo:leader> + </fo:block> + + <fo:block space-before.optimum="1cm"> + leader-pattern="rule" rule-style="dotted" rule-thickness="0.5pt" + </fo:block> + <fo:block space-before.optimum="1cm"> + <fo:leader leader-pattern="rule" rule-style="dotted" rule-thickness="0.5pt"></fo:leader> + </fo:block> + <fo:block space-before.optimum="1cm"> + <fo:leader leader-pattern="rule" rule-style="dotted" rule-thickness="1pt"></fo:leader> + </fo:block> + <fo:block space-before.optimum="1cm"> + <fo:leader leader-pattern="rule" rule-style="dotted" rule-thickness="3pt"></fo:leader> + </fo:block> + <fo:block space-before.optimum="1cm"> + <fo:leader leader-pattern="rule" rule-style="dotted" rule-thickness="5mm"></fo:leader> + </fo:block> + + <fo:block space-before.optimum="1cm"> + leader-pattern="rule" rule-dashed="dotted" rule-thickness="0.5pt" + </fo:block> + <fo:block space-before.optimum="1cm"> + <fo:leader leader-pattern="rule" rule-style="dashed" rule-thickness="0.5pt"></fo:leader> + </fo:block> + <fo:block space-before.optimum="1cm"> + <fo:leader leader-pattern="rule" rule-style="dashed" rule-thickness="1pt"></fo:leader> + </fo:block> + <fo:block space-before.optimum="1cm"> + <fo:leader leader-pattern="rule" rule-style="dashed" rule-thickness="3pt"></fo:leader> + </fo:block> + <fo:block space-before.optimum="1cm"> + <fo:leader leader-pattern="rule" rule-style="dashed" rule-thickness="1mm"></fo:leader> + </fo:block> + + <fo:block space-before.optimum="1cm"> + leader-pattern="rule" rule-style="double" rule-thickness="0.5pt" + </fo:block> + <fo:block space-before.optimum="1cm"> + <fo:leader leader-pattern="rule" rule-style="double" rule-thickness="0.5pt"></fo:leader> + </fo:block> + <fo:block space-before.optimum="1cm"> + <fo:leader leader-pattern="rule" rule-style="double" rule-thickness="1pt"></fo:leader> + </fo:block> + <fo:block space-before.optimum="1cm"> + <fo:leader leader-pattern="rule" rule-style="double" rule-thickness="3pt"></fo:leader> + </fo:block> + <fo:block space-before.optimum="1cm"> + <fo:leader leader-pattern="rule" rule-style="double" rule-thickness="1mm"></fo:leader> + </fo:block> + + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/simple-link.fo b/fop/test/xml/bugtests/simple-link.fo new file mode 100644 index 000000000..f18adaba8 --- /dev/null +++ b/fop/test/xml/bugtests/simple-link.fo @@ -0,0 +1,29 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="25cm" + page-width="20cm" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1.5cm" + margin-right="1.5cm"> + <fo:region-body margin-top="3cm" margin-bottom="3cm"/> + <fo:region-before extent="2.5cm"/> + <fo:region-after extent="2.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <fo:flow flow-name="xsl-region-body"> + <fo:block text-align="start"> + <fo:basic-link external-destination="font.pdf">Link to font.pdf</fo:basic-link> + </fo:block> + + <fo:block text-align="start"> + <fo:basic-link external-destination="http://www.wilco-int.com">Link to Wilco International</fo:basic-link> + </fo:block> + + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/space-treatment.fo b/fop/test/xml/bugtests/space-treatment.fo new file mode 100644 index 000000000..0df02dd34 --- /dev/null +++ b/fop/test/xml/bugtests/space-treatment.fo @@ -0,0 +1,39 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="11in" + page-width="8.5in" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1in" + margin-right="0.75in"> + <fo:region-body margin-top="3cm" margin-bottom="3cm"/> + <fo:region-before extent="2.5cm"/> + <fo:region-after extent="2.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <fo:flow flow-name="xsl-region-body"> + <fo:block space-after.optimum="1cm"> + The text below is in monospace font(useful for displayed formatted text, program code etc.) + </fo:block> + + <fo:block space-before.optimum="1cm" font-family="monospace" font-size="10pt" white-space-treatment="preserve" wrap-option="no-wrap"> +OWNER MR DHARAMVEER + SALECHA + +REFER. NO. 999 + +MAKE AUDI S4 QUATTRO +REG. NO BS 66961 SHEET NO 00 33 03 +OPTIONS FROM VIN X_200001 LUGGAGE NET ELECTRIC FRONT SEATS + AUTO HEADLAMP LEVEL SPORT SEATS TRIM-JACQUARD GRAPH + ALTERNATOR 120 AMP 4-SPEED AUTOMATIC SPORTS SUSPENSION + ANTI-LOCK BRAKES ELECT STABILITY PROG SUNROOF (ACCESSORY) + 2.7 LTR V6 + </fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/space.fo b/fop/test/xml/bugtests/space.fo new file mode 100644 index 000000000..ad572503a --- /dev/null +++ b/fop/test/xml/bugtests/space.fo @@ -0,0 +1,67 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="25cm" + page-width="20cm" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1.5cm" + margin-right="1.5cm"> + <fo:region-body margin-top="3cm" margin-bottom="3cm"/> + <fo:region-before extent="2.5cm"/> + <fo:region-after extent="2.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <fo:flow flow-name="xsl-region-body"> + <fo:block space-after.optimum="1cm"> + space-after.optimum="1cm" + This is a simple fo block. + This is a simple fo block. + This is a simple fo block. + This is a simple fo block. + </fo:block> + <fo:block> + This is a simple fo block. + This is a simple fo block. + This is a simple fo block. + This is a simple fo block. + </fo:block> + <fo:block space-before.optimum="1cm" space-after.optimum="1cm"> + space-before.optimum="1cm" space-after.optimum="1cm" + This is a simple fo block. + This is a simple fo block. + This is a simple fo block. + This is a simple fo block. + </fo:block> + <fo:block space-before.optimum="1cm" space-after.optimum="1cm"> + space-before.optimum="1cm" space-after.optimum="1cm" + This is a simple fo block. + This is a simple fo block. + This is a simple fo block. + This is a simple fo block. + </fo:block> + <fo:block> + This is a simple fo block. + This is a simple fo block. + This is a simple fo block. + This is a simple fo block. + </fo:block> + <fo:block space-before.optimum="1cm"> + space-before.optimum="1cm" + This is a simple fo block. + This is a simple fo block. + This is a simple fo block. + This is a simple fo block. + </fo:block> + <fo:block> + This is a simple fo block. + This is a simple fo block. + This is a simple fo block. + This is a simple fo block. + </fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/text-align.fo b/fop/test/xml/bugtests/text-align.fo new file mode 100644 index 000000000..a0a001880 --- /dev/null +++ b/fop/test/xml/bugtests/text-align.fo @@ -0,0 +1,42 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="25cm" + page-width="20cm" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1.5cm" + margin-right="1.5cm"> + <fo:region-body margin-top="3cm" margin-bottom="3cm"/> + <fo:region-before extent="2.5cm"/> + <fo:region-after extent="2.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <fo:flow flow-name="xsl-region-body"> + <fo:block> + This is a simple fo block. + </fo:block> + <fo:block space-before.optimum="1cm" text-align="start"> + This is a simple fo block with text aligned to start. + dfdsfaaaaafdsfasdf fadsfadsssf fadsfdsfadsf dfadsfdfasdsfsd dsfadfdsfadsfadsfdf + dfdsfaaaaafdsfasdf fadsfadsssf fadsfdsfadsf dfadsfdfasdsfsd dsfadfdsfadsfadsfdf + dfdsfaaaaafdsfasdf fadsfadsssf fadsfdsfadsf dfadsfdfasdsfsd dsfadfdsfadsfadsfdf + </fo:block> + <fo:block space-before.optimum="1cm" text-align="justify"> + This is a simple fo block with text justified. + dfdsfaaaaafdsfasdf fadsfadsssf fadsfdsfadsf dfadsfdfasdsfsd dsfadfdsfadsfadsfdf + dfdsfaaaaafdsfasdf fadsfadsssf fadsfdsfadsf dfadsfdfasdsfsd dsfadfdsfadsfadsfdf + dfdsfaaaaafdsfasdf fadsfadsssf fadsfdsfadsf dfadsfdfasdsfsd dsfadfdsfadsfadsfdf + </fo:block> + <fo:block space-before.optimum="1cm" text-align="end"> + This is a simple fo block with text aligned to end. + dfdsfaaaaafdsfasdf fadsfadsssf fadsfdsfadsf dfadsfdfasdsfsd dsfadfdsfadsfadsfdf + dfdsfaaaaafdsfasdf fadsfadsssf fadsfdsfadsf dfadsfdfasdsfsd dsfadfdsfadsfadsfdf + dfdsfaaaaafdsfasdf fadsfadsssf fadsfdsfadsf dfadsfdfasdsfsd dsfadfdsfadsfadsfdf + </fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/text-decoration.fo b/fop/test/xml/bugtests/text-decoration.fo new file mode 100644 index 000000000..cefb2f56c --- /dev/null +++ b/fop/test/xml/bugtests/text-decoration.fo @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="25cm" + page-width="20cm" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1.5cm" + margin-right="1.5cm"> + <fo:region-body margin-top="3cm" margin-bottom="3cm"/> + <fo:region-before extent="2.5cm"/> + <fo:region-after extent="2.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <fo:flow flow-name="xsl-region-body"> + <fo:block> + This is a simple fo text. + <fo:inline text-decoration="underline"> + This is a simple fo text and underlined. + </fo:inline> + <fo:inline text-decoration="line-through"> + This is a simple fo text and line-through. + </fo:inline> + </fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/text-indent.fo b/fop/test/xml/bugtests/text-indent.fo new file mode 100644 index 000000000..745eec8e9 --- /dev/null +++ b/fop/test/xml/bugtests/text-indent.fo @@ -0,0 +1,36 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="25cm" + page-width="20cm" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1.5cm" + margin-right="1.5cm"> + <fo:region-body margin-top="3cm" margin-bottom="3cm"/> + <fo:region-before extent="2.5cm"/> + <fo:region-after extent="2.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <fo:flow flow-name="xsl-region-body"> + <fo:block text-align="start" space-before.optimum="6pt" text-indent="1in"> + This text is formatted into a left-justified paragraph. + The first line has an indent of 1 inch from the left. + + This text is formatted into a left-justified paragraph. + The first line has an indent of 1 inch from the left. + </fo:block> + + <fo:block space-before.optimum="6pt" text-indent="40%"> + This text is formatted into a left-justified paragraph. + The first line has an indent of 30% from the left. + + This text is formatted into a left-justified paragraph. + The first line has an indent of 30% inch from the left. + </fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/text-transform.fo b/fop/test/xml/bugtests/text-transform.fo new file mode 100644 index 000000000..ae1160cca --- /dev/null +++ b/fop/test/xml/bugtests/text-transform.fo @@ -0,0 +1,133 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * $Id$ + * Copyright (C) 2002 The Apache Software Foundation. All rights reserved. + * For details on use and redistribution please refer to the + * LICENSE file included with these sources." +--> + +<!-- This is a test of the XSL-FO text-transform property --> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:fox="http://xml.apache.org/fop/extensions"> + <fo:layout-master-set> + <fo:simple-page-master master-name="main" page-height="8.5in" page-width="5.5in" margin-top=".5in" margin-bottom=".5in" margin-left=".5in" margin-right=".5in"> + <fo:region-body margin-top=".375in" region-name="xsl-region-body"/> + <fo:region-before extent=".375in" region-name="xsl-region-before"/> + </fo:simple-page-master> + </fo:layout-master-set> + <fo:page-sequence master-reference="main"> + <fo:static-content font-size="14pt" font-family="Times Roman" text-align="center" flow-name="xsl-region-before"> + <fo:block>Tests of the XSL-FO text-transform property</fo:block> + </fo:static-content> + <fo:flow flow-name="xsl-region-body" font-family="Times Roman" font-size="11pt" text-align="justify" language="en"> + <fo:block space-before.optimum="12pt" font-family="Courier">text-transform="none"</fo:block> + <fo:list-block start-indent="1.5em" text-transform="none"> + <fo:list-item> + <fo:list-item-label><fo:block>•</fo:block></fo:list-item-label> + <fo:list-item-body start-indent="2.2em"> + <fo:block>All characters should be left intact. In this example, +only the first character of each sentence should be capitalized.</fo:block> + </fo:list-item-body> + </fo:list-item> + </fo:list-block> + <fo:block space-before.optimum="12pt" font-family="Courier">text-transform="uppercase"</fo:block> + <fo:list-block start-indent="1.5em" text-transform="uppercase"> + <fo:list-item> + <fo:list-item-label><fo:block>•</fo:block></fo:list-item-label> + <fo:list-item-body start-indent="2.2em"> + <fo:block>Everything in this paragraph should be upper case.</fo:block> + </fo:list-item-body> + </fo:list-item> + </fo:list-block> + <fo:block space-before.optimum="12pt" font-family="Courier">text-transform="lowercase"</fo:block> + <fo:list-block start-indent="1.5em" text-transform="lowercase"> + <fo:list-item> + <fo:list-item-label><fo:block>•</fo:block></fo:list-item-label> + <fo:list-item-body start-indent="2.2em"> + <fo:block>Everything in this paragraph should be lower case.</fo:block> + </fo:list-item-body> + </fo:list-item> + </fo:list-block> + <fo:block space-before.optimum="12pt" font-family="Courier">text-transform="capitalize"</fo:block> + <fo:list-block start-indent="1.5em" text-transform="capitalize"> + <fo:list-item> + <fo:list-item-label><fo:block>•</fo:block></fo:list-item-label> + <fo:list-item-body start-indent="2.2em"> + <fo:block>In this test, and all tests in this section, the first +character of each word should be uppercase, and nothing else, unless +otherwise noted.</fo:block> + </fo:list-item-body> + </fo:list-item> + <fo:list-item> + <fo:list-item-label><fo:block>•</fo:block></fo:list-item-label> + <fo:list-item-body start-indent="2.2em"> + <fo:block><fo:inline font-style="italic">apostrophe or right single +quote?: </fo:inline>homer simpson’s biggest ‘problem’ is +probably not Bart.</fo:block> + </fo:list-item-body> + </fo:list-item> + <fo:list-item> + <fo:list-item-label><fo:block>•</fo:block></fo:list-item-label> + <fo:list-item-body start-indent="2.2em"> + <fo:block><fo:inline font-style="italic">ugly ASCII apostrophe or +single quote?: </fo:inline>Don't use a straight apostrophe when you have a +'real' one available.</fo:block> + </fo:list-item-body> + </fo:list-item> + <fo:list-item> + <fo:list-item-label><fo:block>•</fo:block></fo:list-item-label> + <fo:list-item-body start-indent="2.2em"> + <fo:block><fo:inline font-style="italic">unusual punctuation: + </fo:inline>the man from u.n.c.l.e. (All characters in + the last word should be uppercase).</fo:block> + </fo:list-item-body> + </fo:list-item> + <fo:list-item hyphenate="true" language="en"> + <fo:list-item-label><fo:block>•</fo:block></fo:list-item-label> + <fo:list-item-body start-indent="2.2em"> + <fo:block><fo:inline font-style="italic">em-dash: +</fo:inline>indicates a new word—like this.</fo:block> + </fo:list-item-body> + </fo:list-item> + <fo:list-item hyphenate="true" language="en"> + <fo:list-item-label><fo:block>•</fo:block></fo:list-item-label> + <fo:list-item-body start-indent="2.2em"> + <fo:block><fo:inline font-style="italic">en-dash: +</fo:inline>indicates a new word–like this.</fo:block> + </fo:list-item-body> + </fo:list-item> + <fo:list-item hyphenate="true" language="en"> + <fo:list-item-label><fo:block>•</fo:block></fo:list-item-label> + <fo:list-item-body start-indent="2.2em"> + <fo:block><fo:inline font-style="italic">hyphenation: +</fo:inline>The post-hyphen portion of a word should not be capitalized. +this-expression-should-all-be-treated-as-one-word-and-should-continue-on-following-lines-as-one-word.</fo:block> + </fo:list-item-body> + </fo:list-item> + <fo:list-item hyphenate="true" language="en"> + <fo:list-item-label><fo:block>•</fo:block></fo:list-item-label> + <fo:list-item-body start-indent="2.2em"> + <fo:block><fo:inline font-style="italic">automatic hyphenation:</fo:inline> +Internationalization disambiguation. +Internationalization disambiguation. +Internationalization disambiguation. +Internationalization disambiguation. +Internationalization disambiguation. +Internationalization disambiguation.</fo:block> + </fo:list-item-body> + </fo:list-item> + <fo:list-item> + <fo:list-item-label><fo:block>•</fo:block></fo:list-item-label> + <fo:list-item-body start-indent="2.2em"> + <fo:block><fo:inline font-style="italic">nested wrappers: +</fo:inline>Only the first character of the following word should be capitalized: +<fo:wrapper text-transform="capitalize">e<fo:wrapper>x</fo:wrapper>tensible</fo:wrapper>. + </fo:block> + </fo:list-item-body> + </fo:list-item> + </fo:list-block> + </fo:flow> + </fo:page-sequence> +</fo:root> + +<!-- Last Line of $RCSfile$ -->
\ No newline at end of file diff --git a/fop/test/xml/bugtests/word-spacing.fo b/fop/test/xml/bugtests/word-spacing.fo new file mode 100644 index 000000000..b318775bb --- /dev/null +++ b/fop/test/xml/bugtests/word-spacing.fo @@ -0,0 +1,50 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="25cm" + page-width="20cm" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1.5cm" + margin-right="1.5cm"> + <fo:region-body margin-top="3cm" margin-bottom="3cm"/> + <fo:region-before extent="2.5cm"/> + <fo:region-after extent="2.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <fo:flow flow-name="xsl-region-body"> + <fo:block> + <fo:inline word-spacing="normal">In this text, spaces between words are normal.</fo:inline> + <fo:inline word-spacing="normal">In this text, spaces between words are normal.</fo:inline> + <fo:inline word-spacing="normal">In this text, spaces between words are normal.</fo:inline> + <fo:inline word-spacing="normal">In this text, spaces between words are normal.</fo:inline> + <fo:inline word-spacing="normal">In this text, spaces between words are normal.</fo:inline> + </fo:block> + + <fo:block space-before.optimum="1cm"> + <fo:inline word-spacing="2pt">In this text, spaces between words are increased by 2pt.</fo:inline> <fo:inline word-spacing="2pt">In this text, spaces between words are increased by 2pt.</fo:inline> <fo:inline word-spacing="2pt">In this text, spaces between words are increased by 2pt.</fo:inline> <fo:inline word-spacing="2pt">In this text, spaces between words are increased by 2pt.</fo:inline> <fo:inline word-spacing="2pt">In this text, spaces between words are increased by 2pt.</fo:inline> </fo:block> + + <fo:block space-before.optimum="1cm"> + <fo:inline word-spacing="6pt">In this text, spaces between words are increased by 6pt.</fo:inline> + <fo:inline word-spacing="6pt">In this text, spaces between words are increased by 6pt.</fo:inline> + <fo:inline word-spacing="6pt">In this text, spaces between words are increased by 6pt.</fo:inline> + <fo:inline word-spacing="6pt">In this text, spaces between words are increased by 6pt.</fo:inline> + <fo:inline word-spacing="6pt">In this text, spaces between words are increased by 6pt.</fo:inline> + </fo:block> + + <fo:block space-before.optimum="1cm"> + <fo:inline word-spacing="0pt">In this text, spaces between words are increased by 0pt (i.e. normally spaced).</fo:inline> + <fo:inline word-spacing="0pt">In this text, spaces between words are increased by 0pt (i.e. normally spaced).</fo:inline> + <fo:inline word-spacing="0pt">In this text, spaces between words are increased by 0pt (i.e. normally spaced).</fo:inline> + <fo:inline word-spacing="0pt">In this text, spaces between words are increased by 0pt (i.e. normally spaced).</fo:inline> + <fo:inline word-spacing="0pt">In this text, spaces between words are increased by 0pt (i.e. normally spaced).</fo:inline> + </fo:block> + + <fo:block space-before.optimum="1cm"> + <fo:inline word-spacing="-2pt">In this text, spaces between words are reduced by -2pt</fo:inline> <fo:inline word-spacing="-2pt">In this text, spaces between words are reduced by -2pt</fo:inline> <fo:inline word-spacing="-2pt">In this text, spaces between words are reduced by -2pt</fo:inline> <fo:inline word-spacing="-2pt">In this text, spaces between words are reduced by -2pt</fo:inline> <fo:inline word-spacing="-2pt">In this text, spaces between words are reduced by -2pt</fo:inline> </fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/bugtests/wrap.fo b/fop/test/xml/bugtests/wrap.fo new file mode 100644 index 000000000..8f89fd06d --- /dev/null +++ b/fop/test/xml/bugtests/wrap.fo @@ -0,0 +1,141 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="simplePM" + page-height="25cm" + page-width="20cm" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1.5cm" + margin-right="1.5cm"> + <fo:region-body margin-top="3cm" margin-bottom="3cm"/> + <fo:region-before extent="2.5cm"/> + <fo:region-after extent="2.5cm"/> + </fo:simple-page-master> + <fo:simple-page-master master-name="no-overflow" + page-height="25cm" + page-width="20cm" + margin-top="1cm" + margin-bottom="1cm" + margin-left="1.5cm" + margin-right="1.5cm"> + <fo:region-before extent="2.5cm"/> + <fo:region-body overflow="hidden" margin-top="3cm" margin-bottom="3cm"/> + <fo:region-after extent="2.5cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + + <fo:page-sequence master-reference="simplePM"> + <fo:flow flow-name="xsl-region-body"> + <fo:block> +This test is to check a number of different possibilities when dealing with +text being wrapped at the end of an area. + </fo:block> + <fo:block wrap-option="no-wrap"> + <fo:inline>This is a simple fo block.This is a simple fo block.This is a simple fo block.</fo:inline> + <fo:inline>This is a simple fo block.This is a simple fo block.This is a simple fo block.</fo:inline> + <fo:inline>This is a simple fo block.This is a simple fo block.This is a simple fo block.</fo:inline> + <fo:inline>This is a simple fo block.This is a simple fo block.This is a simple fo block.</fo:inline> + + <fo:block space-before.optimum="1cm" wrap-option="wrap"> + <fo:inline>This is a simple fo block.This is a simple fo block.This is a simple fo block.</fo:inline> + <fo:inline>This is a simple fo block.This is a simple fo block.This is a simple fo block.</fo:inline> + <fo:inline>This is a simple fo block.This is a simple fo block.This is a simple fo block.</fo:inline> + </fo:block> + This is simple fo block.This is simple fo block.This is simple fo block.This is simple fo block. + This is simple fo block.This is simple fo block.This is simple fo block.This is simple fo block. + </fo:block> + <fo:block space-before.optimum="10pt"> +Some examples in a table. + </fo:block> +<fo:table border-style="solid" border-width="1pt" border-color="blue"> +<fo:table-column column-width="50pt"/> +<fo:table-body> +<fo:table-row> +<fo:table-cell> + <fo:block> +a normal paragraph with spaces and normal words + </fo:block> +</fo:table-cell> +</fo:table-row> +<fo:table-row> +<fo:table-cell> + <fo:block wrap-option="no-wrap" space-before.optimum="5pt"> +a normal paragraph with spaces and normal words + </fo:block> +</fo:table-cell> +</fo:table-row> +<fo:table-row> +<fo:table-cell> + <fo:block space-before.optimum="5pt"> +areallylongwordwhichisreallymanywords + </fo:block> +</fo:table-cell> +</fo:table-row> +<fo:table-row> +<fo:table-cell> + <fo:block wrap-option="no-wrap" space-before.optimum="5pt"> +areallylongwordwhichisreallymanywords + </fo:block> +</fo:table-cell> +</fo:table-row> +<fo:table-row> +<fo:table-cell> + <fo:block space-before.optimum="5pt" + language="en" + country="GB" + hyphenate="true" + hyphenation-push-character-count="2" + hyphenation-remain-character-count="2"> +words with hypenation the activated when doing lots of wrapping + </fo:block> +</fo:table-cell> +</fo:table-row> +<fo:table-row> +<fo:table-cell> + <fo:block space-before.optimum="5pt" + language="en" + country="GB" + hyphenate="true" + hyphenation-push-character-count="2" + hyphenation-remain-character-count="2"> +interdependancy is a nice long word + </fo:block> +</fo:table-cell> +</fo:table-row> +<fo:table-row> +<fo:table-cell> + <fo:block space-before.optimum="5pt" + wrap-option="no-wrap" + language="en" + country="UK" + hyphenate="true" + hyphenation-push-character-count="2" + hyphenation-remain-character-count="2"> +words with hypenation the activated when not doing lots of wrapping + </fo:block> +</fo:table-cell> +</fo:table-row> +</fo:table-body> +</fo:table> + </fo:flow> + </fo:page-sequence> + <fo:page-sequence master-reference="no-overflow"> + <fo:flow flow-name="xsl-region-body"> + <fo:block wrap-option="no-wrap"> + <fo:inline>This is a simple fo block.This is a simple fo block.This is a simple fo block.</fo:inline> + <fo:inline>This is a simple fo block.This is a simple fo block.This is a simple fo block.</fo:inline> + <fo:inline>This is a simple fo block.This is a simple fo block.This is a simple fo block.</fo:inline> + <fo:inline>This is a simple fo block.This is a simple fo block.This is a simple fo block.</fo:inline> + + <fo:block space-before.optimum="1cm" wrap-option="wrap"> + <fo:inline>This is a simple fo block.This is a simple fo block.This is a simple fo block.</fo:inline> + <fo:inline>This is a simple fo block.This is a simple fo block.This is a simple fo block.</fo:inline> + <fo:inline>This is a simple fo block.This is a simple fo block.This is a simple fo block.</fo:inline> + </fo:block> + This is simple fo block.This is simple fo block.This is simple fo block.This is simple fo block. + This is simple fo block.This is simple fo block.This is simple fo block.This is simple fo block. + </fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/pdf-a/base14-font.fo b/fop/test/xml/pdf-a/base14-font.fo new file mode 100644 index 000000000..a33623ec9 --- /dev/null +++ b/fop/test/xml/pdf-a/base14-font.fo @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format" font-family="Helvetica"> + <fo:layout-master-set> + <fo:simple-page-master master-name="A4" page-height="29.7cm" page-width="21cm" margin="2cm"> + <fo:region-body/> + </fo:simple-page-master> + </fo:layout-master-set> + <fo:page-sequence master-reference="A4"> + <fo:flow flow-name="xsl-region-body"> + <fo:block>Hello World!</fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/pdf-a/minimal-pdf-a.fo b/fop/test/xml/pdf-a/minimal-pdf-a.fo new file mode 100644 index 000000000..94adf72e2 --- /dev/null +++ b/fop/test/xml/pdf-a/minimal-pdf-a.fo @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format" font-family="Gladiator" font-weight="bold"> + <fo:layout-master-set> + <fo:simple-page-master master-name="A4" page-height="29.7cm" page-width="21cm" margin="2cm"> + <fo:region-body/> + </fo:simple-page-master> + </fo:layout-master-set> + <fo:page-sequence master-reference="A4"> + <fo:flow flow-name="xsl-region-body"> + <fo:block>Hello World!</fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/pdf-a/svg-transparency.fo b/fop/test/xml/pdf-a/svg-transparency.fo new file mode 100644 index 000000000..922416fbc --- /dev/null +++ b/fop/test/xml/pdf-a/svg-transparency.fo @@ -0,0 +1,24 @@ +<?xml version="1.0"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format" font-family="Gladiator"> + <fo:layout-master-set> + <fo:simple-page-master master-name="page" + page-height="420pt" page-width="620pt" margin="10pt"> + <fo:region-body display-align="center"/> + </fo:simple-page-master> + </fo:layout-master-set> + <fo:page-sequence master-reference="page"> + <fo:flow flow-name="xsl-region-body" text-align="center"> + <fo:block font-size="20pt">RGB Circles</fo:block> + <fo:block><fo:instream-foreign-object> + <svg xmlns="http://www.w3.org/2000/svg" width="300" height="286.6"> + <g style="fill-opacity:0.7; stroke:black; stroke-width:3" + transform="translate(0, 286.6) scale(1, -1) translate(100, 100)"> + <circle cx="50" cy="86.6" r="80" style="fill:red;"/> + <circle cx="0" cy="0" r="80" style="fill:green;"/> + <circle cx="100" cy="0" r="80" style="fill:blue;"/> + </g> + </svg> + </fo:instream-foreign-object></fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/pdf-a/svg-with-transparent-image.fo b/fop/test/xml/pdf-a/svg-with-transparent-image.fo new file mode 100644 index 000000000..503872224 --- /dev/null +++ b/fop/test/xml/pdf-a/svg-with-transparent-image.fo @@ -0,0 +1,24 @@ +<?xml version="1.0"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format" font-family="Gladiator"> + <fo:layout-master-set> + <fo:simple-page-master master-name="page" + page-height="320pt" page-width="420pt" margin="10pt"> + <fo:region-body display-align="center"/> + </fo:simple-page-master> + </fo:layout-master-set> + <fo:page-sequence master-reference="page"> + <fo:flow flow-name="xsl-region-body" text-align="center"> + <fo:block start-indent="50pt" end-indent="50pt" font-size="15pt" space-after="10pt">SVG + referencing a bitmap image that has transparency</fo:block> + <fo:block><fo:instream-foreign-object> + <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" + width="100" height="100"> + <rect x="0" y="0" width="100%" height="100%" fill="none" stroke="black" + stroke-width="2"/> + <image x="0" y="0" width="100%" height="100%" + xlink:href="resources/images/list-item.png"/> + </svg> + </fo:instream-foreign-object></fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/pdf-a/with-cmyk-images.fo b/fop/test/xml/pdf-a/with-cmyk-images.fo new file mode 100644 index 000000000..a5f40a064 --- /dev/null +++ b/fop/test/xml/pdf-a/with-cmyk-images.fo @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format" font-family="Gladiator" font-weight="bold"> + <fo:layout-master-set> + <fo:simple-page-master master-name="A4" page-height="29.7cm" page-width="21cm" margin="2cm"> + <fo:region-body/> + </fo:simple-page-master> + </fo:layout-master-set> + <fo:page-sequence master-reference="A4"> + <fo:flow flow-name="xsl-region-body"> + <fo:block>Hello World!</fo:block> + <fo:block><fo:external-graphic src="resources/images/cmyk.jpg"/></fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/pdf-a/with-rgb-images.fo b/fop/test/xml/pdf-a/with-rgb-images.fo new file mode 100644 index 000000000..820e41693 --- /dev/null +++ b/fop/test/xml/pdf-a/with-rgb-images.fo @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="UTF-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format" font-family="Gladiator"> + <fo:layout-master-set> + <fo:simple-page-master master-name="A4" page-height="29.7cm" page-width="21cm" margin="2cm"> + <fo:region-body/> + </fo:simple-page-master> + </fo:layout-master-set> + <fo:page-sequence master-reference="A4"> + <fo:flow flow-name="xsl-region-body"> + <fo:block>Hello World!</fo:block> + <fo:block><fo:external-graphic src="resources/images/bgimg300dpi.jpg"/></fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/pdf-encoding/pdf-encoding-test.xconf b/fop/test/xml/pdf-encoding/pdf-encoding-test.xconf new file mode 100644 index 000000000..27f96c950 --- /dev/null +++ b/fop/test/xml/pdf-encoding/pdf-encoding-test.xconf @@ -0,0 +1,48 @@ +<?xml version="1.0"?> + +<!-- + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> + +<!-- + FOP config for PDF encoding test: disable all output filters + and setup a custom font +--> + +<fop version="1.0"> + <!-- Switch off font caching for the purposes of unit testing --> + <cache-fonts>false</cache-fonts> + + <renderers> + <renderer mime="application/pdf"> + <!-- disable PDF text compression --> + <filterList> + <value>null</value> + </filterList> + <filterList type="image"> + <value>flate</value> + <value>ascii-85</value> + </filterList> + + <!-- use a custom font to show encoding problems --> + <fonts> + <font metrics-url="test/resources/fonts/ttf/glb12.ttf.xml" embed-url="test/resources/fonts/ttf/glb12.ttf"> + <font-triplet name="Gladiator" style="normal" weight="normal"/> + </font> + </fonts> + </renderer> + </renderers> +</fop> diff --git a/fop/test/xml/pdf-encoding/test-custom-font.fo b/fop/test/xml/pdf-encoding/test-custom-font.fo new file mode 100644 index 000000000..86689f343 --- /dev/null +++ b/fop/test/xml/pdf-encoding/test-custom-font.fo @@ -0,0 +1,38 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> + +<!-- + Minimal FO document used to test PDF encoding +--> + +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format" font-family="Gladiator"> + <fo:layout-master-set> + <fo:simple-page-master master-name="A4" page-height="29.7cm" page-width="21cm" margin="2cm"> + <fo:region-body/> + </fo:simple-page-master> + </fo:layout-master-set> + <fo:page-sequence master-reference="A4"> + <fo:flow flow-name="xsl-region-body"> + <fo:block>Testing PDF text encoding using the user-specified Gladiator font</fo:block> + <fo:block>PDFE_TEST_MARK_1: Hello Gladiator World!</fo:block> + <fo:block>PDFE_TEST_MARK_2: This is an e acute: XX_é_XX</fo:block> + <fo:block>PDFE_TEST_MARK_3: This is aeiou with circumflex on each letter: XX_âêîôû_XX</fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/pdf-encoding/test-standard-font.fo b/fop/test/xml/pdf-encoding/test-standard-font.fo new file mode 100644 index 000000000..b629eadad --- /dev/null +++ b/fop/test/xml/pdf-encoding/test-standard-font.fo @@ -0,0 +1,38 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> + +<!-- + Minimal FO document used to test PDF encoding +--> + +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="A4" page-height="29.7cm" page-width="21cm" margin="2cm"> + <fo:region-body/> + </fo:simple-page-master> + </fo:layout-master-set> + <fo:page-sequence master-reference="A4"> + <fo:flow flow-name="xsl-region-body"> + <fo:block>Testing PDF text encoding using a standard FOP font</fo:block> + <fo:block>PDFE_TEST_MARK_1: Hello Standard World!</fo:block> + <fo:block>PDFE_TEST_MARK_2: This is an e acute: XX_é_XX</fo:block> + <fo:block>PDFE_TEST_MARK_3: This is aeiou with circumflex on each letter: XX_âêîôû_XX</fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/uri-testing/custom-scheme/only-scheme-specific-part-svg.fo b/fop/test/xml/uri-testing/custom-scheme/only-scheme-specific-part-svg.fo new file mode 100644 index 000000000..1761f00e3 --- /dev/null +++ b/fop/test/xml/uri-testing/custom-scheme/only-scheme-specific-part-svg.fo @@ -0,0 +1,40 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<!-- $Id$ --> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="A4" page-height="29.7cm" page-width="21cm" margin="1cm"> + <fo:region-body/> + </fo:simple-page-master> + </fo:layout-master-set> + <fo:page-sequence master-reference="A4"> + <fo:flow flow-name="xsl-region-body"> + <fo:block> + <fo:instream-foreign-object> + <svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> + <g style="fill:red; stroke:#000000"> + <rect x="0" y="0" width="15" height="15"/> + <!--rect x="5" y="5" width="15" height="15"/--> + </g> + <image x="5" y="5" width="15" height="15" xlink:href="funky:myimage123"/> + </svg> + </fo:instream-foreign-object> + </fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/uri-testing/custom-scheme/only-scheme-specific-part.fo b/fop/test/xml/uri-testing/custom-scheme/only-scheme-specific-part.fo new file mode 100644 index 000000000..b5c85e8d9 --- /dev/null +++ b/fop/test/xml/uri-testing/custom-scheme/only-scheme-specific-part.fo @@ -0,0 +1,32 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<!-- $Id$ --> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="A4" page-height="29.7cm" page-width="21cm" margin="1cm"> + <fo:region-body/> + </fo:simple-page-master> + </fo:layout-master-set> + <fo:page-sequence master-reference="A4"> + <fo:flow flow-name="xsl-region-body"> + <fo:block> + <fo:external-graphic src="funky:myimage123"/> + </fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> diff --git a/fop/test/xml/uri-testing/font.fo b/fop/test/xml/uri-testing/font.fo new file mode 100644 index 000000000..88a29694b --- /dev/null +++ b/fop/test/xml/uri-testing/font.fo @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="utf-8"?> +<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> + <fo:layout-master-set> + <fo:simple-page-master master-name="master" page-height="29.7cm" page-width="21cm" margin="2.5cm"> + <fo:region-body margin-top="3cm"/> + </fo:simple-page-master> + </fo:layout-master-set> + <fo:page-sequence master-reference="master"> + <fo:flow flow-name="xsl-region-body"> + <fo:block font-family="gladttf"> TTF Gladiator </fo:block> + <fo:block font-family="gladtype1"> Type 1 Gladiator </fo:block> + </fo:flow> + </fo:page-sequence> +</fo:root> |