[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

even column lengths

Subject: even column lengths
From: Luke Jones <ljones@xxxxxxxxxx>
Date: Mon, 26 Mar 2007 15:11:22 -0500
 even column lengths
xsl experts,

I'm currently trying produce a section of columns within a page.  Using
the column attributes of the body region, I can easily create the
desired columns.  However, the columns do not always come out with an
even (or close to even) length, which is required for this particular
document.

In my initial efforts to figure this problem out, I saw several
references of putting an empty block at the end of the text in a effort
to force the columns to be even.  This did not work for me, although it
could be that I did not fully understand the method that was being
proposed.

Below is part of my xsl that hopefully will give you a better
understanding of where I'm at within the code...

<fo:simple-page-master
     master-name = "chapter-rest-even"
     page-width = "6.75in"
     page-height = "10in"
     margin-top = "0.5in"
     margin-bottom = "0.5in"
     margin-left = "0.75in"
     margin-right = "0.875in">
     <fo:region-body
            margin-top = "0.5in"
            margin-bottom = "0.5in"
            column-count = "2"
            column-gap = "2mm"/>
</fo:simple-page-master>
<fo:page-sequence master-reference = "all-pages">
      <fo:flow flow-name="xsl-region-body">
            <xsl:for-each select = "//legaldoc">
                  <fo:block span = "all" text-align =
"justify">
<xsl:apply-templates select = "law/section/amendatorysection/bookinfo"/>
<xsl:apply-templates select =
"law/section/amendatorysection/statuteno"/>
<xsl:apply-templates select =
"law/section/amendatorysection/catchline"/>
<xsl:apply-templates select = "law/section/amendatorysection/para"/>
<xsl:apply-templates select = "law/source"/>
<xsl:apply-templates select = "law/crossreference"/>
<xsl:apply-templates select = "law/annotation" mode = "header"/>
                  </fo:block>
                  <fo:block span = "all"/>
                        <fo:block text-align = "justify">
             <xsl:apply-templates select = "law/annotation"/>
                                <fo:block><fo:leader leader-pattern =
"space" leader-length = "1mm"/></fo:block>
                        </fo:block>
                        <fo:block span = "all"/>
            </xsl:for-each>
            <fo:block span = "all"/>
       </fo:flow>
</fo:page-sequence>


To the best of my knowledge this section of code is setting up the
columns within the body region. Then calling all the templates that DO
NOT get broken up into columns inside a span=all block. Finally the
annotation template is called which SHOULD be broken up into columns.

Any idea on how to even out the columns is greatly appreciated!!

Thanks!
Luke

Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.