Word 문서에서 미디어 추출하기

.NET에서 Word 문서에서 텍스트, 이미지 및 메타데이터 추출하는 방법

텍스트, 이미지 및 메타데이터를 Word 문서에서 추출하는 것은 문서 분석 및 처리에 필수적입니다. Aspose.Words for .NET을 사용하면 개발자는 다양한 사용 사례(예: 인덱싱, 아카이빙 또는 콘텐츠 변환)를 위해 문서 콘텐츠 및 속성을 프로그래밍 방식으로 검색할 수 있습니다.

전제 조건

  1. .NET SDK를 설치합니다.
  2. Aspose.Words NuGet 패키지를 추가합니다: dotnet add package Aspose.Words
  3. 텍스트, 이미지 및 메타데이터가 포함된 Word 문서(document.docx)를 준비합니다.

Word 파일에서 콘텐츠 추출을 위한 단계별 가이드

1. Word 문서 로드

using System;
using Aspose.Words;

class Program
{
    static void Main()
    {
        // 1단계: Word 문서 로드
        string filePath = "document.docx";
        Document doc = new Document(filePath);

        // 2단계, 3단계 및 4단계는 아래에 추가됩니다.
    }
}

설명: 이 코드는 지정된 Word 문서를 메모리에 로드하여 추가 처리를 위해 준비합니다.

2. 문서에서 텍스트 추출

using System;
using Aspose.Words;

class Program
{
    static void Main()
    {
        string filePath = "document.docx";
        Document doc = new Document(filePath);

        // 2단계: 텍스트 추출
        string text = doc.GetText();
        Console.WriteLine("추출된 텍스트: " + text);

        // 3단계 및 4단계는 아래에 추가됩니다.
    }
}

설명: 이 코드는 로드된 Word 문서에서 모든 텍스트 콘텐츠를 추출하고 이를 콘솔에 출력합니다.

3. 문서에서 메타데이터 추출

using System;
using Aspose.Words;

class Program
{
    static void Main()
    {
        string filePath = "document.docx";
        Document doc = new Document(filePath);

        string text = doc.GetText();
        Console.WriteLine("추출된 텍스트: " + text);

        // 3단계: 메타데이터 추출
        Console.WriteLine("제목: " + doc.BuiltInDocumentProperties.Title);
        Console.WriteLine("저자: " + doc.BuiltInDocumentProperties.Author);
        Console.WriteLine("생성 날짜: " + doc.BuiltInDocumentProperties.CreatedTime);

        // 4단계는 아래에 추가됩니다.
    }
}

설명: 이 코드는 Word 문서에서 제목, 저자 및 생성 날짜 메타데이터를 추출하고 출력합니다.

4. 문서에서 이미지 추출

using System;
using Aspose.Words;

class Program
{
    static void Main()
    {
        string filePath = "document.docx";
        Document doc = new Document(filePath);

        string text = doc.GetText();
        Console.WriteLine("추출된 텍스트: " + text);

        Console.WriteLine("제목: " + doc.BuiltInDocumentProperties.Title);
        Console.WriteLine("저자: " + doc.BuiltInDocumentProperties.Author);
        Console.WriteLine("생성 날짜: " + doc.BuiltInDocumentProperties.CreatedTime);

        // 4단계: 이미지 추출
        int imageCount = 0;
        foreach (var shape in doc.GetChildNodes(NodeType.Shape, true))
        {
            if (shape is Shape { HasImage: true } imageShape)
            {
                string imageFilePath = $"Image_{++imageCount}.png";
                imageShape.ImageData.Save(imageFilePath);
                Console.WriteLine($"저장된 이미지: {imageFilePath}");
            }
        }

        Console.WriteLine("콘텐츠 추출 완료.");
    }
}

설명: 이 코드는 Word 문서에서 모든 이미지를 추출하여 프로젝트 디렉토리에 PNG 파일로 저장합니다.

5. 솔루션 테스트

  • document.docx가 프로젝트 디렉토리에 있는지 확인합니다.
  • 프로그램을 실행하고 다음을 확인합니다:
    • 콘솔 출력에서 추출된 텍스트.
    • 출력된 메타데이터 세부정보.
    • 프로젝트 폴더에 저장된 추출된 이미지.

주요 플랫폼에서 배포 및 실행하는 방법

Windows

  1. .NET 런타임을 설치하고 애플리케이션을 배포합니다.
  2. 명령줄을 통해 애플리케이션을 실행하여 테스트합니다.

Linux

  1. .NET 런타임을 설치합니다.
  2. 터미널 명령을 사용하여 애플리케이션을 실행하거나 서버에 호스팅합니다.

macOS

  1. Kestrel을 사용하여 애플리케이션을 실행하거나 클라우드 서비스에 배포합니다.

일반적인 문제 및 해결 방법

  1. 이미지가 추출되지 않음:
    • 문서에 외부 링크가 아닌 임베디드 이미지가 포함되어 있는지 확인합니다.
  2. 메타데이터 누락:
    • 문서에 제목 또는 저자와 같은 메타데이터 속성이 설정되어 있는지 확인합니다.
  3. 대용량 파일 처리:
    • 문서의 특정 섹션을 처리하는 것과 같은 메모리 효율적인 접근 방식을 사용합니다.

이 가이드를 통해 Aspose.Words for .NET을 사용하여 Word 문서에서 유용한 콘텐츠를 프로그래밍 방식으로 추출할 수 있습니다.

 한국어