这里的新手/初学者XSL用户。
XSLT文档中有类似于以下模板的内容:
<xsl:template name="getpoint"> <xsl:param name="nodenum"/> <xsl:value-of select="//nodeCoord[nodeNumber=$nodenum]/nodeXCoord"/> <xsl:text>,</xsl:text> <xsl:value-of select="//nodeCoord[nodeNumber=$nodenum]/nodeYCoord"/> </xsl:template>
整个XSLT文档用于生成SVG图形。但是,我希望将浏览器的Y坐标系颠倒过来,因为我的源数据假定了一个传统的坐标系。
我的问题非常简单:如何将nodeYCoord乘以-1,并将结果发送到浏览器而不是由<xsl:value-of>元素生成的值?
编辑:请不要提供关于如何翻转Y坐标系的替代方法。我已经对此进行了研究,对于我的具体应用程序,我非常确定这是最好的方法(假设我可以让它工作)。
发布于 2014-09-05 23:57:35
我的问题非常简单:如何将nodeYCoord乘以-1,并将结果发送到浏览器而不是由
<xsl:value-of>元素生成的值?
答案也很简单:使用减号。而不是:
<xsl:value-of select="//nodeCoord[nodeNumber=$nodenum]/nodeYCoord"/>写:
<xsl:value-of select="-//nodeCoord[nodeNumber=$nodenum]/nodeYCoord"/>请不要提供关于如何翻转Y坐标系的替代方法。我已经对此进行了研究,对于我的具体应用程序,我非常确定这是最好的方法(假设我可以让它工作)。
也许你应该再看一看。
发布于 2014-09-05 23:32:57
将值保存到变量中,然后在xpath表达式中使用它。
<xsl:variable name="yval" select="//nodeCoord[nodeNumber=$nodenum]/nodeYCoord/text()"/>
<xsl:value-of select="-1 * $yval"/>https://stackoverflow.com/questions/25695252
复制相似问题