IRONSOFTWAREHOME

IronOCR를 사용하여 C#에서 바코드 및 QR 코드를 읽는 방법

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

IronOCR는 설정에서 ReadBarCodes = true을 설정하여 C#에서 바코드 및 QR 코드를 읽습니다. 이 단일 설정은 QR 코드, Code 128, Data Matrix를 포함하여 20개 이상의 바코드 형식을 지원하며, PDF 및 이미지에서 일반 텍스트 인식과 함께 바코드 값을 자동으로 추출할 수 있게 해줍니다.

빠른 시작: PDF에서 즉시 바코드 읽기

하나의 설정으로 바코드 감지를 활성화하고 IronOCR로 PDF를 스캔하십시오. 아래 코드에서는 바코드 읽기를 활성화하고, PDF를 처리하고, 해독된 값을 검색하는 방법을 보여줍니다.

  1. 1Install IronOCR with NuGet Package Manager

    PM > Install-Package IronOcr

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

    var result = new IronOcr.IronTesseract() { Configuration = new IronOcr.TesseractConfiguration { ReadBarCodes = true } }.Read(new IronOcr.OcrPdfInput("document.pdf"));
    foreach(var bc in result.Barcodes) Console.WriteLine(bc.Value);
    C#
  3. 3실제 운영 환경에서 테스트할 수 있도록 배포하세요.

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

PDF 문서에서 바코드를 어떻게 읽나요?

읽기를 수행하기 위해 IronTesseract 객체를 생성하십시오. ReadBarCodes 속성을 true로 설정하여 바코드 감지를 활성화하십시오. OcrPdfInput 생성자를 사용하여 PDF 문서를 가져옵니다. 가져온 PDF에서 OCR을 수행하기 위해 Read 메서드를 사용하십시오.

다음은 이 PDF 문서를 사용하는 예입니다:

using IronOcr;
using System;

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

// Enable barcode reading
ocrTesseract.Configuration.ReadBarCodes = true;

// Add PDF
using var imageInput = new OcrPdfInput("pdfWithBarcodes.pdf");

// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);

// Output detected barcodes and text values
Console.WriteLine("Extracted text:");
Console.WriteLine(ocrResult.Text);
Console.WriteLine("Extracted barcodes:");
foreach (var barcode in ocrResult.Barcodes)
{
    Console.WriteLine(barcode.Value);
}
비즈니스 프로파일이 포함된 PDF에서 추출된 텍스트와 세 가지 바코드 (A,B,C)를 보여주는 IronOCR 디버그 출력

다수의 바코드 값이 바코드 아래에 나타나며 추출된 텍스트에 포함됩니다.

왜 IronOCR는 텍스트와 바코드 값을 모두 추출하나요?

IronOCR의 이중 추출은 포괄적인 문서 분석을 제공합니다. 텍스트와 바코드를 모두 포함한 문서를 처리할 때, 라이브러리는 표준 OCR 텍스트 추출과 동시에 바코드 심볼로지를 해독합니다. 이 통합된 접근 방식은 다중 처리 패스나 별도의 라이브러리 필요성을 없애줍니다.

텍스트 추출은 사람이 읽을 수 있는 요소를 캡처하는 반면, 바코드 감지는 기계 판독 데이터를 식별하고 해독합니다. 바코드 값이 인쇄된 텍스트와 연관되는 송장, 배송 레이블, 또는 재고 보고서 같은 문서에 도움이 됩니다. OcrResult 클래스는 이러한 출력을 구분하며 - Text 속성을 통해 텍스트에 접근하고 Barcodes 컬렉션을 통해 바코드 데이터에 접근합니다.

지원되는 바코드 형식은 무엇인가요?

IronOCR는 20개 이상의 바코드 형식을 지원합니다:

1D 바코드:

  • 코드 128, 코드 39, 코드 93
  • EAN-13, EAN-8
  • UPC-A, UPC-E
  • 코다바
  • ITF (2의 5 인터리브)
  • MSI
  • 플레시

2D 바코드:

  • QR 코드
  • 데이터 매트릭스
  • PDF417
  • Aztec 코드
  • 맥시코드

MICR 수표를 읽거나 신분증 문서를 처리와 같은 전문화된 응용 프로그램의 경우, IronOCR의 바코드 기능은 텍스트 추출 기능을 보완합니다.

전용 바코드 라이브러리 대신 바코드 읽기에 OCR을 언제 사용해야 하나요?

다음과 같은 경우 IronOCR의 통합 바코드 읽기를 선택하십시오:

  1. 혼합 콘텐츠 처리: 문서에 텍스트와 바코드가 모두 포함되어 있는 경우(배송 라벨, 송장 또는 스캔된 문서)
  2. 단일 라이브러리 선호: 종속성을 최소화하고 단일 솔루션을 사용하려는 경우
  3. PDF 처리: 이미 IronOCR를 사용하여 PDF OCR 텍스트 추출을 하고 있는 경우
  4. 복잡한 문서 레이아웃: 텍스트 영역이나 테이블 내에 바코드가 내장된 문서의 경우

다음과 같은 경우 전용 바코드 라이브러리를 사용하십시오:

  • 대용량의 바코드 전용 이미지를 처리하는 경우
  • 실시간 바코드 스캔이 필요한 경우(< 50ms 응답 시간)
  • 손상되거나 저품질 바코드를 처리할 때 특수 알고리즘이 필요한 경우
  • 카메라 최적화를 통한 모바일 바코드 스캔 구현

문서에서 QR 코드를 어떻게 읽나요?

바코드 읽기와 마찬가지로 ReadBarCodes 속성을 true로 설정하십시오. 파일 경로 이외에 다른 코드 변경은 필요하지 않습니다. 이 PDF 문서로 QR 코드를 처리하십시오:

using IronOcr;
using System;

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

// Enable barcode reading
ocrTesseract.Configuration.ReadBarCodes = true;

// Add PDF
using var imageInput = new OcrPdfInput("pdfWithQrCodes.pdf");

// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);

// Output detected barcodes and text values
Console.WriteLine("Extracted text:");
Console.WriteLine(ocrResult.Text);
Console.WriteLine("Extracted barcodes:");
foreach (var barcode in ocrResult.Barcodes)
{
    Console.WriteLine(barcode.Value);
}
문서에서 성공적으로 디코딩된 QR 코드 A, B, C와 추출된 텍스트를 보여주는 Visual Studio의 IronOCR 출력

왜 같은 구성이 바코드와 QR 코드 모두에 동작하나요?

IronOCR의 통합 바코드 감지 엔진은 모든 기계 판독 코드를 동일하게 처리합니다. ReadBarCodes 구성은 형식 별 설정이 필요하지 않은 1D (선형 바코드) 및 2D (QR 코드, 데이터 매트릭스) 형식을 인식하는 포괄적인 심볼로지 감지기를 활성화합니다. 이 디자인은 구현을 간소화하고 구성의 복잡성을 줄여줍니다.

탐지 알고리즘은 자동으로:

  • 패턴 인식에 기반하여 심볼로지 유형을 식별
  • 적절한 해독 알고리즘 적용
  • 방향 및 크기 변형 처리
  • 바코드 유형에 관계없이 일관된 형식으로 결과 반환

이 접근 방식은 컴퓨터 비전 모델이 작동하는 방식을 반영합니다. 여러 형식으로 훈련받아 보편 감지 기능을 제공합니다.

OCR로 QR 코드를 읽을 때 흔한 문제는 무엇인가요?

QR 코드를 처리할 때의 일반적인 문제는 다음과 같습니다:

  1. 해상도 문제: PDF에 있는 QR 코드가 최소 모듈 크기보다 낮은 해상도로 다운샘플링 될 수 있습니다. DPI 설정을 사용하여 적절한 해상도를 보장하십시오 (최소 300 DPI 권장).

  2. 이미지 품질: 스캔된 QR 코드는 종종 흐릿함, 노이즈, 왜곡이 발생합니다. 이미지 보정 필터를 적용하여 명확성을 향상시키십시오:

// Apply filters to improve QR code readability
ocrTesseract.Configuration.ReadBarCodes = true;
var input = new OcrImageInput("qr-code-scan.jpg");
input.DeNoise();
input.Sharpen();
input.EnhanceResolution();

var result = ocrTesseract.Read(input);
  1. 방향 문제: 각도가 있는 QR 코드는 제대로 디코드되지 않을 수 있습니다. 페이지 회전 감지를 활성화하여 잘못 정렬된 문서를 처리하십시오.

  2. 혼합 콘텐츠 간섭: QR 코드 위에 텍스트나 그래픽이 겹쳐질 경우 탐지가 방해받을 수 있습니다. 영역 자르기를 사용하여 필요할 경우 QR 코드 영역을 분리하십시오.

QR 코드 인식 정확도를 어떻게 개선할 수 있나요?

다음 기법을 사용하여 QR 코드 인식을 최적화하십시오:

  1. 이미지 전처리: 최적의 보정 설정을 결정하기 위해 필터 마법사를 사용하십시오:
// Enhanced QR code reading with preprocessing
var ocrTesseract = new IronTesseract();
ocrTesseract.Configuration.ReadBarCodes = true;

// Configure for better QR detection
var input = new OcrImageInput("document-with-qr.pdf");
input.TargetDPI = 300; // Ensure sufficient resolution
input.Binarize(); // Convert to black and white
input.DeNoise(); // Remove image artifacts

var result = ocrTesseract.Read(input);
  1. 다중 페이지 처리: 여러 페이지에 걸쳐 QR 코드가 있는 다중 페이지 문서의 경우:
// Process multi-page documents efficiently
using var pdfInput = new OcrPdfInput("multi-page-qr-document.pdf");
pdfInput.TargetDPI = 300;

var results = ocrTesseract.Read(pdfInput);
foreach (var page in results.Pages)
{
    Console.WriteLine($"Page {page.PageNumber}:");
    foreach (var barcode in page.Barcodes)
    {
        Console.WriteLine($"  QR Code: {barcode.Value}");
        Console.WriteLine($"  Location: X={barcode.X}, Y={barcode.Y}");
    }
}
  1. 비동기 처리: 여러 문서에서 성능을 개선하기 위해 비동기 메서드를 사용하십시오:
// Asynchronous QR code reading
var result = await ocrTesseract.ReadAsync(imageInput);
  1. 인식 문제 디버그: IronOCR가 탐지하는 것을 시각화하기 위해 결과 강조 표시를 활성화하십시오:
result.SaveAsHighlightedImage("qr-detection-debug.png");

대규모 바코드 처리 성능 최적화

바코드 및 QR 코드가 있는 수천 개의 문서를 처리할 때는 다음 최적화 전략을 구현하십시오:

  1. 멀티스레딩: 여러 문서를 동시에 처리하기 위해 멀티스레드 처리를 활용하십시오:
// Process multiple documents in parallel
var documents = new[] { "doc1.pdf", "doc2.pdf", "doc3.pdf" };
var results = documents.AsParallel().Select(doc =>
{
    var tesseract = new IronTesseract();
    tesseract.Configuration.ReadBarCodes = true;
    return tesseract.Read(new OcrPdfInput(doc));
}).ToList();
  1. 메모리 관리: 장기 실행 운영에 대해 중단 토큰을 사용하십시오:
// Implement cancellation for large batch processing
using var cts = new CancellationTokenSource();
ocrTesseract.Configuration.CancellationToken = cts.Token;

// Cancel if processing takes too long
cts.CancelAfter(TimeSpan.FromMinutes(5));
  1. 결과 내보내기: 텍스트와 바코드 데이터를 모두 유지하기 위해 결과를 검색 가능한 PDF로 저장하십시오:
// Export results with embedded barcode values
result.SaveAsSearchablePdf("output-with-barcodes.pdf");

비즈니스 애플리케이션과의 통합

IronOCR의 바코드 기능은 기존의 .NET 애플리케이션과 원활하게 통합됩니다. 일반적인 통합 시나리오에는 다음이 포함됩니다:

  • 재고 관리: 배송 명세서에서 제품 코드를 추출
  • 문서 보관: 포함된 바코드 식별자를 기준으로 스캔된 문서 색인화
  • 청구서 처리: 금융 문서의 줄 항목과 바코드 SKU를 일치시킵니다.
  • 의료 기록: 의료 양식과 함께 환자 손목밴드 바코드를 처리

고용량의 바코드 및 QR 코드를 처리하는 프로덕션 애플리케이션의 경우, 진행 상황 추적을 구현하여 처리 상태를 모니터링하고 현실 사용 사례 기반의 성능을 최적화하는 것을 고려하십시오.

자주 묻는 질문

C# 애플리케이션에서 바코드 읽기 기능을 어떻게 활성화할 수 있나요?

IronOCR에서 바코드 읽기를 활성화하려면 TesseractConfiguration에서 ReadBarCodes = true로 설정하십시오. 이 설정 하나만으로 일반 텍스트 인식과 함께 PDF 및 이미지에서 바코드 값을 자동으로 추출할 수 있으며 20가지 이상의 바코드 형식을 지원합니다.

같은 문서에서 텍스트와 바코드를 모두 읽을 수 있나요?

네, IronOCR은 이중 추출을 수행합니다. 표준 OCR을 통해 사람이 읽을 수 있는 텍스트를 추출하는 동시에 기계가 읽을 수 있는 바코드를 디코딩합니다. OcrResult 클래스는 이러한 출력을 분리하여 Text 속성을 통해 텍스트에 접근하고 Barcodes 컬렉션을 통해 바코드 데이터에 접근할 수 있도록 합니다.

어떤 바코드 형식을 감지할 수 있습니까?

IronOCR은 1D 바코드(Code 128, Code 39, Code 93, EAN-13, EAN-8, UPC-A, UPC-E, Codabar, ITF, MSI, Plessey)와 2D 바코드(QR 코드, Data Matrix 등)를 포함하여 20가지 이상의 바코드 형식을 지원합니다.

PDF 문서에서 바코드를 추출하는 방법은 무엇인가요?

IronTesseract 객체를 생성하고 ReadBarCodes를 true로 설정한 다음, OcrPdfInput 생성자를 사용하여 PDF를 가져오고 Read 메서드를 사용합니다. IronOCR은 OCR을 수행하여 감지된 모든 바코드 값을 추출하며, 추출된 값은 result.Barcodes 컬렉션을 통해 확인할 수 있습니다.

텍스트 OCR과 바코드 읽기를 위해 별도의 라이브러리가 필요한가요?

아니요, IronOCR의 통합 접근 방식은 여러 번의 처리 과정이나 별도의 라이브러리가 필요하지 않습니다. 단일 작업으로 표준 OCR 텍스트 추출과 바코드 심볼 디코딩을 동시에 수행합니다.

How can I improve the accuracy of QR code recognition with IronOCR?

Improve QR code recognition by ensuring high resolution, applying image corrections like de-noising and sharpening, and handling orientation issues.

What are common challenges when reading QR codes with OCR?

Common challenges include resolution issues, image quality problems, orientation errors, and interference from overlapping text or graphics.

Can IronOCR handle multi-page PDF documents with barcodes?

Yes, IronOCR can process multi-page PDF documents with barcodes by reading each page individually and outputting detected barcode values and formats.

What is the benefit of using IronOCR for PDF text extraction and barcode reading?

Using IronOCR allows for unified text and barcode extraction from PDF documents, reducing the need for separate libraries and processing steps for each type of data.

How can IronOCR's barcode capabilities integrate into business applications?

IronOCR can be used in various business applications such as inventory management, document archiving, invoice processing, and healthcare records by extracting and processing barcode information.

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일 무료 체험판 키를 받으세요.
신용카드나 계정 생성은 필요하지 않습니다.