問題タブ [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.
ms-word - Java と docx4j を使用して docx ファイルを生成する際にセルに HMerge を使用して適用する方法は?
docx4j を使用して docx ファイルを生成する際に簡単なテーブルを作成する方法に関するチュートリアルを見つけました。セルを垂直に結合する方法のサンプルを見てきました。出来た。しかし、水平マージを使用して同じことを試しました。しかし、何も起こりませんでした。HMerge
の使用方法 "restart"
このクラスの値はまたはになることがわかりました"continue"
。それらの値は何ができますか? これがサンプルコードです。
このコードは、2 行のテーブルを示しています。最初の行には、1 つの列とセル (結合する必要があります) しかありません。2 番目の行には 2 つのセルがあります。最初の行をマージして、列スパンが 2 の単一のセルにする方法を教えてください。
c# - FeedData を FooterPart に入れる
Word ドキュメント docx を作成しましたが、現在、OpenXml 生産性向上ツールを使用して「リバース エンジニアリング」を行っています。スタイル、テーマなどをドキュメントにフィードするために使用.FeedData()
しています。これは、リフレクションから .xml ファイルとして保存しています。フッターに到達するまで、すべてがうまくいきました。
スタイルに対して私が行っていることは次のとおりです(これは完全に正常に機能します):
私のドキュメントを見ると、すべてがそこにあります - フッター部分に反映し、xml を footer.xml に保存し、次のような部分を追加します。
他のすべては問題ないように見えます。ドキュメントの一部を確認できますが、フッターがドキュメントに表示されません。ここで何が間違っていますか? どのフッター部分を使用するかなどをドキュメントに伝える必要がありますか?
c# - WordprocessingDocument はテキストを (不必要に) 分離します
テンプレートとして機能する Word 文書の特定の場所を置き換えようとしています。これらの場所は、 で始まる単語としてマークされています@
。たとえば@Name
。すべてのテキストを選択し、関数でそれらを実行して置き換えます。その背後にあるすべてのロジックは正常に機能しています。ただし、理由は不明ですが、テキストは次のように単純に定義されています。
私が期待する方法ではありません。例 (各行に 1 つのテキストがあるテキストの短いリスト):
このように1行にあるはずですが: Document date: @date, written by: @Name @Surname
. ご覧のとおり、@
およびdate
OR@
およびSurname
のような場合、代わりのメソッドを適切に使用することができませ@date
ん@Surname
。だから私は自分のコードを改善しましたが、今ではその中に多くの欠陥があることがわかりました@
。残念ながら、私はテーブル内の 1 つのテキストにたどり着き、それによってすべてのアルゴリズムが完全に停止してしまいました。次のようでした。
さまざまなスタイルで特別にフォーマットしたわけではありませんが。ご覧のとおり、 である必要が(@sum_words)
あり、この場合、私のアルゴリズムは簡単に置き換えられます。残念ながら、私にはできません。したがって、私の質問は次のようになります。
- 単語の部分をまったく変えていないのに、部分に分かれているのはなぜですか?
- これを解決する方法はありますか?
アップデート
これまでにできた最高のことは次のとおりです。
テキストが途中で分割された場合にテキストを接続します(私が見たところ、私のニーズに固有の文字でのみ分割されます@
および_
。最初のテキストのプロパティを保存する方が理にかなっているため、ループは逆になります最後の部分ではなく、グループの一部 (たとえば、要素の前のスペースを保持します)。
更新 2
要求されたテーブル セルは次のとおりです。
asp.net - WordProcessingDocument を pdf に変換する方法
データベースから抽出した値で OpenXML を使用して MS Word テンプレートをオンラインで入力している状況に直面しています。次に、ビジネスプロセスの最終ユーザーに、前述のテンプレートが完全に PDF として記入された電子メールを受け取ってもらいたいと考えています。Microsoft.Office.Interop を試しましたが、サービスが期待どおりに機能しません。
上記の変換を確実かつ簡単に、有料または無料で行う ASP.NET C# コンポーネントがあるかどうかを知りたいです。
どんな援助でも大歓迎です。
c# - PDF ファイルを OpenXML WordprocessingML に埋め込む
私は Open XML SDK と pdf ファイルを docx ファイルに埋め込むことに苦労しています。
- 自動化は使いたくない
- *.pdf 以外のすべてから *.bin ファイルを作成できます (この質問を参照してください)
誰でもこれを経験していますか?私が収集したものから、任意のファイルを Word *.docx ドキュメント (画像を除く) に埋め込むには、*.bin ファイルを作成する必要があります。あれは正しいですか?
c# - ワード プロセッシング ドキュメントの途中に表を挿入する (Open XML SDK)
openXML SDK 2.0 (c# を使用) で詳細を入力するテンプレート Word ドキュメントがあります。また、テーブルをファイルに挿入する必要があります。MSDNでこのチュートリアルを見つけました。しかし - この例では、テーブルをドキュメントの最後に追加しています。この行を置き換える必要があるかもしれません:
他の何かと。(完全なコードは上記のリンクにあります)。
私を助けてください..私はまだ何も見つかりませんでした。
ありがとう。
vsto - WordprocessingML のフラグメントにカスタム識別子を追加する方法
Word 2010 VSTO アドインを実装して、ユーザーが Microsoft Word でリッチ テキスト コンテンツを編集できるようにしています。アドインは、ユーザーが作成したコンテンツを WordprocessingML マークアップとしてデータベースに保存します。1 つの Word ドキュメントで複数のデータベース アイテムを編集する機能を提供する必要があります。ユーザーがドキュメントを保存すると、アドインは各アイテムの XML をデータベースにアップロードします。
私が遭遇した問題は、どの XML フラグメントがどの項目に属しているかを識別する方法です。理想的には、HTML の要素に似たものを実現したいと考えていdiv
ます。この要素を使用して、各アイテムをラップし、それぞれにカスタム識別子を追加できますdiv
。次に、ドキュメントが保存された後、各 div を取得して内部 XML を抽出できます。
残念ながら、私が現在見つけた最善の解決策は、ブックマークを使用してドキュメント内の各項目の開始と終了をマークすることです。ただし、これを実装するのは難しいようです。なぜなら、各アイテムのドキュメントを解析し、開始と終了のブックマークを見つけ、すべての兄弟 XML ノードを抽出し、すべての XML 要素が適切に閉じられていることを確認する必要があるからです (開始と終了から)終了ブックマークは、XML ドキュメントのさまざまなレベルにある可能性があります)。これは非常に複雑で、エラーが発生しやすいようです。
誰かが同様の問題を抱えていて、それに対するより良い解決策を知っているかどうか疑問に思っていましたか?
c# - OpenXml.Wordprocessing で印刷可能領域の幅を検出する
OpenXml を使用して Word 文書に画像を追加しています。
追加する画像のサイズを知ることができ、必要に応じてサイズを変更できます。しかし、私が本当に望んでいるのは、現在の列よりも幅が広い場合にのみサイズを変更することです。(私の場合、列は 1 つしかありませんが、おそらく変更される可能性があります。)
現在の列の幅を知る方法はありますか?したがって、画像が列内に収まるようにする方法はありますか? そのままでは、大きな画像がページからはみ出しています。
c# - 空の段落要素を削除するにはどうすればよいですか?
を含む段落を削除しようとしています"{Some Text}"
。以下のメソッドはまさにそれを行いますが、段落を削除した後、空の段落要素が残っていることに気付きました。
<w:p />
プログラムで要素を削除するにはどうすればよいですか?
以下は、最初に段落を削除するために使用したものです。
document.xml のあとがきは次のようになります。
c# - ドキュメントから要素を削除するには?
ドキュメントを繰り返し処理し、<:p />
実行がない場合にすべての要素を削除する方法はありますか? 段落が次のようになっている場合、段落を削除しようとしています。
これは私がこれまでに持っているものですが、空<w:p />
の要素のみを削除します。