我在Apache文档中使用Barcode4J ean-13生成动态消息时遇到了问题。我用硬编码的信息生成条形码。但是,我想将条形码作为参数传递给xsl文档。我该怎么做呢?
此外,我还参考了barcode4J 站点的帮助页面,没有任何运气。我试过使用描述这里的技术,但没有成功。
这就是我的xsl文档的样子。
<fo:block-container left="1000" top="1000"
z-index="1" position="relative">
<fo:block>
<fo:instream-foreign-object>
<bc:barcode xmlns:bc="http://barcode4j.krysalis.org/ns"
message="123456789789">
<bc:ean-13 />
</bc:barcode>
</fo:instream-foreign-object>
</fo:block>
</fo:block-container>发布于 2015-08-31 15:37:43
您没有说明您使用的是哪个XSLT版本。
如果要将参数传递给XSLT,则需要将该参数声明为xsl:stylesheet的子元素,例如:
<xsl:param name="barcode" />有关XSLT1.0,请参见http://www.w3.org/TR/xslt#top-level-variables。如果您正在使用XSLT2.0,您可以声明更多关于它的信息。
如何传递参数值将取决于您正在使用的XSLT处理器,但您可以预期XSLT处理器的文档将讨论这个问题。
然后,可以在其他文字标记中的“属性值模板”中使用$barcode参数:
<fo:block-container left="1000" top="1000"
z-index="1" position="relative">
<fo:block>
<fo:instream-foreign-object>
<bc:barcode xmlns:bc="http://barcode4j.krysalis.org/ns"
message="{$barcode}">
<bc:ean-13 />
</bc:barcode>
</fo:instream-foreign-object>
</fo:block>
</fo:block-container>有关XSLT1.0中的属性值模板,请参见http://www.w3.org/TR/xslt#dt-attribute-value-template
https://stackoverflow.com/questions/32309824
复制相似问题