我需要從經典asp的svg文件中獲取一個屬性。但我的代碼不起作用。任何想法?用asp解析一個svg xml
來自字體標籤的id屬性。
<font id="LetterGothicStdRegular" horiz-adv-x="1228" >
ASP功能
function getFontId(url)
Set objXml = Server.CreateObject("MSXML2.DomDocument.6.0")
'objXml.async = False
objXml.LoadXML(url)
For Each oNode In objXml.SelectNodes("svg/defs/font")
sKey = oNode.GetAttribute("id")
' sValue = oNode.Text
getXML=sKey
Next
Set objXml= Nothing
end function
SVG代碼:
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns="http://www.w3.org/2000/svg">
<metadata>This is a custom SVG webfont generated by Font Squirrel. Copyright : 1987 1990 1991 1995 1998 2001 2002 Adobe Systems Incorporated All rights reserved Foundry : Adobe </metadata>
<defs>
<font id="LetterGothicStdRegular" horiz-adv-x="1228">
<font-face units-per-em="2048" ascent="1520" descent="-528"/>
<missing-glyph horiz-adv-x="500"/>
<glyph unicode="2" horiz-adv-x="1783" d="M149 1099l66 51l672 -696l671 696l66 -51l-737 -776z"/>
<glyph unicode="8" horiz-adv-x="1783" d="M167 430l737 776l738 -776l-66 -51l-672 696l-671 -696z"/>
<glyph unicode="<" d="M201 737l776 738l51 -66l-696 -672l696 -671l-51 -66z"/>
<glyph unicode=">" d="M288 66l696 671l-696 672l51 66l776 -738l-776 -737z"/>
<glyph unicode=" " horiz-adv-x="737"/>
<glyph unicode=" " horiz-adv-x="1475"/>
<glyph unicode=" " horiz-adv-x="737"/>
<glyph unicode=" " horiz-adv-x="1475"/>
<glyph unicode=" " horiz-adv-x="491"/>
<glyph unicode=" " horiz-adv-x="368"/>
<glyph unicode=" " horiz-adv-x="245"/>
<glyph unicode=" " horiz-adv-x="245"/>
<glyph unicode=" " horiz-adv-x="184"/>
<glyph unicode=" " horiz-adv-x="295"/>
<glyph unicode=" " horiz-adv-x="81"/>
<glyph unicode=" " horiz-adv-x="295"/>
<glyph unicode=" " horiz-adv-x="368"/>
<glyph unicode="" horiz-adv-x="500" d="M0 0v0v0v0v0z"/>
</font>
</defs>
</svg>
「我的代碼不工作」 - 具體是什麼與它的問題呢?你有錯誤嗎? – halfer 2012-04-16 19:10:19