This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Tabs
- From: "sascha" <sascha at assbach dot de>
- To: <xsl-list at lists dot mulberrytech dot com>
- Date: Mon, 12 Aug 2002 15:46:04 +0200
- Subject: [xsl] Tabs
- References: <F179ptgFrYILoygXLsx00000070@hotmail.com>
- Reply-to: xsl-list at lists dot mulberrytech dot com
Hi,
i have a problem transforming tabs into :fo, maybe i should better post this
into the xsl:fo list , but i guess it is more a XSLT thing:
Here's my Input :
<richtext>
<pardef id="2" leftmargin="0.3938in" tabs="L1.1806in L1.6729in L1.7715in
L2.5590in L2.9521in"/>
<par def="2">
<run>
<font name="Arial"/> Tabbed Text</run>
</par>
...
</richtext>
There are 5 - left-tabs defined in the pardef with the same id that the
actual par element has-
refering to the pardef is done with something like:
<xsl:variable name='pabid'>
<xsl:choose>
<xsl:when test='@def'><xsl:value-of select='@def'/></xsl:when>
<xsl:otherwise><xsl:value-of
select='preceding-sibling::dxl:par[@def][1]/@def'/></xsl:otherwise>
</xsl:choose>
</xsl:variable>
...
<xsl:when test="ancestor::dxl:richtext//dxl:pardef[@id=$pabid]/@tabs">
Then i have to split the tabs -string somehow.
It seems that "tabs" are exported as special chars - how do i check this?
and what special char it IS actually?
And how do i count them? to make a reference to the left-margin i have to
apply to the fo:block I am actually in-
to make the text appear like tabbed at the right place?!
Let's say i have entered 3 Tabs - so in my example i have to make the
following output
<fo:block left-margin="1.7715in" font-face="Arial">Tabbed Text</fo:block>
...something like that.
How do i get a XSLT that transforms my input to an fo: file that makes me
get a correct PDF Output?
Is there a way at all?
Thanks for your help!
Sascha
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list