2013-07-02 45 views
0

我需要從現有的Docx文件創建XSL-FO,然後將其轉換爲PDF文件。我從DOCX4J項目中找到了XSLT。我只想知道,如果我根本不使用DOCX4J,那麼如何將XSLT應用於DOCX文件以生成XSL-FO文件?從Office OpenXML(DOCX)生成XSL-FO

+0

看看[這個問題](http://stackoverflow.com/questions/17029603/xslt-xml-word-to-xsl-fo-pdf)。從它的答案中,你可能需要按照步驟,顯然除了#4。 – bytebuster

+0

謝謝,我檢查過,那隻適用於Word 2003. – hardywang

+1

首先,您不能只將XSLT應用於DOCX文件。 DOCX文件是一個內含目錄結構和XML文件的zip容器。這些信息以WordML文件格式封裝(如果運行Word並執行「另存爲XML」,則會得到這樣的信息。因此,首先需要將代碼解壓縮,然後才能修改@bytebuster引用的XSL使用document()來訪問單獨的XML塊(比如zip中的styles.xml),被引用的XSL可以很容易地被改變,以適用於> Word 2003的WordML,所需要的只是改變名稱空間。 –

回答

0

因爲XSLT嚴重依賴調用docx4j的Java代碼的Xalan擴展函數,所以不能使用docx4j的XLST,而不使用docx4j的其餘部分。