Hello Ken!
Thanks a lot for helping me. I still have some problems.
I need different region-bodies, not only different layouts on odd and even
pages. So, I gave different names to regio-bodies in simple-page-master, as you
said:
<fo:simple-page-master page-height="297mm"
page-width="210mm"
margin-top="5mm"
margin-bottom="5mm"
margin-left="12mm"
margin-right="2mm"
master-name="OddPageMaster">
<fo:region-body region-name="odd-region-body"
margin-top="1cm" margin-bottom="2cm"/>
<fo:region-before extent="1cm"/>
<fo:region-after extent="2cm"/>
</fo:simple-page-master>
<fo:simple-page-master page-height="297mm"
page-width="210mm"
margin-top="5mm"
margin-bottom="5mm"
margin-left="12mm"
margin-right="2mm"
master-name="EvenPageMaster">
<fo:region-body region-name="even-region-body"
margin-top="4cm" margin-bottom="2cm"/>
<fo:region-before extent="4cm"/>
<fo:region-after extent="2cm"/>
</fo:simple-page-master>
--------------------------
If I keep only one page-sequence, I get the output, odd pages have data (which
is good), and even pages are blank.
--------------------------
I have to create two different flows, so I think I need two page-sequences (do
I?):
<fo:page-sequence master-reference="PageMaster">
<fo:flow flow-name="odd-region-body">
<xsl:for-each select="..........">
<xsl:for-each select="......">
<!--body for odd pages-->
<fo:block>odd</fo:block>
</xsl:for-each>
</xsl:for-each>
</fo:flow>
</fo:page-sequence>
<fo:page-sequence master-reference="PageMaster">
<fo:flow flow-name="even-region-body">
<xsl:for-each select=".....">
<xsl:for-each select=".....">
<!--body for odd pages-->
<fo:block>even</fo:block>
</xsl:for-each>
</xsl:for-each>
</fo:flow>
</fo:page-sequence>
But, when I run Apache FOP, I get the following error:
No flow found for region-body in page-master 'EvenPageMaster'
No flow found for region-body in page-master 'OddPageMaster'
What I am doing wrong?
Thanks again,
Roxana
-----Original Message-----
From: G. Ken Holman [mailto:gkholman(_at_)CraneSoftwrights(_dot_)com]
Sent: Tuesday, April 22, 2003 10:49 AM
To: XSL-List(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: Re: [xsl] Alternate page-sequences
At 2003-04-22 10:25 -0400, Roxana Constandes wrote:
I have to create a report that has diferrent flows on odd and even pages.
I am trying to create two page sequences and alternate them.
You are *really* close, Roxana,
Here is a stylesheet (simplified):
<fo:layout-master-set>
<fo:simple-page-master ...
master-name="OddPageMaster">
<fo:region-body margin-top="1cm"
margin-bottom="2cm"/>
<fo:region-before extent="1cm"/>
<fo:region-after extent="2cm"/>
</fo:simple-page-master>
<fo:simple-page-master ...
master-name="EvenPageMaster">
<fo:region-body margin-top="4cm"
margin-bottom="2cm"/>
<fo:region-before extent="4cm"/>
<fo:region-after extent="2cm"/>
</fo:simple-page-master>
The above is fine, except you are using the same implicit names for each of
the regions. If you want alternating *content* in those regions, you'll
need to declare specific (and different) names for the regions with
different content.
However, if you are only playing with margins, the above is just fine.
<fo:page-sequence-master master-name="PageMaster">
<fo:repeatable-page-master-alternatives>
<fo:conditional-page-master-reference master-reference="OddPageMaster"
page-position="any" odd-or-even="odd" />
<fo:conditional-page-master-reference master-reference="EvenPageMaster"
page-position="any" odd-or-even="even" />
</fo:repeatable-page-master-alternatives>
</fo:page-sequence-master>
</fo:layout-master-set>
Everything above is also just fine for alternating the geometries.
<fo:page-sequence master-reference="OddPageMaster">
...
<fo:page-sequence master-reference="EvenPageMaster">
...
But it doesn't work.
First, I get all pages for OddPageMaster (on both odd and even pages)
and then I get the output for EvenPageMaster.
Which is *exactly* what you asked for.
What I want is to alternate them.
Then all you need is to do is ask that the page-sequence obtain its
geometries from the page-sequence-master and *not* from the page geometry
declarations:
<fo:page-sequence master-reference="PageMaster">
And you will only need one of these since that page sequence master is
obtaining the evens and odds for you.
I hope this helps.
.......................... Ken
--
Upcoming hands-on courses: Europe (XSLT/XPath): May 5, 2003
- Europe (XSL-FO): May 16, 2003
- (XSLT/XPath and/or XSL-FO) North America: June 16-20, 2003
G. Ken Holman mailto:gkholman(_at_)CraneSoftwrights(_dot_)com
Crane Softwrights Ltd. http://www.CraneSoftwrights.com/s/
Box 266, Kars, Ontario CANADA K0A-2E0 +1(613)489-0999 (F:-0995)
ISBN 0-13-065196-6 Definitive XSLT and XPath
ISBN 0-13-140374-5 Definitive XSL-FO
ISBN 1-894049-08-X Practical Transformation Using XSLT and XPath
ISBN 1-894049-10-1 Practical Formatting Using XSL-FO
Male Breast Cancer Awareness http://www.CraneSoftwrights.com/s/bc
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list