-Fotokopi belge ile kullanarak() XHTML çıktısı için SVGs Ekle
Benim XML işlenirken, SVG dosyası href
öznitelik doğrudan benim çıkış içine aşağıdaki satırı HTML başvurulan kopyalamak için çalışıyorum:
<xsl:copy-of copy-namespaces="yes" select="document(@href)"/>
copy-namespaces
varsayılan değeri "Evet" her neyse, ama ya ben denedim olup olmadığı hakkında sorular önlemek için ekledim. olduğu için gerekli olmamalıdır
Dosyaları HTML içine kopyalanır, ancak herhangi bir namespaced elemanları bitik. Örneğin, bir dosya bu kopyalanan önce bu gibi görünüyor:
<rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:title/>
</cc:Work>
</rdf:RDF>
</metadata>
<g transform="translate(-519.21143,-667.79077)" id="layer1">
<image xlink:href="data:image/png;base64
Bu gibi görünüyor daha sonra:
<_0:RDF xmlns:_0="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<_0:Work xmlns:_0="http://creativecommons.org/ns#" about="">
<_0:format xmlns:_0="http://purl.org/dc/elements/1.1/">image/svg xml</_0:format>
<_0:type xmlns:_0="http://purl.org/dc/elements/1.1/" resource="http://purl.org/dc/dcmitype/StillImage"/>
<_0:title xmlns:_0="http://purl.org/dc/elements/1.1/"/>
</_0:Work>
</_0:RDF>
</metadata>
<g id="layer1" transform="translate(-519.21143,-667.79077)">
<image href="data:image/png;base64
Görüntü öğesi href
değeri eksik xlink ad özellikle sorunludur.
Bu farklı herhangi bir yorumlama olmadan SVG dosyası okumak için yapabileceğim hakkında bir fikrin var mı?
"Çalışıyor" ama, hack ve daha zarif bir şeyler istiyorum . bir çözüm buldum
<xsl:template name="topic-image-svg">
<!-- Generate tags to embed SWFs -->
<xsl:element name="div">
<xsl:if test="@width">
<xsl:attribute name="width">
<xsl:value-of select="@width"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="@height">
<xsl:attribute name="height">
<xsl:value-of select="@height"/>
</xsl:attribute>
</xsl:if>
<xsl:apply-templates select="document(@href)" mode="svg"/>
</xsl:element>
</xsl:template>
<xsl:template match="*" mode="svg">
<xsl:copy copy-namespaces="yes">
<xsl:for-each select="@*">
<xsl:choose>
<xsl:when test="self::node()[name() = 'xlink:href']">
<xsl:attribute name="xlink:href"><xsl:value-of select="."></xsl:value-of></xsl:attribute>
</xsl:when>
<xsl:otherwise>
<xsl:copy></xsl:copy>
</xsl:otherwise>
</xsl:choose>
</xsl:for-each>
<xsl:apply-templates mode="svg"></xsl:apply-templates>
</xsl:copy>
</xsl:template>
CEVAP
Bence buna ihtiyacın var: http://code.google.com/web/ajaxcrawling/
Ayrıca "işler" çalıştırarak sayfa sunucuda javascript, ve daha sonra bunu google için hizmet vermektedir. özel bir arka uç yükleyebilirsiniz
İki şeyi birleştirmek ve programlama şeyler olmadan bir çözüm iki kez. (App sürece bağlantı parçaları ile tamamen kontrol edilebilir.)
Var "Değiştir Veya Ekle" için...
Java kullanarak.net.Ateş ve işlemek iç...
Python bir sözlük için anahtar Ekle?...
Nasıl iPhone için Windows geliştirme m...
Dinamik hücre düzenleri için UİTableVi...