我正在尝试将一些 xml 文件放在一起,并使用 xslt 转换将它们输出到 xhtml 中。我通过指定一个名为 index.xml 的 xml 文件来解决这个问题,我在其中定义了我需要使用的其他文件,如下所示:
<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="merge.xsl"?>
<dic:dictionary xmlns:dic = "dictionary">
<dic:Logo>Logo</dic:Logo>
<dic:Author>User Name</dic:Author>
<dic:EnglishWords>english</dic:EnglishWords>
<dic:SwedishTranslation>swedish</dic:SwedishTranslation>
<dic:SwedishWords>swedish</dic:SwedishWords><br/>
<dic:EnglishTranslation>english</dic:EnglishTranslation>
</dic:dictionary>
然后在我的转换中,我有一个徽标的模板声明,如下所示:
<!--Logo-->
<xsl:template match = "dic:index//Logo">
<html>
<head>
<link rel="stylesheet" type="text/css" href="Style.css" />
</head>
<body>
<div id = "Logo">
<xsl:apply-templates select="document(concat(.,'.svg'))"/>
</div>
</body>
<xsl:apply-templates/>
</html></xsl:template>
svg 文件本身如下所示:
<?xml version="1.0" standalone="no"?>
<?xml-stylesheet href="Style.css" type="text/css"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" x="0px" y="0px"
width="180px" height="70px" viewBox="0 0 180 70"
enable-background="new 0 0 180 70" xml:space="preserve"
preserveAspectRatio="xMinYMin meet">
<line fill="none" stroke="#000000" x1="0" y1="71.533" x2="35.036" y2="5.109"/>
<line fill="none" stroke="#000000" x1="91.971" y1="15.767" x2="91.971" y2="71.533"/>
<line fill="none" stroke="#000000" x1="146.357" y1="5.109" x2="177.372" y2="71.533"/>
<line fill="none" stroke="#000000" x1="0" y1="71.533" x2="177.372" y2="71.533"/>
<line fill="none" stroke="#000000" x1="17.518" y1="58.108" x2="82.481" y2="58.108"/>
<line fill="none" stroke="#000000" x1="101.459" y1="58.108" x2="161.866" y2="58.108"/>
<line fill="none" stroke="#000000" x1="82.481" y1="58.108" x2="91.971" y2="71.533"/>
<line fill="none" stroke="#000000" x1="101.459" y1="58.108" x2="91.971" y2="71.533"/>
</svg>
然而,虽然这种方法适用于其他 xml 文件,但不适用于这个 svg 文件,作为输出,我只得到单词 Logo。我一直在四处寻找,但我没有看到一个很好的例子来说明如何做到这一点。此外,当我尝试应用 css 样式表时,我有以下内容
#Logo{
width: 300px ;
margin-left: auto ;
margin-right: auto ;
}
它也不起作用......如何使css工作......?
任何有关此的帮助或信息将不胜感激。
非常感谢你。