【发布时间】:2013-02-03 11:25:52
【问题描述】:
对不起,如果我问的是新手问题,但命名空间对我来说真的很令人费解。
我正在尝试从单个 XML/XSLT 生成大量 SVG 文档。
我的样式表:
<xsl:stylesheet version="2.0"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
>
<xsl:output method="xml" indent="yes" name="xml" cdata-section-elements="style"/>
<xsl:template match="/">
<xsl:apply-templates select="//root/menu"/>
</xsl:template>
<xsl:template match="menu">
<xsl:variable name="filename" select="concat(@name,'.svg')"/>
<xsl:result-document href="{$filename}" format="xml">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" baseProfile="basic" id="svg-root" width="482" height="600">
<defs>
<style type="text/css"><![CDATA[rect {
fill: white;
fill-opacity:1;
continues...
这有效并产生以下输出:
<?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xs="http://www.w3.org/2001/XMLSchema" version="1.1" baseProfile="basic" id="svg-root" width="482" height="600">
<defs>
<style type="text/css"><![CDATA[rect {
fill: white;
fill-opacity:1;
continues...
但我希望能够根据计算的内容指定高度和宽度属性
我尝试将“
【问题讨论】:
-
我无法理解您的问题。为什么计算高度和宽度和高度会导致这里出现问题?您的示例代码都没有显示任何关于这个非常重要的点。
标签: xml xslt svg xml-namespaces