1

DocX ライブラリ [ https://docx.codeplex.com/]を使用して、.docx ドキュメントを別のフォントを使用するように変換したいと考えています。誰もそれを行う方法を知っていますか? サンプル プロジェクトは非常に少なく、ドキュメントは存在しません。

また、ドキュメントには余分なスペースが含まれていることがよくあります。2 つの連続するスペースがなくなるまで、これらすべてを繰り返し処理したいと考えています。これはループで実行できます。おそらく、" " (2 つのスペース) が見つからなくなるまで " " (2 つのスペース) を " " (1 つのスペース) に置き換えます。

ただし、テキストをコピーしてドキュメントに貼り付けるときに時々発生する余分な改行も削除したいと考えています。この質問に対する答えを得たので、「手動で」実行できます(Libre Officeでは、MS Wordでどのように実行されるかわかりません):(「正規表現」を選択し、「$」(引用符なし)をスペース)

...しかし、DocX を使用して、どのようにプログラム的に行うのでしょうか?

さらに、場合によっては、ある段落の終わりと別の段落の始まりの間に正当な改行があるが、それらを視覚的に区切るための余分な行がない改行/「段落リターン」を追加したい場合があります。これによると:

...「$」を検索して「\n\n」に置き換えることで、正当な改行に段落/改行を追加できます

これも機能します (Libre Office で手動で)。しかし、もう一度...DocXライブラリでこれを行う方法は?

4

1 に答える 1

1

使用している DocX ライブラリの現在のバージョンでは、これらすべてが可能なわけではないようです。ドキュメントで公開されていない場合、関数は存在しない可能性があり、ドキュメントに記載されていない機能を使用しないでください。

ただし、「Open XML SDK」と呼ばれる、必要なすべてを実行できる、より成熟したライブラリが利用可能です。

フォントを変更する正しい方法は、ドキュメント エディターで行う場合でも、これらのファイルを操作するプログラムを作成する場合でも、適切なテキストのスタイル属性を変更するか、使用中のスタイルの定義を変更することです。

テキストのフォントを直接変更することは絶対に絶対にしてはいけません。個人的には、'font type' と 'font size' メニューは word/libreoffice/etc から完全に削除し、'change style properties' ダイアログ内でのみアクセスできるようにすべきだと思います。フォントを直接適用する唯一の理由は、議論中の特定の書体の例を実際に提供している場合です!

方法の説明については、MSDN ドキュメントの「方法: ワード プロセッシング ドキュメント (Open XML SDK) のスタイル パーツを置き換える」を参照してください。

テキストを検索して置換するための該当する MSDN ページは、「方法: ドキュメント パーツ内のテキストを検索して置換する (Open XML SDK)」です。複数のスペースを 1 つのスペースに具体的に置き換える場合、Google には多数の結果があり、すべてが少なくともある程度は機能するはずです。

于 2014-01-08T17:30:00.643 に答える