我对XSL-FO还是很陌生,我尝试的方法可能不是解决此问题的理想方法。
我在本地目录中存储了一些图标。 我需要为fo:external-graphic的src动态使用这些图标的路径。
<fo:external-graphic src='xsl:value-of select="article[@index=1]/data/subscriber-B-10' width="100px" height="90px" content-height="scale-up-to-fit" display-align="center" text-align="center"></fo:external-graphic>
我尝试了subscriber-B-10
中路径的不同变体。
"subscriber-B-10": "url('file:///C:/Users/Administrator/icons/icon1.bmp')",
"subscriber-B-10": "file:///C:/Users/Administrator/icons/icon1.bmp",
最后一个带有src='url("xsl:value-of select="article[@index=1]/data/subscriber-B-10")'
直接使用指向其中一个图标的路径是可行的:
src='url("file:///C:/Users/Administrator/icons/icon1.bmp")
答案 0 :(得分:0)
查找“属性值模板”。 XSLT 1.0的定义位于https://www.w3.org/TR/1999/REC-xslt-19991116#attribute-value-templates(但希望您使用的是更新的XSLT 2.0或XSLT 3.0)。
您可以使用属性值模板通过将XPath放在文字属性值的 <DockPanel Height="31" HorizontalAlignment="Left" Margin="82,107,0,0" Name="dockPanel1" VerticalAlignment="Top" Width="286" LastChildFill="True">
<TextBlock Text="Text block" DockPanel.Dock="Left" />
<Grid>
<Button Content="Button1" Visibility="Visible" />
<Button Content="Button2" Visibility="Collapsed" />
</Grid>
</DockPanel>
和{
之间来获取XPath的字符串值:
}