我在这里遇到过类似的话题,但我找不到答案。我有这个xml代码:
<Content>
<StringValue formatted="false" name="Single.graphic.component.title">
<Value>title of the single graphic</Value>
</StringValue>
<ImageDataItem name="single.graphic.component.image">
<Value>iVBORw0KGgoAAAANSUhEUgAAAYUAAADeCAI</value>
</ImageDataItem>
<StringValue formatted="false" name="single.graphic.component.source">
<Value>someValue2</Value>
</StringValue>
</Content>
我的xsl说
<p>Grafik 1:<xsl:apply-templates select="//StringValue[@name='Single.graphic.component.title']/Value/node()"/></p>
<p><xsl:apply-templates select="//StringValue[@name='single.graphic.component.source']/Value/node()"/></p>
它适用于两个文本,但不适用于图像(我知道代码不存在,但我已经尝试过了)。如果我写了一个ImageDataItem的值,则返回该字符串。有线索吗?
答案 0 :(得分:1)
XPath中的图像元素名称错误。您还需要使用Data URI Schema来显示base64编码的图像。
试试这个......
<img>
<xsl:attribute name="src">
<xsl:text>data:image/png;base64,</xsl:text>
<xsl:value-of select="//ImageDataItem[@name='single.graphic.component.source']/Value"/>
</xsl:attribute>
</img>