7.2.1 Flowed content vs. static contentThe flow, the headers, and the footers are defined by assigning content to the region name , not to the region position.
Flowed content triggers the pages to be produced from a page-sequence .
The formatter generates a page using the next page geometry in the page sequence.
Static content is repeated in the named regions that appear on each generated page.
Flowed and static content are defined on a page sequence basis.
It is not an error when content is defined for a named region and that region is not present on the page being generated.
It is a common requirement for different pages to have different static content.
It is a common requirement for different pages to have the same content in different places.
It is the author's responsibility to supply in each page sequence the definitions of all content desired for the possible regions triggered by the sequence of pages.
7.2.2 The static-content objectPurpose
Content
Required property
Excerpts from a draft of a training rendition of this material are shown in Example 7-2. Example 7-2 Static content definition of regionsLine 01 <page-sequence id="fo_region-before" master-reference="frames"> 02 <static-content flow-name="pages-before" font-style="italic"> 03 <block text-align="center">Practical Formatting 04 Using XSL-FO</block> </static-content> 05 <static-content flow-name="pages-after-right" 06 font-style="italic" font-size="9pt"> 07 <table>...<block text-align="start">Slide 173 of 08 287 <inline font-size="8pt"><frame_static-content></inline 09 ></block>...<block text-align="center"> 10 <inline font-size="8pt" font-style="normal" 11 >Information subject to restrictive legend on title page.</inline> 12 </block>... 13 <block text-align="end">Page <page-number/> of 14 <page-number-citation ref-id="N0"/></block>... 15 </table> </static-content> 16 <static-content flow-name="pages-after-left" 17 font-style="italic" font-size="9pt"> 18 <table>...<block text-align="start">Page <page-number/> of 19 <page-number-citation ref-id="N0"/></block>... 20 <block text-align="center"> 21 <inline font-size="8pt" font-style="normal" 22 >Information subject to restrictive legend on title page.</inline> 23 </block>... 24 <block text-align="end"><inline 25 font-size="8pt"><frame_static-content></inline> Slide 173 of 26 287</block>...</table> </static-content> 27 <flow>... Of note:
7.2.3 The page-number objectPurpose
Content
Property sets
Other optional properties
Shorthands influencing the above properties
7.2.4 Dynamic content in static contentIt is often necessary to redefine header information more often than once per page sequence.
Dynamic content that is a candidate for inclusion in static content is captured in the flow using the marker object.
It is necessary to have canvas information duplicated to be retrieved.
Preference is afforded to the parents of nested markers based on their position in the area tree hierarchy.
Areas in the area tree have associated markers for each marker class.
Consider Figure 7-3 that shows four pages generated in the area tree.
Figure 7-3. Adding to the area tree the first, last, and other areas for a marker
Only static content may contain retrieve-marker constructs.
Dynamic content inherits properties ancestral to the referencing retrieve-marker construct.
You can scope the search for a marker to be retrieved by using retrieve-boundary property
You can ask for the areas of a particular marker based on the marker's position by using retrieve-position property
Consider the production of "dictionary heads" where every entry in the dictionary includes a marker child and the header reflects the first and last entry on the page for navigation purposes, as shown in Figure 7-4. Figure 7-4. Options for retrieving markers
7.2.5 The marker objectPurpose
Content
Required property
Consider in Example 7-3 a single-sided presentation where the header retrieves a section's title. Each section is surrounded by a block that includes a marker (highlighted in the example) that is thereby associated with the contents of the surrounding block. Note how the arrangement of the section title in the marker is different than that used in the body of the page. 7.2.6 The retrieve-marker objectPurpose
Content
Required property
Optional properties
Example 7-3 Defining markersLine 01 <page-sequence master-reference="frame"> 02 <static-content flow-name="frame-before"> 03 <block text-align="end" font-weight="bold" 04 color="silver" font-size="12pt"> 05 <retrieve-marker retrieve-class-name="section"/> 06 </block> 07 </static-content> 08 ... 09 <flow flow-name="frame-body"> 10 ... 11 <block> 12 <marker marker-class-name="section">Section One - 1.</marker> 13 <block>1. Section One</block> 14 <block space-before="1em">This is a test</block> 15 <block space-before="1em">This is a test</block> 16 ... 17 <block space-before="1em">This is a test</block> 18 <block space-before="1em">This is a test</block> 19 </block> 20 21 <block space-before="2em"> 22 <marker marker-class-name="section">Section Two - 2.</marker> 23 <block>2. Section Two</block> 24 <block space-before="1em">This is a test</block> 25 <block space-before="1em">This is a test</block> 26 ... 27 <block space-before="1em">This is a test</block> 28 <block space-before="1em">This is a test</block> 29 </block> Properties of note
This is highlighted in Example 7-4 using the earlier example of section title citations in a header. 7.2.7 Planning a simple page sequence specificationFigure 7-5 shows how planning ahead can make page sequence specifying easier. Example 7-4 Retrieving markers Line 01 <page-sequence master-reference="frame"> 02 <static-content flow-name="frame-before"> 03 <block text-align="end" font-weight="bold" 04 color="silver" font-size="12pt"> 05 <retrieve-marker retrieve-class-name="section"/> 06 </block> 07 </static-content> 08 ... 09 <flow flow-name="frame-body"> 10 ... 11 <block> 12 <marker marker-class-name="section">Section One - 1.</marker> 13 <block>1. Section One</block> 14 <block space-before="1em">This is a test</block> 15 <block space-before="1em">This is a test</block> 16 ... 17 <block space-before="1em">This is a test</block> 18 <block space-before="1em">This is a test</block> 19 </block> 20 21 <block space-before="2em"> 22 <marker marker-class-name="section">Section Two - 2.</marker> 23 <block>2. Section Two</block> 24 <block space-before="1em">This is a test</block> 25 <block space-before="1em">This is a test</block> 26 ... 27 <block space-before="1em">This is a test</block> 28 <block space-before="1em">This is a test</block> 29 </block>
Figure 7-5. Page sequence planning simple example
|