IRONSOFTWAREHOME
IRONWORD 사용하기

C# 워드 라이브러리 3가지 (개발자를 위한 최신 목록)

Curtis Chau
Curtis Chau
Updated: 2026년 5월 8일

Microsoft Word 문서에는 자주 서체, 스타일 및 시각적으로 매력적인 요소들이 포함됩니다. Iron Software에서 제공하는 강력한 라이브러리 IronWord는 직관적인 C# 및 VB.NET Word 및 Docx 문서 API를 제공합니다. Word 문서를 구성하고 편집하고 내보내기 위해 Microsoft Office나 Word Interop을 설치할 필요가 없습니다. IronWord는 .NET 8, 7, 6, Framework, Core 및 Azure와 완전 호환됩니다. 이는 라이브러리가 컴퓨터에 Word가 설치되어 있지 않아도 파일을 독립적으로 읽는다는 것을 의미합니다. C#을 사용하고 서식을 유지하면서 Word 문서를 읽어야 하는 경우, 이 튜토리얼은 IronWord 라이브러리를 사용한 과정을 안내할 것입니다.

C#에서 서식을 유지하여 Word 문서를 읽는 방법

  1. Word 문서를 읽으려면 IronWord 라이브러리를 설치하세요.
  2. IronWord 라이브러리에서 WordDocument 클래스를 사용하여 입력 Word 문서 'sample.docx'를 로드합니다.
  3. 로드된 Word 문서를 사용하여 서식이 있는 단락을 읽습니다.
  4. 추출된 데이터를 서식 정보와 함께 콘솔 출력에 표시합니다.

필수 조건

  1. Visual Studio: Visual Studio 또는 다른 C# 개발 환경이 설치되어 있는지 확인합니다.
  2. NuGet 패키지 관리자: 프로젝트에서 NuGet을 사용하여 패키지를 관리할 수 있는지 확인하세요.

단계 1: 새 C# 프로젝트 생성

Word 문서를 읽고자 하는 기존 프로젝트를 사용하거나 새로운 C# 콘솔 애플리케이션을 만드세요.

콘솔 애플리케이션 템플릿을 선택하고 다음을 클릭하세요.

서식이 있는 Word 문서를 C#에서 읽는 방법: 그림 1 - 새 C# 프로젝트 만들기

솔루션 이름, 프로젝트 이름 및 코드 경로를 제공하려면 '다음' 버튼을 클릭하세요.

서식이 있는 Word 문서를 C#에서 읽는 방법: 그림 2 - 새 프로젝트 구성

원하는 .NET 버전을 선택하세요. 항상 사용 가능한 최신 버전을 선택하는 것이 최선의 방법이지만, 프로젝트에 특정 요구 사항이 있으면 필요한 .NET 버전을 사용하세요.

서식이 있는 Word 문서를 C#에서 읽는 방법: 그림 3 - 필요한 .NET 버전 유형 선택

2단계: IronWord 라이브러리 설치

C# 프로젝트를 열고 NuGet 패키지 관리자 콘솔을 사용하여 IronWord 라이브러리를 설치하세요:

PM > Install-Package IronWord

NuGet 패키지는 아래 설명된 대로 Visual Studio의 NuGet 패키지 관리자를 사용하여 설치할 수도 있습니다.

서식이 있는 Word 문서를 C#에서 읽는 방법: 그림 4 - NuGet 패키지 관리자 통해 IronWord 설치

단계 3: 서식이 있는 Word 문서 읽기

Word 파일을 읽으려면 먼저 새로운 문서를 생성하고 아래와 같이 콘텐츠를 추가해야 합니다.

서식이 있는 Word 문서를 C#에서 읽는 방법: 그림 5 - 생성된 샘플 문서

이제 파일을 프로젝트 디렉터리에 저장하고 출력 디렉터리에 복사하기 위해 파일의 속성을 변경하세요.

서식이 있는 Word 문서를 C#에서 읽는 방법: 그림 6 - 파일 속성의 예상 모양

이제 아래 코드 스니펫을 program.cs 파일에 추가하세요:

using IronWord;

class Program
{
    static void Main()
    {
        try
        {
            // Load existing docx
            var sampleDoc = new WordDocument("sample.docx");
            var paragraphs = sampleDoc.Paragraphs;

            // Iterate through each paragraph in the Word document
            foreach (var paragraph in paragraphs)
            {
                var textRun = paragraph.FirstTextRun;
                var text = textRun.Text; // Read text content

                // Extract Formatting details if available
                if (textRun.Style != null)
                {
                    var fontSize = textRun.Style.FontSize; // Font size
                    var isBold = textRun.Style.IsBold;
                    Console.WriteLine($"\tText: {text}, FontSize: {fontSize}, Bold: {isBold}");
                }
                else
                {
                    // Print text without formatting details
                    Console.WriteLine($"\tText: {text}");
                }
            }
        }
        catch (Exception ex)
        {
            Console.WriteLine($"An error occurred: {ex.Message}");
        }
    }
}

위의 코드는 IronWord 라이브러리 클래스 WordDocument 생성자 메서드를 사용하여 Word 문서를 읽습니다.

산출

서식이 있는 Word 문서를 C#에서 읽는 방법: 그림 7 - 이전 코드의 콘솔 출력

설명

  1. Word 문서 열기: IronWord에서 WordDocument을 사용하여 Word 문서를 로드합니다.
  2. 단락 및 실행 반복: 중첩 루프를 사용하여 단락과 실행을 반복합니다. 실행은 특정 형식이 있는 텍스트의 부분을 나타냅니다.
  3. 텍스트 및 서식 추출: 각 실행에서 텍스트 내용을 추출하고 서식 속성을 확인합니다. 이 예에서는 글꼴 크기와 굵은 서식의 추출 방법을 보여주었습니다.
  4. 예외 처리: 시도 및 캐치 블록을 사용하여 예외를 처리하고 인쇄합니다.

로드된 파일을 사용하여 문서를 인쇄할 수 있으며, 스타일 객체에서 글꼴 색상을 변경할 수도 있습니다.

Word 파일에서 표 읽기

Word 문서에서 표를 읽을 수도 있습니다. 아래 코드 스니펫을 프로그램에 추가합니다.

using IronWord;

class Program
{
    static void Main()
    {
        try
        {
            // Load existing docx
            var sampleDoc = new WordDocument("sample.docx");

            // Read Tables
            var tables = sampleDoc.Tables;
            foreach (var table in tables)
            {
                var rows = table.Rows;
                foreach (var row in rows)
                {
                    foreach (var cell in row.Cells)
                    {
                        var contents = cell.Contents;
                        contents.ForEach(x => Console.WriteLine(x));
                        // Print cell contents
                    }                    
                }
            }
        }
        catch (Exception ex)
        {
            Console.WriteLine($"An error occurred: {ex.Message}");
        }
    }
}

여기에서는 WordDocument 클래스의 Tables 속성을 사용하여 문서의 모든 표를 가져온 다음, 각 표를 반복하여 내용을 출력합니다.

기존 텍스트에 스타일 추가

아래 코드 스니펫에 표시된 것처럼 IronWord 라이브러리를 사용하여 기존 Word 문서에 새로운 스타일 정보를 추가할 수 있습니다.

using IronWord;
using IronWord.Models;

class Program
{
    static void Main()
    {
        try
        {
            // Load existing docx
            var sampleDoc = new WordDocument("sample.docx");
            var paragraphs = sampleDoc.Paragraphs;

            // Iterate through paragraphs
            foreach (var paragraph in paragraphs)
            {
                var textRun = paragraph.FirstTextRun;
                var text = textRun.Text; // Read text content

                // Extract Formatting details if available
                if (textRun.Style != null)
                {
                    var fontSize = textRun.Style.FontSize; // Font size
                    var isBold = textRun.Style.IsBold;
                    Console.WriteLine($"\tText: {text}, FontSize: {fontSize}, Bold: {isBold}");
                }
                else
                {
                    // Print text without formatting details
                    Console.WriteLine($"\tText: {text}");
                }
            }

            // Change the formatting of the text
            var style = new TextStyle()
            {
                FontFamily = "Caveat",
                FontSize = 72,
                TextColor = new IronColor(System.Drawing.Color.Blue), // Blue color
                IsBold = true,
                IsItalic = true,
                IsUnderline = true,
                IsSuperscript = false,
                IsStrikethrough = true,
                IsSubscript = false
            };
            paragraphs[1].FirstTextRun.Style = style;

            // Save the document with the new style applied
            sampleDoc.SaveAs("sample2.docx");
        }
        catch (Exception ex)
        {
            Console.WriteLine($"An error occurred: {ex.Message}");
        }
    }
}

여기에서는 TextStyle을 생성하고 이를 기존 문단 객체에 추가하고 있습니다.

Word 문서에 새로운 스타일의 콘텐츠 추가

아래 코드 스니펫에 표시된 것처럼 로드된 Word 문서에 새로운 콘텐츠를 추가할 수 있습니다.

using IronWord;
using IronWord.Models;

class Program
{
    static void Main()
    {
        try
        {
            // Load Word Document
            var sampleDoc = new WordDocument("sample.docx");
            var paragraphs = sampleDoc.Paragraphs;

            // Iterate through paragraphs
            foreach (var paragraph in paragraphs)
            {
                var textRun = paragraph.FirstTextRun;
                var text = textRun.Text; // Read text content

                // Extract the formatting details if available
                if (textRun.Style != null)
                {
                    var fontSize = textRun.Style.FontSize; // Font size
                    var isBold = textRun.Style.IsBold;
                    Console.WriteLine($"\tText: {text}, FontSize: {fontSize}, Bold: {isBold}");
                }
                else
                {
                    // Print text without formatting details
                    Console.WriteLine($"\tText: {text}");
                }
            }

            // Add TextRun with Style to Paragraph
            TextRun blueTextRun = new TextRun();
            blueTextRun.Text = "Add text using IronWord";
            blueTextRun.Style = new TextStyle()
            {
                FontFamily = "Caveat",
                FontSize = 72,
                TextColor = new IronColor(System.Drawing.Color.Blue), // Blue color
                IsBold = true,
                IsItalic = true,
                IsUnderline = true,
                IsSuperscript = false,
                IsStrikethrough = true,
                IsSubscript = false
            };
            paragraphs[1].AddTextRun(blueTextRun);

            // Add New Content to the Word file and save
            Paragraph newParagraph = new Paragraph();
            TextRun newTextRun = new TextRun("New Add Information");
            newParagraph.AddTextRun(newTextRun);

            // Configure the text with different styles
            TextRun introText = new TextRun("This is an example paragraph with italic and bold styling.");
            TextStyle italicStyle = new TextStyle()
            {
                IsItalic = true
            };
            TextRun italicText = new TextRun("Italic example sentence.", italicStyle);
            TextStyle boldStyle = new TextStyle()
            {
                IsBold = true
            };
            TextRun boldText = new TextRun("Bold example sentence.", boldStyle);

            // Add the styled text to the paragraph
            newParagraph.AddTextRun(introText);
            newParagraph.AddTextRun(italicText);
            newParagraph.AddTextRun(boldText);

            // Save the modified document
            sampleDoc.SaveAs("sample2.docx");
        }
        catch (Exception ex)
        {
            Console.WriteLine($"An error occurred: {ex.Message}");
        }
    }
}

여기에서는 스타일 정보를 포함하는 새로운 TextRunParagraph 객체를 생성하고 로드된 Word 문서에 추가하고 있습니다.

라이센스 (무료 체험 가능)

IronWord 무료 체험판 라이센스 키 얻기. 이 키는 appsettings.json에 배치되어야 합니다.

{
    "IronWord.LicenseKey": "IRONWORD.MYLICENSE.KEY.TRIAL"
}
JSON

체험판 라이센스를 받으려면 이메일을 제공하세요. 이메일 ID를 제출하면 키가 이메일을 통해 발송됩니다.

서식이 있는 Word 문서를 C#에서 읽는 방법: 그림 8 - 성공적으로 제출된 체험 양식

결론

IronWord는 C#에서 포맷팅이 있는 Word 문서를 읽는 편리한 방법을 제공합니다. 제공된 코드를 특정 요구 사항과 작업 중인 문서의 복잡성에 따라 확장하십시오. 이 튜토리얼은 C# 애플리케이션에 IronWord를 통합하여 Word 문서 처리를 시작하는 데 기초가 됩니다.

Curtis Chau
기술 문서 작성자

커티스 차우는 칼턴 대학교에서 컴퓨터 과학 학사 학위를 취득했으며, Node.js, TypeScript, JavaScript, React를 전문으로 하는 프론트엔드 개발자입니다. 직관적이고 미적으로 뛰어난 사용자 인터페이스를 만드는 데 열정을 가진 그는 최신 프레임워크를 활용하고, 잘 구성되고 시각적으로 매력적인 매뉴얼을 제작하는 것을 즐깁니다.

...
더 읽어보기

관련 기사

Key in blue circle

무료 30일 체험 키를 즉시 받으세요.

Your trial license will be sent to your email address

제한 없음. 100% 무제한 이용. 신용카드 불필요.

bullet_checked신용카드나 계정 생성은 필요하지 않습니다.제한 없음. 100% 무제한 이용. 신용카드 불필요.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
무료 라이브 데모를 예약하세요
Booking Badge

전 세계 수백만 엔지니어들이 신뢰하는 제품입니다.

Iron Software의 고객 로고
부담 없는 무료 상담을 받아보세요
아래 양식을 작성하시거나 sales@ironsoftware.com으로 이메일을 보내주세요.
고객님의 정보는 항상 비밀로 유지됩니다.
전 세계 수백만 엔지니어들이 신뢰하는 제품입니다.
Iron Software의 고객 로고
지금 바로 30일 무료 체험판 키를 받으세요.
신용카드나 계정 생성은 필요하지 않습니다.