C#.NET Word Automation

C#でワードプロセッシングドキュメントを作成および処理するための.NET Word Automationソリューションをお探しですか? MS Officeを必要とせずに、プログラムでWord文書を作成、編集/変更、および変換しますか? Aspose.Words for .NET APIを試してみましょう。このAPIは、.NETアプリケーションでC#を使用してMS Wordドキュメント(.doc、.docxなど)を作成するための完全な機能セットを提供します。

MS Wordのドキュメント自動化とレポート生成は、企業から高い需要があります。 Aspose.Words for .NETは、このような場合にWord文書を作成、編集、または分析するための、完全で機能豊富なWord自動化ソリューションです。この記事では、C#を使用してプログラムでWord文書を生成および操作するために必要なすべての基本機能について説明します。この記事を読むと、次のことができるようになります。

Wordドキュメントの作成-C#Word Automation API

Aspose.Words for .NET DLLは、ここからダウンロードできます。もう1つのオプションは、VisualStudioのNuGetパッケージマネージャーまたはパッケージマネージャーコンソールを介してインストールすることです。

NuGetパッケージマネージャーの使用

C#.NETWord自動化ライブラリ

パッケージマネージャーコンソールの使用

PM> Install-Package Aspose.Words

C#を使用してWord文書を作成する

Aspose.Words for .NETを使用して新しいWord文書を作成することから始めましょう。 APIのDocumentBuilderクラスには、Word文書を最初から作成するためのすべてのメソッドとプロパティが含まれています。 DocumentBuilderは、Documentクラスと組み合わせて、テキスト/段落、チェックボックス、表、リスト、画像、およびWord文書に含めることができるその他のオブジェクトなどの要素の挿入をサポートします。さらに、このクラスを使用して、フォントやその他のフォーマットオプションを指定できます。

以下は、DocumentBuilderクラスを使用してWord文書を作成する手順です。

  • 新しいDocumentオブジェクトを作成します。
  • 新しいDocumentBuilderオブジェクトを作成し、Documentオブジェクトで初期化します。
  • DocumentBuilderオブジェクトを使用して要素を挿入/書き込みします。
  • Document.Saveメソッドを使用してドキュメントを保存します。

次のコードサンプルは、C#を使用してWordDOCXドキュメントを作成する方法を示しています。

Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

// フォントの書式を指定する
Font font = builder.Font;
font.Size = 32;
font.Bold = true;
font.Color = System.Drawing.Color.Black;
font.Name = "Arial";
font.Underline = Underline.Single;

// テキストを挿入
builder.Writeln("This is the first page.");
builder.Writeln();

// 次の要素のフォーマットを変更します。
font.Underline = Underline.None;
font.Size = 10;
font.Color = System.Drawing.Color.Blue;

builder.Writeln("This following is a table");
// テーブルを挿入します
Table table = builder.StartTable();
// セルを挿入します
builder.InsertCell();
// 固定の列幅を使用します。
table.AutoFit(AutoFitBehavior.AutoFitToContents);
builder.CellFormat.VerticalAlignment = CellVerticalAlignment.Center;
builder.Write("This is row 1 cell 1");
// セルを挿入します
builder.InsertCell();
builder.Write("This is row 1 cell 2");
builder.EndRow();
builder.InsertCell();
builder.Write("This is row 2 cell 1");
builder.InsertCell();
builder.Write("This is row 2 cell 2");
builder.EndRow();
builder.EndTable();
builder.Writeln();

// 画像を挿入
builder.InsertImage("image.png");
// ページ分割を挿入 
builder.InsertBreak(BreakType.PageBreak);             
// ページ分割後のすべての要素が次のページに挿入されます。

// ドキュメントを保存する
doc.Save("Document.docx");

以下は、上記のコードを実行した後に取得するドキュメントです。

C#.NETでWord文書を作成する

これらの記事にアクセスして、Aspose.Words for .NETを使用してWord文書に追加できる要素の詳細を確認してください。

C#でWord文書を編集する

Aspose.Words for .NETを使用して、既存のWord文書を編集または変更することもできます。 Aspose.Words Document Object Modelクラスを使用すると、ドキュメントの要素とそのフォーマットにアクセスして変更できます。 DOMは、実際にはドキュメントのメモリ内表現です。ドキュメント表現をDOMとして理解するには、DOMの概要を参照してください。

次に、Word文書の既存の要素を編集する方法を確認しましょう。 「これは最初のページです」というテキストを更新する必要があるとします。最近作成したドキュメント内。これはドキュメントの最初のセクションの最初の段落であるため、最初のセクションと最初の段落のインデックスを指定することでアクセスできます。次のコードサンプルは、C#を使用してWord文書の段落を編集する方法を示しています。

// ドキュメントを読み込む
Document doc = new Document("Document.docx");
DocumentBuilder builder = new DocumentBuilder(doc);
// 段落にアクセスする
var paragraph=doc.Sections[0].Body.Paragraphs[0].Runs[0];
paragraph.Text = "This is updated text";  
// ドキュメントを保存する
doc.Save("Document_updated.docx");

以下は、更新されたWord文書です。

C#.NETでのWordの自動化

Word文書をC#で他の形式に変換する

Aspose.Words for .NETでは、Wordドキュメントの作成と操作に加えて、PDF、XPS、EPUB、HTML、およびBMP、PNG、JPEGなどの画像形式を含む(ただしこれらに限定されない)他の形式にドキュメントを変換することもできます。次のコードサンプルは、C#でWord文書をPDFに変換する方法を示しています。

Document doc = new Document("word.docx");
// PDF17へのPDFSaveOption準拠を提供します
PdfSaveOptions options = new PdfSaveOptions();
options.Compliance = PdfCompliance.Pdf17;
// WordをPDFに変換
doc.Save("output.pdf", options);

この記事にアクセスして、Word文書を他の形式に変換する方法を確認してください。

C#でWord文書を解析する

Word文書の内容をプレーンテキストとして抽出することにより、Word文書を解析することもできます。次のコードサンプルは、Word文書からテキストを抽出して.txtファイルに保存する方法を示しています。

// ディスクからドキュメントをロードします。
Document doc = new Document("document.docx");
// プレーンテキストとして保存 
doc.Save("output.txt");

結論

この記事では、C#を使用してMS Word DOC/DOCXドキュメントを作成または編集する方法を見てきました。さらに、MSWord文書をプログラムで変換または解析する方法を学びました。完全な開発者ガイドについては、Aspose.Words for .NETのドキュメントを参照してください。紛らわしい点がある場合は、フォーラムからお知らせください。

関連記事