IRONWORDの使用

C#でWordドキュメントを開く

リーガン・パン
リーガン・パン
2023年11月13日
共有:

ワードのアプリケーション・ドキュメントは、仕事や個人的なコミュニケーションのさまざまな場面で欠かせない。 Microsoft Word文書ファイルをプログラムで操作し、相互作用させる機能は、タスクの自動化やアプリケーションへの文書処理の統合を目指す開発者にとって不可欠である。 C#(シーシャープ)でプログラム的にMicrosoft Word文書を操作できるようにするには、多くの文書ライブラリが利用可能です。 このようなライブラリの一つがIronWordであり、Iron Softwareによる堅牢なC# Word DOCXライブラリで、.NETアプリケーションでのWordドキュメントの操作を簡素化します。

この記事では、強力なIronWord - The C# Library、その機能、Wordドキュメントコレクションを開くこと、およびそこからデータを読み取ることについて探ります。

C#でWordドキュメントコレクションを開く方法

  1. Visual Studioでコンソール・アプリケーションを作成する

  2. IronWord C# DOCXライブラリのインストール

  3. WordDocument クラスを使用してWordドキュメントを開く

  4. 各段落をParagraphクラスを使用してループする

  5. 各段落にTextRunsを実行する

  6. SaveAsメソッドを使用して、内容を表示または保存

IronWord - C# DOCXライブラリ

IronWordは、Iron Softwareによって開発された豊富な機能を持つC#のWord DOCXライブラリです。 開発者が.NETアプリケーションでWord文書を簡単に扱えるようにする、ユーザーフレンドリーなAPIを提供する。 新しいワード文書の作成、既存の文書の編集、コンテンツの抽出など、IronWord はプロセスを合理化する包括的なツール群を提供します。

フィーチャーセット

1.互換性とクロスプラットフォームのサポート

IronWordは、.NET 8、7、6、フレームワーク、コア、Azureなど、さまざまな.NETバージョンをサポートし、汎用的に設計されています。 開発者は、Windows、Linux、macOS、iOS、Androidなどのさまざまなプラットフォームで利用できるため、幅広い.NETアプリケーション開発シナリオに適応できる。

2.文書操作

IronWordの機能は単なる文書作成にとどまりません。 テキストや段落の書式設定、画像や図形の統合、表の作成など、複雑な文書操作が可能です。 この汎用性により、IronWordは文書構造やコンテンツの正確なコントロールが不可欠なさまざまなアプリケーションに適しています。

3.Microsoft Officeに依存しない

IronWord の特筆すべき特徴のひとつは、Microsoft OfficeのインストールやWord Interopから独立していることである。つまり、Wordアプリケーションは必要ありません。 開発者は、追加の依存関係を心配することなくその機能を利用することができ、よりスムーズで効率的な開発プロセスを保証する。

4.使いやすさ

このライブラリは使いやすいAPIで作られており、開発者はWord文書処理機能を.NETプロジェクトにシームレスに統合できる。 さらに、IronWordはMicrosoft OfficeやWord Interopをインストールする必要がないため、手間のかからない開発が可能です。

前提条件

IronWord の世界に飛び込む前に、以下の前提条件が整っていることを確認してください:

  • Visual Studio: .NET開発用の人気のある統合開発環境であるVisual Studioが正常にインストールされていることを確認してください。 こちらからダウンロードできます。
  • IronWord: その機能を利用するにはライブラリをダウンロードする必要があります。 NuGetパッケージはこちらから直接ダウンロードできます。

環境の設定

まず、Visual Studio を開くと、ウェルカム画面が表示されます。

1.新しい.NETフレームワーク・コンソール・アプリケーションの作成

「新しいプロジェクトを作成」をクリックします。「Console App (.NET Framework)」を検索し、リストから選択して「次へ」をクリックします。プロジェクトに名前を付けて、「作成」をクリックします。Visual Studio は基本的なテンプレートを含む、新しい .NET Framework のコンソールアプリケーションを設定し、エントリポイントとして Main メソッドを含めます。

新しいプロジェクトの構成

2. NuGetパッケージマネージャーを使用してIronWordをインストールする

Visual Studioで、「ツール」メニューに移動し、「NuGetパッケージマネージャー」を選択し、「ソリューションのNuGetパッケージを管理」を選択します。NuGetウィンドウで、「参照」タブに移動し、検索ボックスに「IronWord」と入力して、Enterキーを押します。 結果からパッケージを選択し、右側でコンソールアプリケーションプロジェクトがチェックされていることを確認し、「インストール」をクリックします。これにより、C#アプリケーション内でIronWordを使用するために必要な参照が追加されます。 さて、Word ドキュメントの処理を始める準備が整いました。

IronWord

3. コードに IronWord を参照追加する:

C# コードファイルで、Program.cs ファイルに次の using ステートメントを追加して IronWord を参照します:

using IronWord;
using IronWord;
Imports IronWord
$vbLabelText   $csharpLabel

Word文書を開いて内容を読む手順

プロジェクトがセットアップされたので、IronWord を使ってWordドキュメントを開き、その内容を読むには以下の手順に従ってください:

  1. 既存の文書を読み込む:
// Load existing Word document file
WordDocument doc = new WordDocument("existing_document.docx");
// Load existing Word document file
WordDocument doc = new WordDocument("existing_document.docx");
' Load existing Word document file
Dim doc As New WordDocument("existing_document.docx")
$vbLabelText   $csharpLabel

このステップでは、IronWordライブラリからWordDocumentクラスのインスタンスを作成します。 既存の入力Word文書のパスを取るコンストラクターを使用します(existing_document.docx)。 これは、入力ファイル名からロードされたWordドキュメントを表すdocオブジェクトの送信を初期化します。

入力ファイル:

入力

  1. コンテンツを読み、操作する:

    次のコードは、開いたドキュメント・ファイルからテキスト・コンテンツを読み取るのに役立ちます:

// Access paragraphs and text runs
foreach (Paragraph paragraph in doc.Paragraphs)
{
    foreach (TextRun textRun in paragraph.TextRuns)
    {
        // Access text content
        string content = textRun.Text;
    // Display contents
        Console.WriteLine(content);
    }
}
// Access paragraphs and text runs
foreach (Paragraph paragraph in doc.Paragraphs)
{
    foreach (TextRun textRun in paragraph.TextRuns)
    {
        // Access text content
        string content = textRun.Text;
    // Display contents
        Console.WriteLine(content);
    }
}
' Access paragraphs and text runs
For Each paragraph As Paragraph In doc.Paragraphs
	For Each textRun As TextRun In paragraph.TextRuns
		' Access text content
		Dim content As String = textRun.Text
	' Display contents
		Console.WriteLine(content)
	Next textRun
Next paragraph
$vbLabelText   $csharpLabel

ここでは、読み込まれたWord文書(doc)内の段落とテキストランを繰り返し処理します。 foreachループを使用すると、各段落を順番に、またその中に含まれる各テキストランを走査することができます。 各textRunに対して、textRun.Textを使用してテキストコンテンツにアクセスできます。 ここで、情報の抽出やテキスト内容の変更など、必要な操作をプログラムで行うことができる。

  1. コンテンツとアウトプットの表示
// Display contents
Console.WriteLine(content);
// Display contents
Console.WriteLine(content);
' Display contents
Console.WriteLine(content)
$vbLabelText   $csharpLabel

前のステップの2番目のforeachループでは、コンソール出力画面に単語の可視コンテンツを表示している。 また、開いた文書の一部を新しい文書として保存することもできる:

// Method to save changes to the document
doc.SaveAs("modified_document.docx");
// Method to save changes to the document
doc.SaveAs("modified_document.docx");
' Method to save changes to the document
doc.SaveAs("modified_document.docx")
$vbLabelText   $csharpLabel

完全なプログラムコードは以下の通り:

using IronWord;
using IronWord.Models;

namespace IronWordExample
{
    class Program
    {
        public static void main(string [] args)
        {
            // Load existing Word doc file
            WordDocument doc = new WordDocument("existing_document.docx");

            // Access paragraphs and text runs
            foreach (Paragraph paragraph in doc.Paragraphs)
            {
                foreach (TextRun textRun in paragraph.TextRuns)
                {
                    // Access text content
                    string content = textRun.Text;
                    // Display Contents
                    Console.WriteLine(content);
                }
            }

            // Save changes to the document
            doc.SaveAs("modified_document.docx");
        }
    }
}
using IronWord;
using IronWord.Models;

namespace IronWordExample
{
    class Program
    {
        public static void main(string [] args)
        {
            // Load existing Word doc file
            WordDocument doc = new WordDocument("existing_document.docx");

            // Access paragraphs and text runs
            foreach (Paragraph paragraph in doc.Paragraphs)
            {
                foreach (TextRun textRun in paragraph.TextRuns)
                {
                    // Access text content
                    string content = textRun.Text;
                    // Display Contents
                    Console.WriteLine(content);
                }
            }

            // Save changes to the document
            doc.SaveAs("modified_document.docx");
        }
    }
}
Imports IronWord
Imports IronWord.Models

Namespace IronWordExample
	Friend Class Program
		Public Shared Sub main(ByVal args() As String)
			' Load existing Word doc file
			Dim doc As New WordDocument("existing_document.docx")

			' Access paragraphs and text runs
			For Each paragraph As Paragraph In doc.Paragraphs
				For Each textRun As TextRun In paragraph.TextRuns
					' Access text content
					Dim content As String = textRun.Text
					' Display Contents
					Console.WriteLine(content)
				Next textRun
			Next paragraph

			' Save changes to the document
			doc.SaveAs("modified_document.docx")
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

出力 IronWord が実行できるその他の機能を探索するには、このコード例ページをご覧ください。

結論

この記事では、プログラムによってWord文書を開いたり操作したりするプロセスを簡素化する、堅牢なC#(シーシャープ)Word DOCXライブラリであるIronWord の機能を探った。 IronWord は、豊富な機能セットを提供し、外部ソフトウェアへの依存を排除することで、開発者が.NETアプリケーションに文書処理をシームレスに統合できるようにします。 ドキュメント関連タスクの自動化であれ、エクスペリエンスの向上であれ、IronWord は.NET用ツールキットの貴重なツールであることを証明します。

新しいアプリケーションプロジェクトにIronWordを組み込み始める方法について詳しく学ぶには、ドキュメンテーションページをご覧ください。

IronWordは、その完全な機能を試すための無料トライアルを提供しています。 これは、購入前に十分な情報に基づいて決断するのに役立ちます。 そのLiteライセンスは$749から始まり、詳細はこのライセンスページで確認できます。

こちらから無料でIronWordをお試しください。

リーガン・パン
ソフトウェアエンジニア
レーガンはリーディング大学で電子工学の学士号を取得しました。Iron Softwareに入社する前の仕事では、一つのタスクに集中して取り組んでいました。Iron Softwareでは、営業、技術サポート、製品開発、マーケティングのいずれにおいても広範な業務に携わることが最も楽しいと感じています。彼は、Iron Softwareライブラリを開発者がどのように使用しているかを理解し、その知識を使ってドキュメントを継続的に改善し、製品を開発することを楽しんでいます。
< 以前
C#でWordをPDFに変換する方法
次へ >
C# Print Wordチュートリアル:ステップバイステップガイド