xsl-list
[Top] [All Lists]

Re: Finding a fo:table-cells parent column's width for nested table

2003-03-06 17:24:20
I am a little confused.. What do you mean by default templates?

Say the xsl stylesheet has processed the parent table, and we have

column-width=70mm
column-width=110mm
column-width=70mm

now two rows down and one column into this table, I have an another table.
Is there a way to tell that iteration that it only has 110mm to assign to
the newest table width? (ie- pass 110 as blockwidth to process-col-width)


----- Original Message -----
From: "J.Pietschmann" <j3322ptm(_at_)yahoo(_dot_)de>
To: <xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com>
Sent: Thursday, March 06, 2003 2:47 PM
Subject: Re: [xsl] Finding a fo:table-cells parent column's width for nested
table


JD Daniels wrote:
I have changed it so that the template that figures out the width uses a
param i pass it, but how can I figure out if the table is inside a table
cell, and pass it the value of the parent table cells parent
fo:table-column
width?

Use something like
  <xsl:if test="ancestor::table">
Better yet, always pass the current block width down through all
templates matching block level elements, and pass the page width
in the top level template.

I mean

<xsl:template match="table|tbody">
   <xsl:param name="blockwidth"/>
   <fo:table>
   ...
    <xsl:call-template name="process-col-width">
      ...
      <xsl:with-param name="parentblockwidth"
           select="$blockwidth"/>
     ...
   <fo:table-body>
     <xsl:apply-templates>
      <xsl:with-param name="blockwidth"
           select="$blockwidth"/>
     </xsl:apply-templates>
   </fo:table-body>


Watch out for default templates, they will ruin it.

J.Pietschmann


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list