Hello,
Included, as well as pasted below is an fo document. It is commented to
describe the intent of individual code blocks. Basically, I'd like a
special page-master to be used for the last page if there are 2,3 or 4
pages. I'd also like the same special page-master to be used on the 5th
page if there are more than 4 pages. In other words, I must use a
special page master in the document. I mustn't be later than the 5th
page, and I'd like it to be as late in the document as possible. The
test case tries to use repeatable-page-master-alternatives to accomplish
this, but the maximum-repeats attribute seems to be ignored. Can anyone
offer some assistance?
-Robert
<?xml version="1.0"?>
<root xmlns="http://www.w3.org/1999/XSL/Format">
<layout-master-set>
<!-- here are my simple page masters. They each have the same page
width, height, and body region. They each have unique headers. Each
header region contains a static-content that contains the name of the
master-name it belongs to. This way, I can tell which simple-page-master
is used in the pdf. -->
<simple-page-master master-name="first" page-width="8.5in"
page-height="11.5in">
<region-before region-name="first-header" extent="1in" />
<region-body region-name="body" margin="2.5cm" />
</simple-page-master>
<simple-page-master master-name="even" page-width="8.5in"
page-height="11.5in">
<region-before region-name="even-header" extent="1in" />
<region-body region-name="body" margin="2.5cm" />
</simple-page-master>
<simple-page-master master-name="odd" page-width="8.5in"
page-height="11.5in">
<region-before region-name="odd-header" extent="1in" />
<region-body region-name="body" margin="2.5cm" />
</simple-page-master>
<simple-page-master master-name="even-masthead" page-width="8.5in"
page-height="11.5in">
<region-before region-name="even-masthead-header" extent="1in" />
<region-body region-name="body" margin="2.5cm" />
</simple-page-master>
<simple-page-master master-name="odd-masthead" page-width="8.5in"
page-height="11.5in">
<region-before region-name="odd-masthead-header" extent="1in" />
<region-body region-name="body" margin="2.5cm" />
</simple-page-master>
<!-- here is my page-sequence-master. i'll comment with my
intentions below -->
<page-sequence-master master-name="mySequence">
<!-- the first page should use the first simple-page-master. this
works fine -->
<single-page-master-reference master-reference="first" />
<!-- the next three pages should use either the odd of even
simple-page-master, unless they happen to be the last page in the flow,
in which case they should use either the odd-masthead or even-masthead
simple-page-master. I am legally required to print a legal disclaimer on
this document. The disclaimer must before page 6 (in other words, on one
of the following pages: 1,2,3,4,5). My designer requires this disclaimer
to be on the last possible page. And the document may have as few as 2
pages or source. Therefore, i'd like it to be on the last page if there
are less than 5 pages, or on the 5 page if there are 5 or more pages.
-->
<repeatable-page-master-alternatives maximum-repeats="3">
<!-- use the odd-masthead master if this page is odd, and is the
last page -->
<conditional-page-master-reference
master-reference="odd-masthead" odd-or-even="odd" page-position="last"
/>
<!-- use the even-masthead master if this page is even, and is
the last page -->
<conditional-page-master-reference
master-reference="even-masthead" odd-or-even="even" page-position="last"
/>
<!-- use the even master if this page isn't the last page, and
is even -->
<conditional-page-master-reference master-reference="even"
odd-or-even="even" />
<!-- use the odd master if this page isn't the last page, and is
odd -->
<conditional-page-master-reference master-reference="odd"
odd-or-even="odd" />
</repeatable-page-master-alternatives>
<!-- if the processor gets to this part of the sequence, than the
document must be 5 or more pages long, therefore the fifth page should
contain the disclaimer. This is the fifth page, so use either the
odd-disclaimer, or even-disclaimer master. -->
<repeatable-page-master-alternatives maximum-repeats="1">
<conditional-page-master-reference
master-reference="odd-masthead" odd-or-even="odd" />
<conditional-page-master-reference
master-reference="even-masthead" odd-or-even="even" />
</repeatable-page-master-alternatives>
<!-- at this point, the document is on page 6 or higher, and
should choose between even or odd master-page accordingly -->
<repeatable-page-master-alternatives>
<conditional-page-master-reference master-reference="even"
odd-or-even="even" />
<conditional-page-master-reference master-reference="odd"
odd-or-even="odd" />
</repeatable-page-master-alternatives>
</page-sequence-master>
</layout-master-set>
<!-- here is my sequence. each header has its name as its content. the
body contains 10 pages, each label their own page number. -->
<page-sequence master-reference="mySequence">
<static-content flow-name="first-header">
<block>first-header</block>
</static-content>
<static-content flow-name="even-header">
<block>even-header</block>
</static-content>
<static-content flow-name="odd-header">
<block>odd-header</block>
</static-content>
<static-content flow-name="even-masthead-header">
<block>even-masthead-header</block>
</static-content>
<static-content flow-name="odd-masthead-header">
<block>odd-masthead-header</block>
</static-content>
<flow flow-name="body">
<block break-after="page">First Page</block>
<block break-after="page">Second Page</block>
<block break-after="page">Third Page</block>
<block break-after="page">Fourth Page</block>
<block break-after="page">Fifth page, this should use either
odd-masthead-body or even-masthead-body</block>
<block break-after="page">Sixth page</block>
<block break-after="page">Seventh Page</block>
<block break-after="page">Eight Page</block>
<block break-after="page">Ninth Page</block>
<block break-after="page">Tenth page, last page</block>
</flow>
</page-sequence>
</root>
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--