C#을 사용하여 PDF에서 삽입된 텍스트와 이미지를 추출하는 방법

Extract Embedded Text and Images from PDFs in C#

This article was translated from English: Does it need improvement?
Translated
View the article in English

C#에서 간단한 메서드 호출을 사용하여 PDF 문서에서 텍스트 콘텐츠와 이미지를 모두 추출할 수 있습니다. 내장된 콘텐츠를 검색하여 편집, 분석 또는 다른 응용 프로그램에서 재사용할 수 있습니다.

텍스트 및 이미지 추출은 PDF 문서에서 텍스트 콘텐츠와 그래픽 요소를 추출합니다. 콘텐츠에 접근하여 편집, 검색, 텍스트를 다른 형식으로 변환하거나 이미지를 저장하여 재사용할 수 있습니다. 데이터 분석을 위해 C#으로 PDF를 구문 분석 하거나, 콘텐츠를 검색 가능한 형식으로 변환하거나, 아카이빙을 위해 시각적 요소를 추출해야 하는 경우 등 IronPDF는 포괄적인 추출 도구를 제공합니다.

IronPDF를 사용하여 텍스트와 이미지를 추출하세요. 추출한 이미지를 디스크에 저장하거나 다른 형식으로 변환한 후 새 문서에 삽입하세요. 이러한 유연성은 PDF를 HTML로 변환 하거나 추출한 이미지를 재활용하는 등 콘텐츠 변환이 필요한 워크플로를 지원합니다.

빠른 시작: IronPDF로 텍스트 및 이미지 추출

단 몇 줄의 코드로 PDF에서 텍스트와 이미지를 추출하세요. 이 빠른 시작 가이드는 콘텐츠 재활용 및 분석을 위해 PDF 문서에서 내장된 콘텐츠를 추출하는 방법을 보여줍니다. IronPDF의 간소화된 솔루션을 사용하여 텍스트를 추출하여 편집하거나 이미지를 저장하여 추후 활용할 수 있습니다.

Nuget Icon지금 바로 NuGet을 사용하여 PDF 만들기를 시작하세요.

  1. NuGet 패키지 관리자를 사용하여 IronPDF를 설치하세요.

    PM > Install-Package IronPdf

  2. 다음 코드 조각을 복사하여 실행하세요.

    var pdf = new IronPdf.PdfDocument("sample.pdf");  
    string text = pdf.ExtractAllText();  
    var images = pdf.ExtractAllImages();
  3. 실제 운영 환경에서 테스트할 수 있도록 배포하세요.

    지금 바로 무료 체험판을 통해 프로젝트에서 IronPDF를 사용해 보세요.
    arrow pointer


PDF 파일에서 텍스트를 추출하는 방법은 무엇인가요?

새로 생성된 PDF 문서와 기존 PDF 문서 모두에서 텍스트를 추출합니다. 문서에서 삽입된 텍스트를 추출하려면 ExtractAllText 메서드를 사용하십시오. 이 메서드는 PDF에 포함된 모든 텍스트를 담은 문자열을 반환합니다. 페이지는 연속된 네 개의 줄 바꿈 문자로 구분됩니다. 이 예시에서는 위키피디아 웹사이트에서 가져온 샘플 PDF를 사용합니다.

IronPDF는 국제 언어 및 UTF-8 문자가 포함된 PDF 파일을 처리할 때 올바른 인코딩 및 문자 표현을 유지합니다. 이를 통해 라틴어 이외의 문자 체계와 특수 문자가 올바르게 표시됩니다.

:path=/static-assets/pdf/content-code-examples/how-to/extract-text-and-images-extract-text.cs
using IronPdf;
using System.IO;

PdfDocument pdf = PdfDocument.FromFile("sample.pdf");

// Extract text
string text = pdf.ExtractAllText();

// Export the extracted text to a text file
File.WriteAllText("extractedText.txt", text);
$vbLabelText   $csharpLabel
위키피디아 페이지와 추출된 일반 텍스트를 나란히 비교하여 텍스트 추출 과정을 보여줍니다.

정확한 좌표를 사용하여 텍스트를 추출하려면 어떻게 해야 하나요?

각 PDF 페이지 내의 텍스트 줄과 문자의 좌표를 가져옵니다. PDF에서 페이지를 선택하고 LinesCharacters 속성에 액세스합니다. 좌표에는 텍스트 위치를 나타내는 Top, Right, BottomLeft 값이 포함됩니다. 이 기능은 공간 레이아웃을 유지하고 텍스트 위치 분석을 가능하게 합니다.

위치 정보를 활용하여 C#에서 PDF 파일을 읽어야 하는 개발자에게 좌표 추출은 문서 구조를 유지하고 고급 텍스트 분석을 구현하는 데 필요한 데이터를 제공합니다.

:path=/static-assets/pdf/content-code-examples/how-to/extract-text-and-images-extract-text-by-line-character.cs
using IronPdf;
using System.IO;
using System.Linq;

// Open PDF from file
PdfDocument pdf = PdfDocument.FromFile("sample.pdf");

// Extract text by lines
var lines = pdf.Pages[0].Lines;

// Extract text by characters
var characters = pdf.Pages[0].Characters;

File.WriteAllLines("lines.txt", lines.Select(l => $"at Y={l.BoundingBox.Bottom:F2}: {l.Contents}"));
$vbLabelText   $csharpLabel
분할 화면에는 위키피디아 메인 페이지와 추출된 텍스트 파일이 표시되며, Y 좌표에는 파싱된 내용이 나타납니다.

PDF 파일에서 이미지를 추출하는 방법은 무엇인가요?

문서에서 모든 내장 이미지를 추출하려면 ExtractAllImages 메서드를 사용하십시오. 이 메서드는 이미지를 AnyBitmap 객체의 목록으로 반환합니다. 같은 문서를 사용하여 이미지를 추출하고 'images' 폴더로 내보냈습니다. 이 기능은 이미지 아카이빙, 콘텐츠 마이그레이션, 그리고 추가 처리를 위해 PDF 페이지를 이미지로 래스터화하는 기능을 지원합니다.

추출된 이미지는 원본 품질을 유지하며 PNG, JPEG, BMP를 포함한 다양한 형식으로 저장할 수 있습니다. 클라우드 스토리지 워크플로의 경우, 이 기능을 Azure Blob Storage와 통합하여 이미지를 관리할 수 있습니다 .

:path=/static-assets/pdf/content-code-examples/how-to/extract-text-and-images-extract-image.cs
using IronPdf;

PdfDocument pdf = PdfDocument.FromFile("sample.pdf");

// Extract images
var images = pdf.ExtractAllImages();

for(int i = 0; i < images.Count; i++)
{
    // Export the extracted images
    images[i].SaveAs($"images/image{i}.png");
}
$vbLabelText   $csharpLabel
이미지 추출 도구를 실행한 후 파일 탐색기에서 추출된 PNG 이미지 19개가 썸네일 보기로 표시됩니다.

이미지 추출에는 어떤 방법들이 있나요?

ExtractAllImages 방법 외에도 ExtractAllBitmapsExtractAllRawImages 방법을 사용하여 이미지 정보를 추출하십시오. ExtractAllBitmapsAnyBitmap의 리스트를 반환하는 반면, ExtractAllRawImages는 모든 이미지를 추출하여 원시 바이트 배열(byte[])로 반환합니다.

ExtractAllRawImages 방식은 메모리에서 이미지 데이터를 처리하거나 바이트 배열 입력이 필요한 시스템과 통합할 때 효과적입니다. PDF를 메모리 스트림으로 내보내는 시나리오의 경우, 원시 바이트 배열 형식이 최적의 유연성을 제공합니다.


PDF 파일에서 특정 페이지의 내용을 추출하는 방법은 무엇인가요?

지정된 하나 또는 여러 페이지에서 텍스트와 이미지를 추출합니다. 한 페이지 또는 여러 페이지에서 텍스트를 추출하려면 ExtractTextFromPageExtractTextFromPages 메서드를 사용하십시오. 이미지의 경우 ExtractImagesFromPageExtractImagesFromPages 메서드를 사용하십시오.

이러한 세부적인 제어 기능은 특정 섹션에만 관련 콘텐츠가 포함된 대규모 문서를 작업할 때 유용합니다. 또한 PDF를 분할하고 개별 페이지를 추출하여 별도로 처리하는 기능도 지원합니다.

:path=/static-assets/pdf/content-code-examples/how-to/extract-text-and-images-extract-text-single-multiple.cs
using IronPdf;

PdfDocument pdf = PdfDocument.FromFile("sample.pdf");

// Extract text from page 1
string textFromPage1 = pdf.ExtractTextFromPage(0);

int[] pages = new[] { 0, 2 };

// Extract text from pages 1 & 3
string textFromPage1_3 = pdf.ExtractTextFromPages(pages);
$vbLabelText   $csharpLabel

모든 페이지 대신 특정 페이지에서만 추출해야 하는 경우는 언제인가요?

다음과 같은 경우 특정 페이지에서 추출합니다.

  • 특정 섹션에 관련 데이터가 포함된 대용량 PDF 파일 작업
  • 페이지를 독립적으로 처리하는 워크플로 구현
  • 점진적인 콘텐츠 표시 또는 처리가 필요한 애플리케이션 구축
  • 필요한 페이지만 처리하여 메모리 사용량을 최적화합니다.
  • 페이지별 검색 또는 색인 기능 생성

성능 관련 고려 사항에 대해 무엇을 알아야 할까요?

PDF 콘텐츠를 추출할 때 다음과 같은 성능 요소를 고려하십시오.

  • 메모리 사용량 : 대용량 문서에서 페이지를 개별적으로 추출하여 메모리 사용량을 최소화합니다.
  • 처리 시간 : 여러 페이지로 구성된 추출 작업에는 적절한 경우 병렬 처리를 사용하십시오.
  • 파일 크기 : 고해상도 이미지가 포함된 대용량 PDF 파일은 처리 시간이 더 오래 걸립니다.
  • 저장 공간 : 고해상도 이미지를 여러 장 추출할 수 있도록 충분한 디스크 공간을 확보하세요.
  • 스레딩 : IronPDF는 멀티코어 시스템에서 성능 향상을 위해 멀티스레드 작업을 지원합니다.

메모리 내 PDF를 사용할 때 최적의 성능을 얻으려면 메모리 스트림 연산을 사용하여 디스크 I/O 오버헤드를 줄이십시오.

자주 묻는 질문

C#에서 PDF 문서에서 텍스트를 추출하는 방법은 무엇인가요?

IronPDF의 ExtractAllText 메서드를 사용하여 PDF 문서에서 내장된 텍스트를 추출할 수 있습니다. 이 메서드는 PDF 문서에 포함된 모든 텍스트를 문자열로 반환하며, 각 페이지는 네 개의 연속된 줄 바꿈 문자로 구분됩니다. IronPDF는 국제 언어 및 UTF-8 문자에 대한 올바른 인코딩을 유지합니다.

PDF 파일에서 이미지를 프로그램으로 추출할 수 있나요?

네, IronPDF는 PDF 문서에서 그래픽 요소를 추출하는 ExtractAllImages 메서드를 제공합니다. 추출한 이미지는 디스크에 저장하거나 다른 형식으로 변환한 후 새 문서에 삽입할 수 있습니다.

PDF 콘텐츠 추출의 주요 사용 사례는 무엇입니까?

IronPDF의 추출 도구는 데이터 분석을 위한 PDF 구문 분석, 콘텐츠를 검색 가능한 형식으로 변환, 아카이빙을 위한 시각적 요소 추출, 편집 또는 HTML과 같은 다른 형식으로 변환을 위한 콘텐츠 재활용 등 다양한 워크플로를 지원합니다.

PDF 콘텐츠를 추출하는 데 필요한 코드는 몇 줄입니까?

IronPDF를 사용하면 단 몇 줄의 코드로 텍스트와 이미지를 추출할 수 있습니다. PDF 문서를 불러온 후 텍스트를 추출하려면 ExtractAllText() 함수를, 이미지를 추출하려면 ExtractAllImages() 함수를 호출하기만 하면 됩니다.

문서 전체가 아닌 특정 페이지의 내용만 추출할 수 있나요?

네, IronPDF를 사용하면 텍스트와 이미지를 추출할 특정 페이지를 지정할 수 있으므로 PDF 문서에서 어떤 콘텐츠를 가져올지 정확하게 제어할 수 있습니다.

커티스 차우
기술 문서 작성자

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

커티스는 개발 분야 외에도 사물 인터넷(IoT)에 깊은 관심을 가지고 있으며, 하드웨어와 소프트웨어를 통합하는 혁신적인 방법을 연구합니다. 여가 시간에는 게임을 즐기거나 디스코드 봇을 만들면서 기술에 대한 애정과 창의성을 결합합니다.

시작할 준비 되셨나요?
Nuget 다운로드 17,527,568 | 버전: 2026.2 방금 출시되었습니다