1
我有幾段帶有「書名」樣式的段落,我想將這些段落轉換爲帶有書名「書名」的詞表。的XML如下:將OpenXML轉換爲帶有XLS的單詞
<w:document xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main">
<w:p>
<w:pPr>
<w:pStyle w:val="booktitle"/>…
</w:pPr>
<w:r>
<w:rPr/>
<w:t>First Paragraph</w:t>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="booktitle"/>…
</w:pPr>
<w:r>
<w:rPr/>
<w:t>second Paragraph</w:t>
</w:r>
</w:p>
</w:document>
所需的輸出:
書名
第一款
第二款
我的XSL是在這裏:
<xsl:template match="w:p">
<xsl:choose>
<xsl:when test=".//w:pStyle[@w:val='booktitle']">
<w:tbl>
<w:tblPr>
<w:tblBorders>
<w:top w:val="single" w:sz="1" />
<w:left w:val="single" w:sz="1" />
<w:bottom w:val="single" w:sz="1" />
<w:right w:val="single" w:sz="1" />
<w:insideH w:val="single" w:sz="1" />
<w:insideV w:val="single" w:sz="1" />
</w:tblBorders>
</w:tblPr>
<w:tblGrid>
<w:gridCol w:w="1024" />
<w:gridCol w:w="1024" />
</w:tblGrid>
<w:tr><w:tc><w:p><w:r><w:t>Booktitle</w:t></w:r></w:p></w:tc></w:tr>
<w:tr>
<w:tc>
<w:tcPr>
<w:tcW w:w="1024" />
</w:tcPr>
<w:p><w:r><w:t><xsl:value-of select=".//w:r/w:t"/></w:t></w:r></w:p>
</w:tc>
</w:tr>
</w:tbl>
</xsl:when>
</xsl:choose>
</xsl:template>
我收到輸出像
BOOKTITLE
第一款
BOOKTITLE
第二款
標題被重複用於每個節點。請幫我解決這個問題。在此先感謝...
您好感謝爲您的快速回復。我使用OpcXsltTransform.exe進行轉換,如果我使用上述xsl運行,我無法打開Word文件,它顯示無法打開文檔,但內容存在一些問題。 – VSr 2012-07-06 05:58:10
我希望因爲在w:tr中定義的w:p節點沒有 –
VSr
2012-07-06 06:18:06
我找到了通過檢查第一次發生來完成它的方法。我的樣式表如下: xsl:template>' BOOKTITLE xsl:template> –
VSr
2012-07-09 07:02:56