1つのXMLファイルをDOCXファイルに変換しようとしましたが、XSLTを使用してXMLをXHTMLに変換した後、MS WordでXHTMLを開き、 DOCX。1つのXMLファイルをDOCXに直接変換する
しかし、私の仕事は、直接ををDOCXするために、任意のXML構造(などDITA、TEI、DocBook形式を、)に変換することです...それを行うには、他の方法があるのですか?
これのソースは見つかりませんでした。それは常にDOCX to XMLであり、それ以外の方法ではありません。
1つのXMLファイルをDOCXファイルに変換しようとしましたが、XSLTを使用してXMLをXHTMLに変換した後、MS WordでXHTMLを開き、 DOCX。1つのXMLファイルをDOCXに直接変換する
しかし、私の仕事は、直接ををDOCXするために、任意のXML構造(などDITA、TEI、DocBook形式を、)に変換することです...それを行うには、他の方法があるのですか?
これのソースは見つかりませんでした。それは常にDOCX to XMLであり、それ以外の方法ではありません。
はい、XSLTを使用して、これらのXML形式のいずれかからOOXMLに変換できます。 XSLTは、XMLからXMLへの変換に最適です。
言い換えれば、あなたが言及する各入力XMLフォーマットはかなり複雑であり、OOXMLは非常に複雑です。また、DOCXは実際にはOpen Packaging Conventionsでパッケージ化されたOOXMLのdocument.xml
ファイルを含む多くのコンポーネントのアセンブリです。
まず、MS Wordで手動で作成した簡単なドキュメントの作成をターゲットにすることをお勧めします。ファイルの名前を.docx
拡張子から.zip
拡張子に変更し、コンポーネントを解凍してword/document.xml
ファイルを復元します。元のword/document.xml
ファイルのように、OOXMLをそのまま出力する簡単なXSLTプログラムを作成します。その後、いくつかのカスタマイズをゆっくりと追加します。終了したら、生成されたword/document.xml
ファイルを解凍されたアセンブリに再挿入し、rezipして、拡張子の名前を.docx
に変更します。要求されたとおりにXMLをDOCXに直接変換します。
詳細については、Using XSLT and Open XML to Create a Word 2007 Documentを参照してください。