IRONSOFTWAREHOME

IronOCR을 사용하여 C#에서 PDF를 읽는 방법

Curtis Chau
Curtis Chau
Updated: 2026년 6월 4일

IronOCR은 C#에서 단 한 줄의 코드로 PDF 파일에서 텍스트를 추출할 수 있도록 지원하며, 모든 PDF 버전을 지원하고 Tesseract 기반 엔진을 통해 정확한 OCR 결과를 제공합니다.

PDF는 "휴대용 문서 형식(Portable Document Format)"의 약자입니다. 어도비에서 개발한 파일 형식으로, 문서를 생성하는 데 사용된 애플리케이션이나 플랫폼에 관계없이 원본 문서의 글꼴, 이미지, 그래픽 및 레이아웃을 그대로 유지합니다. PDF 파일은 일반적으로 어떤 소프트웨어나 하드웨어를 사용하더라도 일관된 형식으로 문서를 공유하고 볼 수 있도록 사용됩니다. IronOCR은 구형 PDF 1.0 규격부터 최신 PDF 2.0 표준까지 다양한 버전의 PDF 문서를 처리할 수 있습니다.

빠른 시작: 몇 초 만에 PDF 파일 OCR 처리

IronOCR을 사용하여 PDF를 가리키는 OcrPdfInput을 구성한 다음 Read을 호출하여 OCR을 빠르게 설정하십시오. 이 예시는 IronOCR을 사용하여 PDF에서 텍스트를 추출하는 방법을 보여줍니다.

  1. 1Install IronOCR with NuGet Package Manager

    PM > Install-Package IronOcr

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

    using var result = new IronOcr.IronTesseract().Read(new IronOcr.OcrPdfInput("document.pdf", PdfContents.TextAndImages));
    C#
  3. 3실제 운영 환경에서 테스트할 수 있도록 배포하세요.

    무료 체험판으로 오늘 프로젝트에서 IronOCR 사용 시작하기
    arrow pointer

PDF 파일 전체를 어떻게 읽나요?

OCR을 수행하려면 IronTesseract 클래스를 인스턴스화하여 시작하세요. 그런 다음, 'using' 문을 사용하여 PDF 파일 경로를 전달하여 OcrPdfInput 객체를 생성합니다. 마지막으로 Read 메서드를 사용하여 OCR을 수행합니다. 이 접근 방식은 스캔한 PDF(이미지 기반)와 검색 가능한 PDF(텍스트 기반) 모두에서 작동하며, 다양한 유형의 PDF에서 텍스트를 추출하는 데 적합합니다.

/* :path=/static-assets/ocr/content-code-examples/how-to/input-pdfs-read-pdf.cs */
using IronOcr;

// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();

// Add PDF
using var pdfInput = new OcrPdfInput("Potter.pdf");
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(pdfInput);

// Access the extracted text
string extractedText = ocrResult.Text;
System.Console.WriteLine(extractedText);
서식이 지정된 해리포터 텍스트와 추출된 일반 텍스트 출력을 분할 화면으로 보여주어 PDF 텍스트 추출 과정을 시연합니다.

대부분의 경우 DPI 속성을 지정할 필요가 없습니다. 그러나 OcrPdfInput의 구성에서 높은 DPI 수치를 제공하는 것은 읽기 정확도를 향상시킬 수 있습니다. 대부분의 표준 PDF 문서에는 기본 DPI 설정이 충분하지만, 특수 문서의 경우 조정이 필요할 수 있습니다.

DPI 설정은 언제 조정해야 할까요?

DPI(인치당 도트 수) 설정은 해상도가 낮은 스캔 문서나 작은 글씨가 포함된 PDF 파일을 다룰 때 매우 중요해집니다. 최적의 결과를 얻으려면 다음과 같은 경우 DPI 설정을 조정하는 것을 고려하십시오.

  • 200 DPI 미만의 스캔 문서 작업
  • 과거 또는 보관용 PDF 파일 처리
  • 복잡한 레이아웃이나 작은 글꼴을 다룰 때
  • 기본 설정에서 정확도 문제가 발생함

대부분의 OCR 작업에는 300 DPI가 권장되지만, 글씨가 매우 작거나 세부 사항이 복잡한 문서의 경우 600 DPI가 필요할 수 있습니다.

IronOCR은 PDF 외에 어떤 파일 형식을 지원하나요?

IronOCR은 PDF 외에도 다양한 파일 형식을 완벽하게 지원합니다. 다음과 같은 다양한 형식의 이미지를 처리 할 수 있습니다.

  • 일반 사진의 경우 JPEG/JPG 형식입니다.
  • 투명도가 있는 이미지의 경우 PNG 형식입니다.
  • 여러 페이지로 구성된 문서의 경우 TIFF 형식을 사용합니다.
  • BMP는 압축되지 않은 이미지용입니다.
  • 간단한 그래픽용 GIF

또한 IronOCR은 PDF 스트림을 메모리에서 직접 처리할 수 있어 웹 애플리케이션 및 클라우드 서비스에 적합합니다.

PDF 콘텐츠 유형 작업하기

PDF 파일을 처리할 때 콘텐츠 유형을 지정하면 성능을 최적화할 수 있습니다. PdfContents 열거형을 사용하여 특정 콘텐츠를 대상으로 할 수 있습니다:

// For text-only PDFs (faster processing)
var textOnlyPdf = new OcrPdfInput("document.pdf", PdfContents.Text);

// For image-only PDFs (scanned documents)
var imageOnlyPdf = new OcrPdfInput("scanned.pdf", PdfContents.Images);

// For mixed content (default)
var mixedPdf = new OcrPdfInput("mixed.pdf", PdfContents.TextAndImages);

PDF 파일에서 특정 페이지만 읽으려면 어떻게 해야 하나요?

PDF 문서에서 특정 페이지를 읽을 때는 가져올 페이지 색인 번호를 지정하십시오. 이를 수행하려면 OcrPdfInput를 생성할 때 페이지 인덱스 목록을 PageIndices 매개변수에 전달하십시오. 페이지 색인은 0부터 시작하는 번호를 사용한다는 점을 유념하십시오. 이 기능은 특정 페이지에만 관련 정보가 포함된 대용량 문서를 다룰 때 특히 유용합니다.

using IronOcr;
using System.Collections.Generic;

// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();

// Create page indices list
List<int> pageIndices = new List<int>() { 0, 2 };

// Add PDF
using var pdfInput = new OcrPdfInput("Potter.pdf", PageIndices: pageIndices);
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(pdfInput);

페이지 번호가 0부터 시작하는 이유는 무엇인가요?

0부터 시작하는 인덱싱은 C#을 비롯한 대부분의 프로그래밍 언어에서 표준적인 관례입니다. 즉, 첫 번째 페이지는 인덱스 0, 두 번째 페이지는 인덱스 1 등입니다. 배열 인덱싱과의 이러한 일관성 덕분에 개발자는 페이지 컬렉션을 프로그래밍 방식으로 더 쉽게 다룰 수 있습니다. 사람이 읽을 수 있는 페이지 번호(1, 2, 3...)를 색인으로 변환할 때는 페이지 번호에서 1을 빼기만 하면 됩니다.

연속되지 않은 페이지를 어떻게 읽을 수 있나요?

IronOCR을 사용하면 연속되지 않은 페이지를 읽는 것도 간단합니다. 원하는 페이지 색인을 순서에 상관없이 목록에 추가하기만 하면 됩니다. 예를 들어:

// Read pages 1, 3, 5, and 10 (using zero-based indices)
List<int> pageIndices = new List<int>() { 0, 2, 4, 9 };

// Or use LINQ for range-based selection
var evenPages = Enumerable.Range(0, 10).Where(x => x % 2 == 0).ToList();

OCR 엔진은 지정된 페이지만 처리하므로 대용량 문서 처리 성능이 크게 향상됩니다.

잘못된 페이지 번호를 지정하면 어떻게 되나요?

문서의 페이지 수를 초과하는 페이지 인덱스를 지정하면 IronOCR에서 예외가 발생합니다. 처리 전에 오류 처리를 구현하거나 페이지 수를 검증하십시오. 색인이 유효한지 확인하려면 OCR을 수행하기 전에 PDF의 총 페이지 수를 확인할 수 있습니다.

PDF 파일의 특정 영역을 OCR로 인식하려면 어떻게 해야 하나요?

읽어야 할 영역을 좁히면 읽기 효율을 크게 높일 수 있습니다. 이를 위해서는 가져온 PDF 파일에서 읽어야 할 정확한 영역을 지정해야 합니다. 아래 코드 예시에서 IronOCR은 장 번호와 제목만 추출하는 데 초점을 맞춥니다. 이 기술은 이미지에 대한 OCR 영역을 정의하는 것과 유사하게 속도와 정확도를 모두 향상시킵니다.

using IronOcr;
using IronSoftware.Drawing;
using System;

// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();

// Specify crop regions
Rectangle[] scanRegions = { new Rectangle(550, 100, 600, 300) };

// Add PDF
using (var pdfInput = new OcrPdfInput("Potter.pdf", ContentAreas: scanRegions))
{
    // Perform OCR
    OcrResult ocrResult = ocrTesseract.Read(pdfInput);

    // Output the result to console
    Console.WriteLine(ocrResult.Text);
}

직사각형의 정확한 좌표를 어떻게 구할 수 있나요?

빨간색 사각형으로 표시된 PDF 파일에서 OCR 처리를 위한 챕터 제목을 선택하고, Visual Studio 콘솔에 실행 완료 화면이 표시됩니다.

정확한 좌표를 찾으려면 PDF의 좌표계를 이해해야 합니다. Rectangle 생성자는 네 개의 매개변수를 받습니다: X (수평 위치), Y (수직 위치), Width, 그리고 Height. 모든 측정값은 픽셀 단위입니다. 눈금자 기능이 있는 PDF 뷰어나 디버깅 유틸리티와 같은 도구를 사용하면 정확한 좌표를 식별하는 데 도움이 될 수 있습니다. 또는 시행착오를 통해 작은 조정을 거듭하여 선택 영역을 구체화할 수도 있습니다.

보다 정확한 영역 정의를 위해 디버깅용 텍스트 강조 표시 기능을 활용하여 처리 중인 영역을 시각화할 수 있습니다.

한 번의 작업으로 여러 지역을 지정할 수 있나요?

네, IronOCR은 단일 OCR 작업에서 여러 지역을 지원합니다. 배열에 여러 Rectangle 객체를 간단히 추가하세요:

Rectangle[] scanRegions = { 
    new Rectangle(50, 50, 200, 100),    // Header region
    new Rectangle(50, 200, 500, 300),   // Main content region
    new Rectangle(50, 550, 200, 50)     // Footer region
};

각 지역은 별도로 처리되며, 결과는 지정된 순서대로 통합됩니다.

전체 페이지 OCR 대신 영역별 OCR을 사용하는 이유는 무엇일까요?

지역별 OCR은 다음과 같은 몇 가지 장점을 제공합니다.

  • 성능 : 더 작은 영역을 처리하는 속도가 훨씬 빠릅니다.
  • 정확성 : 특정 지역에 집중함으로써 관련 없는 콘텐츠로 인한 노이즈를 줄일 수 있습니다.
  • 구조 : 양식과 표에서 데이터를 더욱 안정적으로 추출합니다.
  • 비용 효율성 : 처리 시간이 짧아지면 계산 비용이 절감됩니다.

이 접근 방식은 데이터가 예측 가능한 위치에 나타나는 송장, 양식 또는 보고서와 같은 구조화된 문서를 다룰 때 특히 유용합니다. 복잡한 문서 구조의 경우, 문서 내 표를 읽어 추출하는 특수 기법을 활용해 보세요.

어떤 고급 PDF OCR 기능이 있나요?

IronOCR은 기본적인 텍스트 추출을 넘어 PDF 처리를 위한 다양한 추가 기능을 제공합니다. 스캔한 문서에서 검색 가능한 PDF를 만들 수 있으며, 원본 레이아웃을 유지하면서 검색 및 복사를 위한 텍스트 레이어를 추가할 수 있습니다. 이 라이브러리는 대규모 PDF 모음의 빠른 처리를 위해 멀티스레딩 도 지원합니다.

.NET 애플리케이션에서 OCR을 시작하려는 개발자라면 간단한 OCR 예제를 살펴보는 것만으로도 IronOCR의 기능과 모범 사례를 이해하는 데 탄탄한 기초를 다질 수 있습니다.

복잡한 PDF 시나리오 처리

IronOCR은 까다로운 PDF 문서를 처리할 때 다음과 같은 여러 고급 기능을 제공합니다.

  1. 이미지 전처리: 텍스트 선명도를 개선하기 위한 이미지 필터를 적용하십시오.
  2. 다중 언어: 다중 언어를 포함하는 문서를 동시에 처리합니다.
  3. 맞춤형 구성: 특정 문서 유형에 대해 OCR 설정을 미세 조정합니다.
  4. 내보내기 옵션 : 검색 가능한 PDF 및 hOCR HTML을 포함한 다양한 형식으로 결과를 저장할 수 있습니다.

이러한 기능 덕분에 IronOCR은 기업 수준의 PDF 처리 요구 사항을 충족하는 포괄적인 솔루션이 되었습니다.

자주 묻는 질문

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

IronOCR을 사용하면 단 한 줄의 코드로 PDF 파일에서 텍스트를 추출할 수 있습니다. IronTesseract 인스턴스를 생성하고 OcrPdfInput을 사용하여 Read 메서드를 호출하기만 하면 됩니다. 예: `using var result = new IronOcr.IronTesseract().Read(new IronOcr.OcrPdfInput("document.pdf", PdfContents.TextAndImages));`. IronOCR은 스캔된 PDF(이미지 기반)와 검색 가능한 PDF(텍스트 기반) 모두를 처리합니다.

텍스트 추출에 지원되는 PDF 버전은 무엇입니까?

IronOCR은 구형 PDF 1.0부터 최신 PDF 2.0 표준까지 모든 PDF 버전을 지원합니다. OCR 엔진은 Tesseract 기술을 기반으로 구축되어 어떤 PDF 버전을 사용하든 정확한 텍스트 추출을 보장합니다.

PDF 문서 전체를 읽는 대신 특정 페이지만 읽을 수 있나요?

네, IronOCR은 페이지 인덱스를 제공하여 PDF에서 특정 페이지를 읽을 수 있도록 지원합니다. 전체 문서를 처리하는 대신 OcrPdfInput 객체를 사용하여 텍스트를 추출할 페이지를 지정할 수 있으므로 대용량 문서의 OCR 처리 효율을 높일 수 있습니다.

PDF 파일에서 OCR을 수행하기 위한 최소한의 워크플로는 무엇입니까?

IronOCR의 최소 워크플로는 5단계로 구성됩니다. 1) C# 라이브러리 다운로드, 2) PDF 문서 준비, 3) PDF 파일 경로를 사용하여 OcrPdfInput 객체 생성, 4) Read 메서드를 사용하여 OCR 수행, 5) 선택적으로 페이지 인덱스를 지정하여 특정 부분만 읽기.

PDF OCR의 DPI 설정은 언제 조정해야 하나요?

IronOCR의 기본 DPI 설정은 대부분의 표준 PDF에서 잘 작동하지만, 저해상도 스캔 문서(200 DPI 미만) 또는 작은 텍스트가 포함된 PDF를 처리할 때는 DPI를 조정하는 것이 좋습니다. OcrPdfInput 구문에서 DPI 설정을 높이면 특수 문서의 읽기 정확도를 크게 향상시킬 수 있습니다.

OCR 엔진은 스캔한 PDF 파일과 검색 가능한 PDF 파일 모두에서 작동합니까?

네, IronOCR은 스캔한 PDF(이미지 기반)와 검색 가능한 PDF(텍스트 기반)를 모두 효과적으로 처리합니다. Tesseract 기반 엔진은 다양한 PDF 유형을 자동으로 처리하므로, 별도의 접근 방식 없이 여러 PDF 형식에서 텍스트를 추출할 수 있는 다재다능한 도구입니다.

What are the advantages of using region-specific OCR over full-page OCR?

Region-specific OCR improves performance by focusing on relevant areas, enhancing accuracy and reducing noise from irrelevant content. It is especially useful for forms and structured documents.

What advanced OCR features does IronOCR offer for PDFs?

IronOCR provides features such as creating searchable PDFs, multithreading for faster processing, image preprocessing, and support for multiple languages, catering to complex document processing needs.

How do you handle invalid page numbers in IronOCR?

If invalid page numbers are specified in IronOCR, it will throw an exception. It is recommended to implement error handling or verify page counts prior to processing.

Can IronOCR process non-consecutive pages from a PDF?

Yes, IronOCR can handle non-consecutive pages by specifying the desired page indices in a list. This allows for selective processing of pages in any order.

Curtis Chau
기술 문서 작성자

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

...
더 읽어보기

시작할 준비 되셨나요?

Nuget Downloads 6,236,385버전:2026.9방금 출시

무료로 받기

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

bullet_checked신용카드나 계정 생성은 필요하지 않습니다.
bullet_test워터마크 없이
프로덕션에서 테스트
bullet_calendar30일 완전한
기능의 제품
bullet_support체험 기간 동안
24/5 기술 지원
지금 바로 30일 무료 체험판 키를 받으세요.
신용카드나 계정 생성은 필요하지 않습니다.
PDF용 C# NuGet 라이브러리
NuGet을 사용하여 설치하세요

버전: 2026.9

PM > Install-Package IronOcr
nuget.org/packages/IronOcr/
  1. 솔루션 탐색기에서 참조를 마우스 오른쪽 버튼으로 클릭하고 NuGet 패키지 관리를 선택합니다.
  2. 찾아보기를 선택하고 "IronOCR"을 검색하세요.
  3. 패키지를 선택하고 설치하세요
C# PDF DLL
DLL 다운로드

버전: 2026.9

또는 여기에서 Windows 설치 프로그램을 다운로드하십시오.

  1. IronOCR을 다운로드하고 솔루션 디렉터리 내의 ~/Libs와 같은 위치에 압축을 푸세요.
  2. Visual Studio 솔루션 탐색기에서 참조를 마우스 오른쪽 버튼으로 클릭합니다. 찾아보기를 선택하고 "IronOCR.dll"을 선택합니다.

라이선스 가격은 749달러 부터 시작합니다.

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