Hi everybody,
what I am actually trying to do is the following:
<!-- Setting chapter title to separate number and label -->
<xsl:template name="chaptitle.title">
<xsl:param name="node" select="."/>
<xsl:variable name="id">
<xsl:call-template name="object.id">
<xsl:with-param name="object" select="$node"/>
</xsl:call-template>
</xsl:variable>
<fo:block xsl:use-attribute-sets="chap.label.properties">
<xsl:apply-templates select="$node" mode="label.markup"/>
</fo:block>
<fo:block xsl:use-attribute-sets="chap.title.properties">
<fo:list-block provisional-distance-between-starts="1cm + 8pt"
provisional-label-separation="8pt">
<fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block>
<fo:external-graphic>
<xsl:attribute name="src">
<xsl:call-template name="fo-external-image">
<xsl:with-param name="filename" select=concat('images', @icon, '.png'/>
</xsl:call-template>
</xsl:attribute>
</fo:external-graphic>
</fo:block>
</fo:list-item-label>
<fo:list-item-body start-indent="body-start()">
<fo:block>
<xsl:apply-templates select="$node" mode="title.markup"/>
</fo:block>
</fo:list-item-body>
</fo:list-item>
</fo:list-block>
</fo:block>
</xsl:template>
An then in the xml file itself I set:
<chapter icon="advanced">
<title>Advanced Settings</title>
....
where "advanced" is the name of the PNG file in the 'images'
folder. The question is how I can pass the variable icon value (in this
case "advanced") to my chapter template.
Thanks in advance!
Nancy
I would like to dynamically add an icon before a chapter title, with a possibility to change the icon file's name in the XML file itself, and not in the stylesheet. I would like to add the icon's filename in the chapter's tag itself (e.g. <chapter icon="internetconn"> and to pass this filename to the template that will add it to the rest of the file path (eg, concatenate('/images', @icon, '.png')
Please advise, how to extract the value of the "icon" variable and pass it to the "concatenate" part of the <fo-external graphic> template?
Thanks a lot! Nancy
|
|