2017-10-23 11 views
0

文書にdocx.table.Tableとdocx.text.paragraph.Paragraphオブジェクトを追加します。 現在python-docx文書オブジェクトにテーブルオブジェクトを追加する

テーブル= document.add_table(行= 2、COLS = 2)

は、文書内に新しいテーブルを作成し、そしてテーブルがすべてとdocx.table.Tableオブジェクトを保持しますその特性。

私が代わりにやりたいことは、たとえば以前に別のドキュメントから読み込んだドキュメントにテーブルOBJECTを追加することです。

新しく追加されたテーブルと以前読み込んだテーブルオブジェクトのすべてのプロパティを反復して推測していますが、値を設定するだけで十分ですが、別の方法がありますか?

ありがとうございました!

答えて

1

説明にはいくつかの異なる可能性がありますが、python-docxに直接APIをサポートしているものはありません。

最も単純なケースは、python-docxドキュメントオブジェクトのある部分から別の場所に同じドキュメントのテーブルをコピーすることです。これはおそらく、テーブルのXMLのディープコピーを実行することで実現できます。これを行う方法の詳細はこの質問の対象外ですが、​​で検索するといくつかの例があります。

1つのDocumentオブジェクトともう1つのDocumentオブジェクトの間に複雑なテーブルがあります。表には、ソース文書では使用できますが、ターゲット文書では使用できない外部参照が含まれている場合があります。したがって、この場合、ディペンデンシー・アプローチは、依存関係を特定して解決することなく、常に機能するとは限りません。

最後に、PowerPointプレゼンテーションで見つかったり、Excelドキュメントの範囲から形成されたOLEオブジェクトのコピー/埋め込みがあります。 OLEオブジェクトの埋め込みはサポートされていませんし、すぐに追加される可能性はほとんどありません。これは主にOLE形式の埋め込み形式が不明瞭であるためです(文書化されていません)。

+0

コメントありがとうございます!だから、私は同じ文書からのスニペットを持っていると、同じスタイル、参照などにアクセスできるので、この場合もうまくいくと思いますか?私が今やってみたのは、挿入したい表の完全なxmlスキーマをコピーしてメイン文書に追加することです。これは同じように動作します(しかし、私はそれを見ていただきありがとうございます)。 – SaintHUN

関連する問題