RE: Změna cesty v fo:external-graphic v cyklu xsl:for-each
Jan Tosovsky
j.tosovsky na tiscali.cz
Čtvrtek Duben 29 17:16:40 CEST 2010
> A potřebuji pro každou položku generovat zobrazení fotky, snažím se to
> udělat takto:
>
> <xsl:template match="data">
> <xsl:for-each select="polozka">
> <xsl:variable name="cesta">
> <xsl:value-of select="//data/klient/foto/@href"></xsl:value-of>
> </xsl:variable>
> <fo:external-graphic src="url('{$cesta}')"/>
> </xsl:for-each>
> </xsl:template>
>
> Výstup je špatný, protože se mi pro všechny položky vygeneruje vždy
> obrázek uvedený v prní položce. Je to očekávatelný výsledek, protože
Mozna by bylo lepsi vynechat for-each cyklus, diky nemu se meni kontext a
tim se to trochu komplikuje. Spise bych pouzil neco takoveho:
<xsl:template match="data">
<xsl:apply-templates />
</xsl:template>
<xsl:template match="polozka">
<xsl:variable name="cesta">
<xsl:value-of select="foto/@href" />
</xsl:variable>
<fo:external-graphic src="url('{$cesta}')"/>
</xsl:template>
Další informace o konferenci Docbook