[xep-support] New User - Will this layout work?

W. Eliot Kimber eliot at isogen.com
Thu Mar 6 19:36:02 PST 2003


Richard Ballard wrote:

> I believe I can achieve this using the writing-mode command to reverse 
> the flow of the columns. This is not supported in simpler editors so I 
> cannot try it out, will this work in Renderx.

My reading of the spec is that setting writing mode on body-region 
should in fact control the order of columns per page. For Latin text, 
the normal bidi rules should prevent the text from being rendered 
inappropriately (right to left words or letters).

It would be really easy to acheive this kind of inside-outside layout if 
the placement of list labels followed the same rules as columns. 
Unfortunately, writing mode on region-body only affects the column 
ordering, not the layout of the flow objects within the columns. Bummer.

Here is my test instance:

<?xml version="1.0"?>
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"
     font-family="sans-serif"
     font-size="12pt"
 >
   <fo:layout-master-set>
     <!-- two-column page masters -->
     <fo:simple-page-master master-name="odd-page-2-column"
         page-height="11in"
         page-width="8.5in"
         margin-left="0.5in"
         margin-right="0.5in"
         margin-top="0.5in"
         margin-bottom="0.5in"
         >
       <fo:region-body
           margin-left="1in"
           margin-right="1in"
           margin-top="1.5in"
           margin-bottom="1.5in"
           writing-mode="rl-tb"
           column-count="2"
           />
       <fo:region-before
           extent="1in"/>
     </fo:simple-page-master>
     <fo:simple-page-master master-name="even-page-2-column"
         page-height="11in"
         page-width="8.5in"
         margin-left="0.5in"
         margin-right="0.5in"
         margin-top="0.5in"
         margin-bottom="0.5in"
         >
       <fo:region-body
           margin-left="1in"
           margin-right="1in"
           margin-top="1.5in"
           margin-bottom="1.5in"
           writing-mode="lr-tb"
           column-count="2"
           />
       <fo:region-before
           extent="1in"/>
     </fo:simple-page-master>
     <!-- One-column page masters: -->
     <fo:simple-page-master master-name="odd-page-1-column"
         page-height="11in"
         page-width="8.5in"
         margin-left="0.5in"
         margin-right="0.5in"
         margin-top="0.5in"
         margin-bottom="0.5in"
         >
       <fo:region-body
           margin-left="1in"
           margin-right="1in"
           margin-top="1.5in"
           margin-bottom="1.5in"
           writing-mode="rl-tb"
           column-count="1"
           />
       <fo:region-before
           extent="1in"/>
     </fo:simple-page-master>
     <fo:simple-page-master master-name="even-page-1-column"
         page-height="11in"
         page-width="8.5in"
         margin-left="0.5in"
         margin-right="0.5in"
         margin-top="0.5in"
         margin-bottom="0.5in"
         >
       <fo:region-body
           margin-left="1in"
           margin-right="1in"
           margin-top="1.5in"
           margin-bottom="1.5in"
           writing-mode="lr-tb"
           column-count="1"
           />
       <fo:region-before
           extent="1in"/>
     </fo:simple-page-master>
     <fo:page-sequence-master master-name="body-pages-2-column">
       <fo:repeatable-page-master-alternatives>
         <fo:conditional-page-master-reference
             master-reference="odd-page-2-column"
             odd-or-even="odd"/>
         <fo:conditional-page-master-reference
             master-reference="even-page-2-column"
             odd-or-even="even"/>
       </fo:repeatable-page-master-alternatives>
     </fo:page-sequence-master>
     <fo:page-sequence-master master-name="body-pages-1-column">
       <fo:repeatable-page-master-alternatives>
         <fo:conditional-page-master-reference
             master-reference="odd-page-1-column"
             odd-or-even="odd"/>
         <fo:conditional-page-master-reference
             master-reference="even-page-1-column"
             odd-or-even="even"/>
       </fo:repeatable-page-master-alternatives>
     </fo:page-sequence-master>
   </fo:layout-master-set>
   <fo:page-sequence master-reference="body-pages-2-column">
     <fo:static-content flow-name="xsl-region-before">
       <fo:block text-align="outside"><fo:page-number/></fo:block>
     </fo:static-content>
     <fo:flow flow-name="xsl-region-body"
     >
       <fo:block font-weight="bold"
           border-before-style="solid" border-before-color="blue" 
border-before-width="1pt"
       >Heading Page 1</fo:block>
       <fo:block break-before="column">This is page 1, column 2.</fo:block>
       <fo:block break-before="page" font-weight="bold"
           border-before-style="solid" border-before-color="blue" 
border-before-width="1pt"
       >Heading Page 2</fo:block>
       <fo:block break-before="column">This is page 2, column 2.</fo:block>
       <fo:block break-before="page" font-weight="bold"
           border-before-style="solid" border-before-color="blue" 
border-before-width="1pt"
       >Heading Page 3</fo:block>
       <fo:block break-before="column">This is page 3, column 2.</fo:block>
     </fo:flow>
   </fo:page-sequence>
   <fo:page-sequence master-reference="body-pages-1-column">
     <fo:static-content flow-name="xsl-region-before">
       <fo:block text-align="outside"><fo:page-number/></fo:block>
     </fo:static-content>
     <fo:flow flow-name="xsl-region-body"
     >
       <fo:list-block
           provisional-distance-between-starts="2in"
           provisional-label-separation="0.25in">
         <fo:list-item>
           <fo:list-item-label end-indent="label-end()">
             <fo:block font-weight="bold"
                 border-before-style="solid" border-before-color="blue" 
border-before-width="1pt"
             >Heading</fo:block>
           </fo:list-item-label>
           <fo:list-item-body start-indent="body-start()">
             <fo:block>Page 1</fo:block>
           </fo:list-item-body>
         </fo:list-item>
         <fo:list-item break-before="page">
           <fo:list-item-label end-indent="label-end()">
             <fo:block font-weight="bold"
                 border-before-style="solid" border-before-color="blue" 
border-before-width="1pt"
             >Heading</fo:block>
           </fo:list-item-label>
           <fo:list-item-body start-indent="body-start()">
             <fo:block>Page 2</fo:block>
           </fo:list-item-body>
         </fo:list-item>
       </fo:list-block>
     </fo:flow>
   </fo:page-sequence>
</fo:root>

-- 
W. Eliot Kimber, eliot at isogen.com
Consultant, ISOGEN International

1016 La Posada Dr., Suite 240
Austin, TX  78752 Phone: 512.656.4139

-------------------
(*) To unsubscribe, send a message with words 'unsubscribe xep-support'
in the body of the message to majordomo at renderx.com from the address
you are subscribed from.
(*) By using the Service, you expressly agree to these Terms of Service http://www.renderx.com/tos.html



More information about the Xep-support mailing list