|
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: xslt svg problem
If you look in the SVG DTD you will find that it plays a little trick on you: it has a default namespace declaration for the svg element. This means that if the DTD is used the <a> element is not in the null namespace, its in the SVG one. This means you either have to not read the DTD (as you discovered, this works) or declare the SVG namespace in the stylesheet and say match="svg:a" instead of match="a". The second is more correct. Regards, Trevor Nash >Hi, > >I'm trying to create png/imagemap from svg. My svg >Documents are first created from GraphXML-files using >Xalan. Next I convert them to png with the >batik-rasterizer. Then I try to extract the >xlink:hrefs from the svg to build an Imagemap. And >there the problem starts. Xalan doesn't recognizes the ><a> element when I use my document like this (The dtd >is in the same folder): > ><?xml version="1.0" encoding="iso-8859-1" >standalone="no"?> > <!DOCTYPE svg SYSTEM "svg-20000802.dtd"> ><svg xmlns:xlink="http://www.w3.org/1999/xlink" >xml:space="preserve" width="5.4959999999999996in" >height="5.4959999999999996in"> > <circle style="fill:blue;stroke:red;" cx="0.5496in" >cy="0.5496in" r="0.5496in"/> > <a xlink:href="http://www.cwi.nl/~ivan"> > <text style="fill:red" x="52.211999999999996" >y="114.42399999999999">Project leader</text> > </a> ></svg> > >But when I change <!DOCTYPE svg SYSTEM >"svg-20000802.dtd"> to <!DOCTYPE svg> everything works >fine. > >What am I doing wrong? > >MAX > >P.s.: that's my XSL: > ><xsl:stylesheet >xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >version="1.0" > >xmlns:xlink="http://www.w3.org/1999/xlink"> ><xsl:output encoding="UTF-16" method="html"/> ><xsl:template match="/"> > <xsl:element name="HTML"> > <xsl:element name="HEAD"> > <xsl:element >name="TITLE">imagemapbeispiel</xsl:element> > </xsl:element> > <xsl:element name="BODY"> > <xsl:element name="IMG"> > <xsl:attribute name="src">out.png</xsl:attribute> > > <xsl:attribute name = "usemap" >>#explmap</xsl:attribute> > </xsl:element> > <xsl:element name = "MAP"> > <xsl:attribute name = "name" >>explmap</xsl:attribute> > <xsl:apply-templates/> > </xsl:element> > </xsl:element> > </xsl:element> ></xsl:template> ><xsl:template match="a"> > <xsl:element name = "AREA"> > <xsl:attribute name = "href" > > <xsl:value-of select="@xlink:href" /> > </xsl:attribute> > <xsl:attribute name = "shape" >>rect</xsl:attribute> > <xsl:variable name = "reftext"><xsl:value-of >select="text"/></xsl:variable> > <xsl:variable name = "length"><xsl:value-of >select = "string-length($reftext)*5"/></xsl:variable> > <xsl:variable name = "xwert"> > <xsl:value-of select = "text/@x" /> > </xsl:variable> > <xsl:variable name = "ywert"> > <xsl:value-of select = "text/@y" /> > </xsl:variable> > <xsl:variable name = "xwert2"> > <xsl:value-of select = "$xwert+$length" /> > </xsl:variable> > <xsl:variable name = "ywert2"> > <xsl:value-of select = "$ywert+-19" /> > </xsl:variable> > <xsl:attribute name = "coords" > > <xsl:value-of select = "$xwert" /> > <xsl:text>,</xsl:text> > <xsl:value-of select = "$ywert2" /> > <xsl:text>,</xsl:text> > <xsl:value-of select = "$xwert2" /> > <xsl:text>,</xsl:text> > <xsl:value-of select = "$ywert" /> > </xsl:attribute> > </xsl:element> > </xsl:template> ></xsl:stylesheet> > > > >__________________________________________________ >Do You Yahoo!? >Get email alerts & NEW webcam video instant messaging with Yahoo! Messenger >http://im.yahoo.com > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list -- Traditional training & distance learning, Consultancy by email Melvaig Software Engineering Limited voice: +44 (0) 1445 771 271 email: tcn@xxxxxxxxxxxxx XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|






