Xml XSLT将base64显示为图像

Xml XSLT将base64显示为图像,xml,xslt,xsl-fo,Xml,Xslt,Xsl Fo,我有一个包含base64格式图像的节点的XML。 我尝试了很多方法,但无法使用xslt fo(apache)生成PDF 这是我要显示的XML节点: ..... <pregunta101> <listaImagenes> <contenido>base64content</contenido> <ruta>c:\\ssss\\aaaa.jpg</ruta> <nom

我有一个包含base64格式图像的节点的XML。 我尝试了很多方法,但无法使用xslt fo(apache)生成PDF

这是我要显示的XML节点:

.....
<pregunta101>
    <listaImagenes>
        <contenido>base64content</contenido>
        <ruta>c:\\ssss\\aaaa.jpg</ruta>
        <nombre>codigoFOTO</nombre>
    </listaImagenes>
    <listaImagenes>
.....
。。。。。
基本内容
c:\\ssss\\aaaa.jpg
科迪戈福托
.....
如果我放置内容而不是“contenido”变量,它会完美地显示它,但我不能在foreach中显示它,也不能直接读取xml节点

<fo:table-row number-columns-spanned="2">
    <fo:table-cell padding-right="10pt" padding-top="10pt" padding-left="10pt">
        <xsl:for-each select="solicitude/preguntasCheckList/pregunta101/listaImagenes">
            <xsl:value-of select="." />
            <fo:block text-align="left">
                <fo:external-graphic src="url('data:image/jpeg;base64,contenido)"/>                                             
            </fo:block>
        </xsl:for-each>
     </fo:table-cell>
</fo:table-row>

仅使用在线XML-FO处理器进行测试,但如果您进行更改,它应该可以工作

<fo:external-graphic src="url('data:image/jpeg;base64,contenido)"/> 

进入


通过这个调整,我得到了示例XML作为输入

<fo:external-graphic src="url('data:image/jpeg;base64,base64content)"/>

如果不将节点/变量名放在大括号中-
{}
,它将只作为文本值处理,而不会被解释


仅供参考:

请不要在您的问题中发布解决方案。如果您觉得您的解决方案与已发布的解决方案不同,并且对其他人有用,请为您自己的问题创建一个新的答案。对此表示抱歉。下次我这么做的时候。我已经把你的帖子回复到@Arkanon的第一次编辑。应该是这样的。Arkanon改进了语法和缩进。正如阿尔卡农已经说过的;你不应该在问题中张贴你的答案。请不要再输入它们。
<fo:external-graphic src="url('data:image/jpeg;base64,base64content)"/>