問題タブ [wordprocessingml]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - XWPFRun は、空白が削除された実行を生成します
テンプレート内のいくつかの文字列パターンを置き換え、Apache POI を使用して出力 docx ファイルを生成する Java コードを開発しました。ヘッダーと段落のパターンを置き換えるのは簡単でしたが、テキスト ボックス内を置き換えようとすると問題が発生しました。Apache POI を使用して docx のテキスト ボックスのテキストを置き換えるで Axel Ritcher が提供するコードを使用していますが、実行のたびにいくつかの空白が削除されるという問題があります。
例えば:
なる:
この置換を行うコードの部分は次のとおりです (関数のパラメーターは次のとおりです。doc_buffer は XWPFDocument であり、パターンと置換は両方とも文字列です)。
追加情報が必要な場合は、お知らせください。
前もって感謝します!
ms-word - OpenXML SDK の段落を Word 文書の相互運用段落に一致させる
100 ページ以上のドキュメント内のテキストを解析しようとすると、Word の相互運用性が非常に遅くなります。はるかに高速な OpenXML SDK を使用するようにコードを書き直しました。私の問題は、OpenXMLドキュメントで情報を見つけたら、Wordドキュメントでそれを見つけて、メインウィンドウをスクロールする必要があることです。これを実現するには、OpenXML 段落を相互運用段落に何らかの方法で一致させる必要があります。interop の段落は openxml の段落と完全に一致すると思っていましたが、それは間違いでした。実際、相互運用には通常、OpenXML よりも多くの段落があります。それらを一致させるのに役立つトリックや情報はありますか? たとえば、通常、相互運用には、テーブルの各行の後に空の段落が 1 つあることがわかりました。おそらくこの情報を使って 心に留めておくことができます
アップデート
以下は、次のような単純なコンテンツを持つ Word ドキュメントの相互運用と openxml 段落の違いを示すために作成した単純なアドインのスクリーンショットです。
次に、アドインは相互運用パラグラフのリストと OpenXML パラグラフのリストを取得し、それらを並べて表示します。
私が使用したコードは次のとおりです。
c# - 開いている.docxファイルがac#クラスでプログラムによって「厳密」または「遷移的」であることを知る方法
.docx ファイルには、「厳密」または「移行」の 2 つのバリアントがあるためです。これらの .docx ファイルの亜種をプログラムで識別する方法はありますか?
MS Office Word 用のアドインがあり、"transitional" のみを許可し、"strict" の禁止/エラーを許可する必要があります。
これまでのところ、取得しようとしましたがwordprocessingDocument.MainDocumentPart.Document.Conformance
、適合性からのみ null を取得しました。それが理想的なアプローチであるかどうかはわかりません...
java - docx4jの実行からテキストを簡潔に抽出するには?
document.xml
次のような DOCX ファイルから docx4j を使用してランからテキストを抽出したい:
実行を抽出したので、各実行のテキストを取得したいと思います。以下のコードは機能しますが、非常に冗長です。より簡潔な方法で org.docx4j.wml.R のインスタンスのテキストを取得することは可能ですか?
「R::getContent」と「R::getRPr」は存在するのに、なぜ「R::getText」がテキスト文書に存在しないのだろうか。