Subject: Re: Finding a fo:table-cells parent column's width for nested table
From: "JD Daniels" <jd@xxxxxxxxxxxx>
Date: Thu, 6 Mar 2003 16:24:20 -0800
|
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@xxxxxxxx>
To: <xsl-list@xxxxxxxxxxxxxxxxxxxxxx>
Sent: Thursday, March 06, 2003 2:47 PM
Subject: Re: 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
|