푸터 콘텐츠로 바로가기
다른 구성 요소와 비교

AWS OCR과 Azure OCR 비교 (OCR 기능 비교)

Patagames Tesseract .NET SDK는 Windows환경에 종속되어 있으며, 이미 무료로 사용할 수 있는 엔진에 대해 상업용 라이선스 비용을 청구합니다. 이러한 점 때문에 2026년에는 판매하기 어려울 것으로 예상됩니다. 무료 charlesw 및 tesseractocr 래퍼는 동일한 Tesseract 엔진, 동일한 tessdata 관리 워크플로, 그리고 동일한 전처리 기능을 무료로 제공합니다. Patagames는 상업적 지원과 사전 빌드된 네이티브 바이너리를 제공하지만, Linux, macOS, Docker및 클라우드 배포 대상을 제외합니다. 이미 상용 가격으로 OCR 소프트웨어를 구매하고 있다면, 실제로 상용 수준의 기능을 제공받고 있는 것인지 아니면 단순히 무료로 사용할 수 있는 편리한 바이너리 배포판에 불과한 것인지 의문이 생깁니다.

Patagames Tesseract .NET SDK 이해하기

Patagames Tesseract.NET SDK (NuGet 패키지 Tesseract.Net.SDK, 네임스페이스 Patagames.Ocr)는 Patagames Software에서 제작한 Google's 오픈소스 Tesseract OCR 엔진에 대한 상업적 .NET 래퍼입니다. 이 제품은 사전 컴파일된 네이티브 Tesseract 바이너리를 번들로 제공하고, 상업적 지원을 제공하며, 원시 Tesseract 위에 간소화된 API 인터페이스를 제공함으로써 무료 커뮤니티 래퍼보다 우위를 점하고 있습니다.

래퍼는 OcrApiOcrBitmap 같은 클래스를 통해 Tesseract의 핵심 인식 루프를 노출합니다. 당신은 OcrApi.Create()를 호출하고, tessdata 경로 및 언어 문자열로 엔진을 초기화하고, 비트맵을 로드하고, GetTextFromImage을 호출합니다. 이것이 바로 이미지 인식을 위한 OCR의 전체 기능이라고 할 수 있습니다.

Patagames Tesseract .NET SDK의 주요 아키텍처 특징:

  • Windows 전용 대상: SDK는 Windows네이티브 바이너리를 제공합니다. Linux, macOS및 Docker배포는 지원되지 않습니다. 크로스 플랫폼 NuGet 런타임 패키지 분할이나 Linux전용 네이티브 바이너리는 없습니다.
  • 테서랙트 엔진 기반: 모든 인식 정확도는 오픈 소스 테서랙트 엔진에서 비롯됩니다. 파타가메스는 자체 개발한 인식 모델이나 신경망 레이어를 추가하지 않습니다.
  • 수동 tessdata 관리: api.Init(tessDataPath, "eng") 호출은 .traineddata 파일로 채워진 유효한 tessdata 디렉토리가 필요합니다. SDK는 언어 데이터를 자동으로 관리하지 않습니다.
  • 전처리 파이프라인 없음: 내장된 기울기 보정, 노이즈 제거, 대비 조정 또는 이진화 작업이 없습니다. API에 이미지를 전달하기 전에 이미지 품질을 개선하는 것은 전적으로 사용자의 책임입니다.
  • 네이티브 PDF 지원 없음: PDF 문서는 우선 이미지로 외부 렌더링이 필요합니다. SDK는 PDF 파일 경로가 아닌 System.Drawing.Bitmap 객체를 수용합니다.
  • 공개 가격이 없는 상업용 가격 책정: 라이선스 등급(개인 개발자, 팀, Enterprise)에 대한 자세한 내용은 영업팀에 문의하십시오. 가격표는 공개되지 않았습니다.
  • System.Drawing 종속성: API는 System.Drawing.Bitmap와 함께 작동하여 코드를 Windows시대의 드로잉 인프라에 연결시키고, 소스 바이너리가 제공되더라도 비-Windows 타겟에서 추가적인 마찰을 만듭니다.

Patagames를 사용한 기본 OCR

Patagames API는 작업당 OcrApi 인스턴스를 초기화하고, tessdata 폴더 경로를 명시적으로 지정하며, System.Drawing.Bitmap를 수용합니다:

// NuGet: Install-Package Tesseract.Net.SDK
using Patagames.Ocr;
using Patagames.Ocr.Enums;
using System.Drawing;

public class PatagamesOcrService
{
    private const string TessDataPath = @"./tessdata"; // must exist and be populated

    public string ExtractText(string imagePath)
    {
        using var api = OcrApi.Create();
        api.Init(TessDataPath, "eng"); // tessdata path — breaks on deployment if path is wrong

        using var bitmap = new Bitmap(imagePath);
        return api.GetTextFromImage(bitmap);
    }

    public string MultiLanguageOcr(string imagePath)
    {
        using var api = OcrApi.Create();
        api.Init(TessDataPath, "eng+fra+deu"); // language string must match tessdata files present

        using var bitmap = new Bitmap(imagePath);
        return api.GetTextFromImage(bitmap);
    }

    public string OcrWithSegmentation(string imagePath, PageSegmentationMode mode)
    {
        using var api = OcrApi.Create();
        api.Init(TessDataPath, "eng");
        api.SetVariable("tessedit_pageseg_mode", ((int)mode).ToString()); // raw Tesseract variable

        using var bitmap = new Bitmap(imagePath);
        return api.GetTextFromImage(bitmap);
    }
}
// NuGet: Install-Package Tesseract.Net.SDK
using Patagames.Ocr;
using Patagames.Ocr.Enums;
using System.Drawing;

public class PatagamesOcrService
{
    private const string TessDataPath = @"./tessdata"; // must exist and be populated

    public string ExtractText(string imagePath)
    {
        using var api = OcrApi.Create();
        api.Init(TessDataPath, "eng"); // tessdata path — breaks on deployment if path is wrong

        using var bitmap = new Bitmap(imagePath);
        return api.GetTextFromImage(bitmap);
    }

    public string MultiLanguageOcr(string imagePath)
    {
        using var api = OcrApi.Create();
        api.Init(TessDataPath, "eng+fra+deu"); // language string must match tessdata files present

        using var bitmap = new Bitmap(imagePath);
        return api.GetTextFromImage(bitmap);
    }

    public string OcrWithSegmentation(string imagePath, PageSegmentationMode mode)
    {
        using var api = OcrApi.Create();
        api.Init(TessDataPath, "eng");
        api.SetVariable("tessedit_pageseg_mode", ((int)mode).ToString()); // raw Tesseract variable

        using var bitmap = new Bitmap(imagePath);
        return api.GetTextFromImage(bitmap);
    }
}
Imports Patagames.Ocr
Imports Patagames.Ocr.Enums
Imports System.Drawing

Public Class PatagamesOcrService
    Private Const TessDataPath As String = "./tessdata" ' must exist and be populated

    Public Function ExtractText(imagePath As String) As String
        Using api = OcrApi.Create()
            api.Init(TessDataPath, "eng") ' tessdata path — breaks on deployment if path is wrong

            Using bitmap = New Bitmap(imagePath)
                Return api.GetTextFromImage(bitmap)
            End Using
        End Using
    End Function

    Public Function MultiLanguageOcr(imagePath As String) As String
        Using api = OcrApi.Create()
            api.Init(TessDataPath, "eng+fra+deu") ' language string must match tessdata files present

            Using bitmap = New Bitmap(imagePath)
                Return api.GetTextFromImage(bitmap)
            End Using
        End Using
    End Function

    Public Function OcrWithSegmentation(imagePath As String, mode As PageSegmentationMode) As String
        Using api = OcrApi.Create()
            api.Init(TessDataPath, "eng")
            api.SetVariable("tessedit_pageseg_mode", CInt(mode).ToString()) ' raw Tesseract variable

            Using bitmap = New Bitmap(imagePath)
                Return api.GetTextFromImage(bitmap)
            End Using
        End Using
    End Function
End Class
$vbLabelText   $csharpLabel

tessdata 경로 문자열은 팀이 배포 과정에서 가장 먼저 직면하는 문제입니다. 개발자용 컴퓨터에서는 작동합니다. Docker컨테이너 또는 LinuxCI 실행기에서 경로 오류가 발생하거나 런타임이 아예 존재하지 않습니다. macOS에서는 네이티브 Windows바이너리가 아예 로드되지 않습니다. 세그멘테이션 모드는 원시 Tesseract 변수 문자열을 작성하여 설정됩니다. 해당 호출을 래핑하는 강력한 형식의 열거형은 없습니다. 이러한 부분들이 바로 상업적인 포장에도 불구하고 테서랙트의 날것 그대로의 본성이 드러나는 지점입니다.

IronOCR 이해하기

IronOCR 은 최적화된 Tesseract 5 엔진을 기반으로 구축된 상 for .NET OCR 라이브러리로, 완벽한 전처리 파이프라인, 네이티브 PDF 지원 및 크로스 플랫폼 배포 기능을 내장하고 있습니다. 설계 목표는 NuGet 패키지를 설치하는 것부터 문서에서 정확한 텍스트를 추출하는 것까지 모든 수동 단계를 없애는 것입니다.

IronOCR의 주요 특징:

  • 출시 첫날부터 크로스 플랫폼 지원: Windowsx64/x86, Linuxx64, macOS, Docker, Azure 앱 서비스 및 AWS Lambda를 단일 NuGet 패키지를 통해 모두 지원합니다. 별도의 바이너리 배포판이나 플랫폼 조건부 설정이 없습니다.
  • 자동 전처리: 기울기 보정, 노이즈 제거, 대비 향상, 이진화 및 해상도 정규화가 자동으로 실행됩니다. 필요할 때 OcrInput 필터 메소드를 통해 명시적인 제어가 가능합니다.
  • 네이티브 PDF 입력: IronTesseract.Read()에 PDF 파일 경로를 직접 전달합니다. 외부 렌더러도, 중간 이미지 변환도, 외부 라이브러리 의존성도 없습니다.
  • 검색 가능한 PDF 출력: result.SaveAsSearchablePdf()는 원본 이미지 위에 보이지 않는 텍스트 레이어가 있는 PDF/A 준수 문서를 하나의 호출로 생성합니다.
  • Tessdata는 보이지 않음: 언어 데이터는 NuGet 패키지(IronOcr.Languages.French 등)로 제공됩니다. 설정해야 할 tessdata 디렉터리가 없으며, 환경 간에 파일 경로를 잘못 지정할 필요도 없습니다.
  • 구조화된 결과: OcrResult는 X/Y 좌표와 단어별 신뢰도 점수를 가진 .Pages, .Lines, .Words, .Paragraphs 컬렉션을 노출합니다.
  • 공개 가격 책정: $999 Lite / $1,499 Plus / $2,999 Professional / $5,999 Unlimited, 모두 1년 업데이트 포함된 영구 라이선스.

기능 비교

기능 Patagames Tesseract .NET SDK IronOCR
플랫폼 지원 Windows 전용 Windows, Linux, macOS, Docker
가격 모델 상업용 (견적 문의) $5,999 영구 (공개)
엔진 테서랙트(오픈 소스) 최적화된 테서랙트 5
PDF 입력 지원되지 않음 내부 지원
자동 전처리 None 내장형
테스데이터 관리 수동(디렉토리 경로) NuGet 패키지
검색 가능한 PDF 출력 지원되지 않음 내장형

상세 기능 비교

기능 Patagames Tesseract .NET SDK IronOCR
플랫폼 지원
Windows
Linux 아니요
macOS 아니요
Docker 아니요
Azure 앱 서비스 아니요
AWS 람다 아니요
가격 및 라이선스
공개 가격 아니요 (연락 필요) 예 ($5,999)
영구 라이선스 알 수 없음
거래당 비용 None None
무료 티어 아니요 체험 가능
OCR 엔진 및 정확도
기본 엔진 테서랙트(오픈 소스) 최적화된 테서랙트 5
자동 전처리 아니요
수동 전처리 제어 테서랙트 변수를 통해 예 (왜곡 제거, 노이즈 제거, 대비 조정, 이진화, 해상도 향상)
입력 지원
JPEG / PNG / TIFF 예 (via System.Drawing.Bitmap)
PDF 입력(기본) 아니요
비밀번호로 보호된 PDF 아니요
스트림 입력 아니요
URL 입력 아니요
출력 기능
일반 텍스트
검색 가능한 PDF 아니요
hOCR 내보내기 아니요
구조화된 단어/줄 데이터 제한적 예 (좌표 + 신뢰도)
언어 지원
언어 개수 테서랙트 테스데이터 NuGet 팩을 통해 125개 이상
문서별 다국어 지원 예 (문자열 연결) 예 (강력한 형식의 열거형)
언어 분포 수동 tessdata 파일 dotnet add package
고급 기능
영역 기반 OCR 아니요
OCR 중 바코드 판독 아니요
단어별 신뢰도 점수 아니요
나사 안전 표준 테서랙트 한계 내장 병렬 처리
배포
자체 포함형 배포 Windows 전용 모든 플랫폼
Docker 컨테이너 아니요
CI/CD 파이프라인(리눅스) 아니요

플랫폼 지원 범위: 윈도우 전용 vs 크로스 플랫폼

이것이 두 도서관 간의 가장 중요한 건축적 차이점입니다.

파타가메스 접근법

Patagames는 Tesseract 엔진을 위한 Windows네이티브 바이너리를 제공합니다. OcrApi 클래스는 WindowsDLL을 로드합니다. Linux나 macOS에서는 로드할 항목이 없습니다. System.Drawing.Bitmap 종속성은 문제를 악화시킵니다: .NET Core 및 .NET 5+에서 System.Drawing는 Linux에서 libgdiplus를 필요로 하고, Mono 없이는 macOS에서 지원되지 않으며, 이는 자체적으로 복잡성을 추가합니다.

.NET 8에서 ASP.NET Core 애플리케이션을 구축하고 Linux컨테이너에 배포하는 팀은 Patagames와 두 개의 별개 벽에 부딪힙니다: 해당 플랫폼에 네이티브 Tesseract 바이너리가 존재하지 않아도 된다 하더라도, System.Drawing 종속성은 추가 네이티브 패키지를 요구합니다. 해당 애플리케이션은 전혀 실행되지 않습니다. 대체 방안이나 마이그레이션 경로는 라이브러리를 교체하는 것 외에는 없습니다.

이것이 일반적인 최신 .NET 개발 환경에 어떤 의미를 갖는지 생각해 보세요. 개발은 윈도우 또는 macOS에서 이루어집니다. CI는 Linux에서 실행됩니다. 프로덕션 환경은 Kubernetes의 Docker컨테이너입니다. 파타가메스는 해당 파이프라인의 두 번째 단계에서 실패합니다.

// Patagames: Windowsruntime only
// This code path does not execute on Linuxor macOS
using var api = OcrApi.Create();
api.Init(@"./tessdata", "eng"); // WindowsDLL load — fails silently or throws on Linux

using var bitmap = new Bitmap(imagePath); // System.Drawing — requires libgdiplus on Linux
return api.GetTextFromImage(bitmap);
// Patagames: Windowsruntime only
// This code path does not execute on Linuxor macOS
using var api = OcrApi.Create();
api.Init(@"./tessdata", "eng"); // WindowsDLL load — fails silently or throws on Linux

using var bitmap = new Bitmap(imagePath); // System.Drawing — requires libgdiplus on Linux
return api.GetTextFromImage(bitmap);
Imports Patagames.Ocr

Using api = OcrApi.Create()
    api.Init("./tessdata", "eng") ' WindowsDLL load — fails silently or throws on Linux

    Using bitmap As New Bitmap(imagePath) ' System.Drawing — requires libgdiplus on Linux
        Return api.GetTextFromImage(bitmap)
    End Using
End Using
$vbLabelText   $csharpLabel

tessdata 경로는 별도의 배포 문제를 야기합니다. 컨테이너 환경에서는 tessdata 디렉토리를 이미지에 명시적으로 복사해야 합니다. 경로가 잘못되었다면, Init 호출은 런타임에 실패합니다. 빌드 파이프라인에서는 이를 잡아내지 않습니다; 생산 과정에서 문제가 발생합니다.

IronOCR 접근법

IronOCR NuGet 종속성 그래프의 일부로 플랫폼별 런타임 패키지를 게시합니다. 프로젝트에 IronOcr를 추가하면 Windowsx64, Windowsx86, Linuxx64, 또는 macOS에 적합한 네이티브 바이너리가 자동으로 해결됩니다. 어떤 RuntimeIdentifier 조정도 없으며, 수동 바이너리 복사도 없습니다.

// IronOCR: same code on Windows, Linux, macOS, Docker
using IronOcr;

var text = new IronTesseract().Read("document.jpg").Text;
// IronOCR: same code on Windows, Linux, macOS, Docker
using IronOcr;

var text = new IronTesseract().Read("document.jpg").Text;
Imports IronOcr

Dim text As String = New IronTesseract().Read("document.jpg").Text
$vbLabelText   $csharpLabel

Linux Docker배포는 문서화되어 있으며 별도의 설정 없이 바로 사용할 수 있습니다. 자세한 Dockerfile 구성은 IronOCR Docker배포 가이드를 참조하십시오. Linux 배포 가이드는 Debian과 Alpine 모두를 다룹니다. 애플리케이션 어디에도 플랫폼별 코드 분기가 필요하지 않습니다.

언어 데이터는 NuGet 통해 제공됩니다. dotnet add package IronOcr.Languages.French는 프랑스 tessdata를 추가합니다. 해당 패키지는 빌드 시점에 해결되어 출력 위치로 자동으로 복사되며, 별도의 경로 설정 없이 모든 배포 환경에서 사용할 수 있습니다. IronOCR 여러 언어를 처리하는 완벽한 언어 관리 워크플로우를 확인해 보세요.

무료 엔진에 대한 상업적 가격

두 번째 주요 관점은 경제적인 측면입니다. Patagames는 무료로 제공되는 오픈 소스 엔진을 기반으로 하는 소프트웨어에 대해 상업적인 요금을 부과하며, 그 위에 독점적인 인식 기능을 추가하지 않습니다.

파타가메스가 무료 포장지보다 추가로 제공하는 것

Patagames는 무료 Tesseract 래퍼에 비해 상업적 지원, 간소화된 API, 사전 구축된 네이티브 바이너리, 관리형 tessdata 처리 등 네 가지 이점을 제공한다고 홍보합니다. 각각은 검토할 가치가 있다.

상업적 지원은 실제로 존재하지만 가격 책정이 어렵습니다. 여러분은 Patagames가 관리하지 않는 타사 오픈 소스 엔진인 Tesseract에서 발생하는 문제에 대한 지원 계약 비용을 지불하는 것입니다. Tesseract가 특정 이미지 유형에서 잘못된 출력을 생성하는 경우, Patagames 지원팀은 엔진을 개선할 수 없습니다.

간소화된 API는 그다지 유용하지 않습니다. OcrApi.Create() 뒤에 api.Init(path, "eng")를 사용하는 것이 charlesw/tesseract의 기본 Tesseract 상호 운용 레이어보다 약간 더 깔끔하지만, 둘 다 여전히 동일한 수동 tessdata 관리와 사전 처리 없음이 필요합니다.

미리 빌드된 네이티브 바이너리를 사용하면 Windows에서 Tesseract를 소스 코드로부터 컴파일하는 데 필요한 한두 시간을 절약할 수 있습니다. 이는 2015년에는 의미가 있었으나 오늘날에는 무료 tesseractocr NuGet 패키지(Tesseract on NuGet.org)도 무료로 미리 컴파일된 네이티브 바이너리를 제공합니다.

관리형 테스데이터 처리 는 실제 API에 의해 가장 약화된 주장입니다. api.Init(TessDataPath, "eng") 호출은 여전히 경로 문자열을 취합니다. 해당 디렉토리에는 여전히 내용을 채워 넣어야 합니다. 관리 방식은 설정 파일을 통해 폴더를 지정하는 것보다 약간 더 깔끔할 뿐입니다.

결과적으로 Patagames는 무료 대안에서도 제공하는 편의 기능을 상업적 가격으로 제공하며, Tesseract의 근본적인 전처리 및 PDF 관련 문제점을 해결하지 못하고, 무료 대안에서 제공하는 크로스 플랫폼 지원 기능을 제거했습니다.

IronOCR의 상업적 타당성

상용 OCR 라이브러리가 라이선스 비용만큼의 가치를 하는지 평가할 때, 핵심 질문은 해당 라이브러리가 무료 대안으로는 해결할 수 없는 어떤 문제를 해결하는가입니다. IronOCR의 가격은 영구 Lite 라이선스 $999에서 시작합니다. 그 가격으로 얻을 수 있는 기능은 무료든 유료든 테서랙트 래퍼에서는 찾아볼 수 없는 것들입니다.

// PDF OCR: Patagames has no PDF support at all
// Free wrappers have no PDF support at all
// IronOCR: one line
using IronOcr;

var text = new IronTesseract().Read("scanned-invoice.pdf").Text;
// PDF OCR: Patagames has no PDF support at all
// Free wrappers have no PDF support at all
// IronOCR: one line
using IronOcr;

var text = new IronTesseract().Read("scanned-invoice.pdf").Text;
Imports IronOcr

' PDF OCR: Patagames has no PDF support at all
' Free wrappers have no PDF support at all
' IronOCR: one line
Dim text As String = New IronTesseract().Read("scanned-invoice.pdf").Text
$vbLabelText   $csharpLabel

PDF OCR 워크플로우에서는, Patagames는 외부 PDF 렌더러(PdfiumViewer, iText 또는 유사한 것), 각 페이지를 Bitmap로 렌더링하는 루프, 각 비트맵을 GetTextFromImage에 전달하고, 결과를 연결하는 과정을 필요로 합니다. 이는 30~50줄의 추가 코드, 추가 NuGet 종속성, 그리고 또 다른 오류 발생 지점을 의미합니다.IronOCR한 번의 호출로 이를 처리합니다.

// 검색 가능한 PDF output: not available in Patagames, not available in free wrappers
// IronOCR: two lines
var result = new IronTesseract().Read("scanned-document.pdf");
result.SaveAsSearchablePdf("searchable-output.pdf");
// 검색 가능한 PDF output: not available in Patagames, not available in free wrappers
// IronOCR: two lines
var result = new IronTesseract().Read("scanned-document.pdf");
result.SaveAsSearchablePdf("searchable-output.pdf");
' 검색 가능한 PDF output: not available in Patagames, not available in free wrappers
' IronOCR: two lines
Dim result = New IronTesseract().Read("scanned-document.pdf")
result.SaveAsSearchablePdf("searchable-output.pdf")
$vbLabelText   $csharpLabel

검색 가능한 PDF 출력 기능(원본 문서에서 Ctrl+F로 검색할 수 있도록 텍스트 레이어가 보이지 않는 PDF를 생성하는 기능)을 사용하려면IronOCR또는 외부 도구를 사용하는 복잡한 hOCR-to-PDF 파이프라인이 필요합니다. Tesseract 래퍼 중에는 무료든 상용이든 단일 메서드 호출로 이 기능을 제공하는 것은 없습니다.

전처리 과정도 마찬가지입니다. 회전되었거나, 노이즈가 많거나, 대비가 낮은 등의 저품질 스캔 이미지는 전처리 없이는 Tesseract 출력 품질이 떨어집니다. Patagames는 사전 처리 과정을 거치지 않습니다. System.Drawing이나 ImageSharp 또는 이와 유사한 라이브러리를 사용하여 전처리 코드를 직접 작성해야 합니다.

// IronOCR: built-in preprocessing pipeline for poor quality images
using IronOcr;

using var input = new OcrInput();
input.LoadImage("rotated-noisy-scan.jpg");
input.Deskew();          // correct rotation
input.DeNoise();         // remove scan noise
input.Contrast();        // improve contrast
input.Binarize();        // convert to black/white optimal for OCR
input.EnhanceResolution(300); // normalize DPI

var result = new IronTesseract().Read(input);
Console.WriteLine($"Confidence: {result.Confidence}%");
// IronOCR: built-in preprocessing pipeline for poor quality images
using IronOcr;

using var input = new OcrInput();
input.LoadImage("rotated-noisy-scan.jpg");
input.Deskew();          // correct rotation
input.DeNoise();         // remove scan noise
input.Contrast();        // improve contrast
input.Binarize();        // convert to black/white optimal for OCR
input.EnhanceResolution(300); // normalize DPI

var result = new IronTesseract().Read(input);
Console.WriteLine($"Confidence: {result.Confidence}%");
Imports IronOcr

Dim input As New OcrInput()
Using input
    input.LoadImage("rotated-noisy-scan.jpg")
    input.Deskew()          ' correct rotation
    input.DeNoise()         ' remove scan noise
    input.Contrast()        ' improve contrast
    input.Binarize()        ' convert to black/white optimal for OCR
    input.EnhanceResolution(300) ' normalize DPI

    Dim result = New IronTesseract().Read(input)
    Console.WriteLine($"Confidence: {result.Confidence}%")
End Using
$vbLabelText   $csharpLabel

이미지 품질 보정 가이드는 사용 가능한 모든 필터와 각 필터를 적용해야 하는 시점을 자세히 설명합니다. 색상별 전처리를 위해 이미지 색상 보정 가이드에서 추가 옵션을 제공합니다. 구매한 라이선스 등급과 관계없이 Patagames에서는 이러한 기능을 전혀 이용할 수 없습니다.

무료 테서랙트 포장지보다 가성비가 좋습니다.

여기서 구체적인 비교 대상은 상용 제품인 Patagames와 무료 NuGet 래퍼인 tesseractocr입니다. 둘 다 Tesseract를 래핑하고, tessdata가 필요하며, 전처리 기능이 없고, PDF를 지원하지 않습니다. 문제는 파타가메스가 무료 대안에 비해 유료로 제공하는 것이 정당화될 만한 어떤 장점이 있느냐는 것입니다.

Patagames의 언어 구성 접근법

Patagames는 다국어 OCR을 위해 경로 문자열과 언어 연결 문자열을 사용합니다.

// Patagames multi-language: manual tessdata, string concatenation
using Patagames.Ocr;

using var api = OcrApi.Create();
api.Init(@"./tessdata", "eng+fra+deu"); // tessdata folder must contain eng.traineddata, fra.traineddata, deu.traineddata

using var bitmap = new Bitmap(imagePath);
return api.GetTextFromImage(bitmap);
// Patagames multi-language: manual tessdata, string concatenation
using Patagames.Ocr;

using var api = OcrApi.Create();
api.Init(@"./tessdata", "eng+fra+deu"); // tessdata folder must contain eng.traineddata, fra.traineddata, deu.traineddata

using var bitmap = new Bitmap(imagePath);
return api.GetTextFromImage(bitmap);
Imports Patagames.Ocr

Using api = OcrApi.Create()
    api.Init("./tessdata", "eng+fra+deu") ' tessdata folder must contain eng.traineddata, fra.traineddata, deu.traineddata

    Using bitmap As New Bitmap(imagePath)
        Return api.GetTextFromImage(bitmap)
    End Using
End Using
$vbLabelText   $csharpLabel

이는 무료 charlesw/tesseract 래퍼의 다국어 구문과 기능적으로 동일합니다. 여전히 테스데이터 파일을 수동으로 다운로드하고, 올바른 디렉터리에 복사한 다음, 코드 문자열로 참조해야 합니다. 상업용 라이선스는 해당 워크플로에 대한 자동화 기능을 제공하지 않습니다.

IronOCR의 언어 구성 접근 방식

IronOCR 언어 데이터를 강력한 형식의 API를 갖춘 NuGet 패키지로 관리합니다.

//IronOCR multi-language: NuGet packages, strongly typed
// dotnet add package IronOcr.Languages.French
// dotnet add package IronOcr.Languages.German
using IronOcr;

var ocr = new IronTesseract();
ocr.Language = OcrLanguage.English;
ocr.AddSecondaryLanguage(OcrLanguage.French);
ocr.AddSecondaryLanguage(OcrLanguage.German);

var result = ocr.Read(imagePath);
//IronOCR multi-language: NuGet packages, strongly typed
// dotnet add package IronOcr.Languages.French
// dotnet add package IronOcr.Languages.German
using IronOcr;

var ocr = new IronTesseract();
ocr.Language = OcrLanguage.English;
ocr.AddSecondaryLanguage(OcrLanguage.French);
ocr.AddSecondaryLanguage(OcrLanguage.German);

var result = ocr.Read(imagePath);
Imports IronOcr

Dim ocr As New IronTesseract()
ocr.Language = OcrLanguage.English
ocr.AddSecondaryLanguage(OcrLanguage.French)
ocr.AddSecondaryLanguage(OcrLanguage.German)

Dim result = ocr.Read(imagePath)
$vbLabelText   $csharpLabel

NuGet 통한 언어 관리는 CI 파이프라인이 다른 종속성을 해결하는 방식과 동일하게 언어 데이터를 해결한다는 것을 의미합니다. Docker이미지에 복사해야 할 tessdata 디렉터리가 없으며, 배포 체크리스트에 "tessdata가 있는지 확인"하는 항목도 없고, 언어 코드 문자열을 직접 입력할 때 발생하는 오타 위험도 없습니다. 125개 이상의 언어 팩은 모두 동일한 방식으로 설치됩니다.

Patagames와 무료 래퍼 간의 차이는 크지 않습니다. 상용 가격은 주로 Windows바이너리의 편의성을 제공하기 위한 것입니다. Patagames와IronOCR의 격차는 큽니다. 상용 버전에는 네이티브 PDF 지원, 자동 전처리, 검색 가능한 PDF 출력, 크로스 플랫폼 배포 및 구조화된 결과 데이터가 포함됩니다.

API 매핑 참조

Patagames Tesseract .NET SDK IronOCR에 상응하는
Tesseract.Net.SDK (NuGet) IronOcr (NuGet)
Patagames.Ocr (네임스페이스) IronOcr (네임스페이스)
OcrApi.Create() new IronTesseract()
api.Init(tessDataPath, "eng") ocr.Language = OcrLanguage.English (경로 필요 없음)
api.Init(path, "eng+fra") ocr.AddSecondaryLanguage(OcrLanguage.French)
api.GetTextFromImage(bitmap) ocr.Read(imagePath).Text
api.SetVariable("tessedit_pageseg_mode", ...) ocr.Configuration.PageSegmentationMode = ...
OcrBitmap.FromFile(path) input.LoadImage(path)
PDF를 지원하지 않습니다. ocr.Read("document.pdf").Text
검색 가능한 PDF 없음 result.SaveAsSearchablePdf("output.pdf")
전처리 없음 input.Deskew(), input.DeNoise(), input.Contrast() 등.
지역 OCR 없음 input.LoadImage(path, new CropRectangle(...))
바코드 인식 불가 ocr.Configuration.ReadBarCodes = true
구조화된 출력 없음 result.Words, result.Lines, result.Pages
PageSegmentationMode enum TesseractPageSegmentationMode enum

IronOCR API의 전체 기능을 보려면 IronTesseract API 참조OcrResult API 참조를 확인하세요.

팀이 Patagames Tesseract .NET SDK에서IronOCR로 전환을 고려할 때

리눅스 컨테이너 배포

가장 흔한 강제 요인은 WindowsServer에서 Linux컨테이너로의 마이그레이션입니다. Windows환경에서 Patagames를 사용하여 OCR 기능을 갖춘 내부 문서 처리 도구를 개발한 팀이 클라우드 마이그레이션 프로젝트를 진행하던 중 해당 라이브러리가 Amazon ECS 또는 Azure Container Instances의 Docker컨테이너에서 실행되지 않는다는 사실을 발견했습니다. Windows전용 네이티브 바이너리는 Linux에 상응하는 버전이 없습니다. 마이그레이션 옵션은 OCR 전용으로 별도의 Windows컴퓨팅 인스턴스를 유지하거나(비용이 많이 들고 아키텍처적으로 불편함) OCR 라이브러리를 교체하는 두 가지입니다.IronOCR은 API 관점에서 기존 Patagames를 완벽하게 대체할 수 있습니다. 여러 단계를 거치던 Patagames 초기화 과정이 단일 읽기 호출로 간소화되며, 다른 변경 사항 없이 Linux에서도 실행됩니다. IronOCR Docker가이드에서는 프로덕션 컨테이너 배포를 위한 정확한 Dockerfile 구성 방법을 다룹니다.

PDF 처리 요구 사항

문서 관리 애플리케이션은 대개 이미지 OCR 기능으로 시작하여 제품이 발전함에 따라 PDF 처리 요구 사항을 추가합니다. Patagames에서 PDF를 지원하려면 외부 PDF 렌더링 라이브러리를 통합하고, 렌더링 루프를 작성하고, 페이지별 이미지 버퍼를 관리해야 합니다. 이 래퍼 코드를 구축한 팀들은 해당 코드가 불안정하다는 것을 발견했습니다. PDF 렌더링 품질이 일정하지 않고, 페이지 회전 처리를 위해서는 추가적인 로직이 필요하며, 암호로 보호된 PDF 지원을 추가하려면 또 다른 외부 종속성이 필요합니다.IronOCR이 모든 것을 자체적으로 처리합니다. PDF 입력 가이드는 단일 페이지, 여러 페이지 및 암호로 보호된 PDF에 대한 내용을 다룹니다. 이번 전환으로 외부 PDF 렌더러에 대한 의존성과 이를 Patagames와 연결하기 위해 작성된 모든 코드가 제거됩니다.

가격 투명성 문제

파타가메스는 라이선스 가격을 공개하지 않습니다. 새 프로젝트를 위해 OCR 라이브러리를 평가하는 팀은 영업 프로세스를 거치지 않고는 Patagames에 대한 예산을 책정할 수 없습니다. IronOCR의 가격은 거래당 비용이 없는 단일 개발자 영구 Lite 라이선스에서 $999에서 시작합니다. 작은 팀은 영업 전화를 하지 않고도 구매 vs 빌드 결정을 판단할 수 있습니다. 이전에 상업화가 무료보다 낫다는 가정 하에 Patagames를 선택한 팀에게 있어, 공개 가격으로 시작하는 IronOCR이 $999 영구로 시작한다는 사실은 종종 평가를 완전히 재구성합니다 — 반면 Patagames는 공개되지 않은 상업적 가격입니다. 자세한 등급 정보는 IronOCR 라이선스 페이지를 참조하십시오.

스캔 품질 문제

송장 처리, 양식 OCR, 스캔 문서 보관 등은 모두 전처리가 필요한 이미지를 생성합니다. 이러한 워크플로를 위한 Patagames 기반 파이프라인은 System.Drawing 또는 타사 이미지 라이브러리에 전처리 코드를 작성하고, 임계값을 수동으로 조정하고, 입력 품질이 변함에 따라 해당 코드를 유지 관리해야 합니다. 이러한 인프라를 구축해 본 팀들은 제대로 구축하는 데 20~40시간이 걸린다는 것을 알고 있습니다. IronOCR에 내장된 전처리 기능은 그러한 투자를 없애줍니다. 기울기 보정, 노이즈 제거, 대비 조정 및 이진화는 단일 메서드 호출로 처리되며 실제 스캔에서 OCR 정확도 문제를 일으키는 대부분의 경우를 해결합니다. 저품질 스캔 예시는 전처리 과정이 손상된 이미지의 정확도에 얼마나 큰 차이를 가져오는지 보여줍니다.

검색 가능한 PDF 아카이브 요구 사항

규정 준수, 법률 및 기록 관리 애플리케이션에는 검색 가능한 PDF 출력이 필요합니다. 스캔한 문서에는 텍스트 레이어가 있어야 사용자가 Acrobat이나 다른 PDF 뷰어에서 내용을 검색, 복사 및 강조 표시할 수 있습니다. Patagames에는 검색 가능한 PDF를 생성하는 기능이 없습니다. 무료 Tesseract 래퍼는 타사 도구를 사용하여 텍스트 레이어로 변환할 수 있는 hOCR 출력을 생성하지만, 해당 파이프라인에는 여러 구성 요소가 있습니다.IronOCR외부 도구나 중간 hOCR 변환 단계 없이 단일 메서드 호출로 전체 파이프라인을 처리합니다. 아카이빙 시스템을 구축하는 팀은 이러한 기능 격차를 일찍 발견하게 되는데, 이는 Patagames에 임시방편으로 추가할 수 있는 기능이 아니라 라이브러리를 교체해야 하는 경우가 대부분입니다.

일반적인 마이그레이션 고려사항

tessdata 디렉터리를 NuGet 패키지로 교체

Patagames는 각 언어에 대해 .traineddata 파일로 채워진 tessdata 디렉토리가 필요합니다.IronOCR마이그레이션을 통해 이 문제가 완전히 해결됩니다. 언어 데이터는 NuGet 패키지로 설치됩니다.

dotnet add package IronOcr.Languages.English, IronOcr.Languages.French

그 언어는 강력한 형식의 OcrLanguage enum을 통해 참조됩니다. 경로 구성도 필요 없고, 배포 체크리스트도 필요 없으며, tessdata 누락으로 인한 프로덕션 문제도 발생하지 않습니다.

OcrApi 초기화 패턴 마이그레이션

Patagames OcrApi.Create() / api.Init() 패턴에는 직접적인IronOCR대응물이 있습니다. 이 과정은 기계적으로 진행됩니다.

// Patagames: before
using var api = OcrApi.Create();
api.Init(@"./tessdata", "eng");
using var bitmap = new Bitmap(imagePath);
var text = api.GetTextFromImage(bitmap);

// IronOCR: after
var text = new IronTesseract().Read(imagePath).Text;
// Patagames: before
using var api = OcrApi.Create();
api.Init(@"./tessdata", "eng");
using var bitmap = new Bitmap(imagePath);
var text = api.GetTextFromImage(bitmap);

// IronOCR: after
var text = new IronTesseract().Read(imagePath).Text;
Imports Patagames.Ocr
Imports System.Drawing

' Patagames: before
Using api = OcrApi.Create()
    api.Init("./tessdata", "eng")
    Using bitmap As New Bitmap(imagePath)
        Dim text = api.GetTextFromImage(bitmap)
    End Using
End Using

' IronOCR: after
Dim text = New IronTesseract().Read(imagePath).Text
$vbLabelText   $csharpLabel

다중 언어 구성을 위해, "eng+fra+deu"는 개별 AddSecondaryLanguage 호출로 변합니다. Patagames SetVariable("tessedit_pageseg_mode", ...) 원시 문자열 호출은 ocr.Configuration.PageSegmentationMode로 매핑되고, 이는 강력한 형식으로 IntelliSense를 통해 발견할 수 있습니다.

시스템.도면 종속성 제거

Patagames는 System.Drawing.Bitmap에 의존합니다. IronOCR는 파일 경로, 바이트 배열, 스트림, URL, 및 System.Drawing.Bitmap 객체를 수용하지만, 일반적인 사용법은 System.Drawing을 전혀 필요로 하지 않습니다. Patagames에서 IronOCR로 이전하는 팀은 전적으로 OCR API에 전달할 Bitmap 객체를 구성하기 위해 존재했던 클래스에서 System.Drawing 종속성을 제거할 수 있습니다. 이 업데이트는 Windows이외의 플랫폼에서 발생하는 null 허용 여부 경고를 제거하고, Microsoft에서 Windows이외의 대상 플랫폼에 대한 새로운 개발을 권장하지 않는다고 공식적으로 표시한 종속성을 제거합니다. 이미지 입력 ​​가이드에는 지원되는 모든 입력 유형이 나열되어 있습니다.

기존 워크플로우에 전처리 추가하기

기존 Patagames 구현에 System.Drawing 또는 ImageSharp로 작성된 전처리 단계가 포함되어 있는 경우IronOCR로 전환할 때 해당 코드를 완전히 제거할 수 있는 경우가 많습니다. 먼저 전처리 없이IronOCR출력을 테스트하세요. 자동 전처리가 충분하지 않은 이미지의 경우, OcrInput을 통해 명시적인 필터를 적용하십시오:

using var input = new OcrInput();
input.LoadImage(imagePath);
input.Deskew();
input.DeNoise();
var result = new IronTesseract().Read(input);
using var input = new OcrInput();
input.LoadImage(imagePath);
input.Deskew();
input.DeNoise();
var result = new IronTesseract().Read(input);
Imports IronOcr

Using input As New OcrInput()
    input.LoadImage(imagePath)
    input.Deskew()
    input.DeNoise()
    Dim result = New IronTesseract().Read(input)
End Using
$vbLabelText   $csharpLabel

이미지 방향 보정 가이드 에서는 기울기 보정 및 회전 감지에 대해 자세히 다룹니다. 대부분의 경우 IronOCR의 자동 전처리 기능은 수동으로 조정한 System.Drawing 전처리 파이프라인보다 더 나은 결과를 생성합니다.

IronOCR의 추가 기능

핵심 비교 항목 외에도IronOCR위 섹션에서 다루지 않은 기능을 제공합니다.

  • 스캔 문서 처리 : TIFF 파일 여러 개와 여러 페이지로 구성된 PDF 파일을 포함한 스캔 문서를 단일 입력으로 자동 처리합니다.
  • 비동기 OCR : ASP.NET Core 워크로드에 대한 네이티브 비동기 지원을 통해 OCR 처리 중 요청 스레드를 자유롭게 유지할 수 있습니다.
  • 속도 최적화 구성 : 일괄 처리 작업 부하에서 문서별 정확도보다 처리량이 더 중요한 경우 속도/정확도 간의 균형을 명시적으로 제어할 수 있습니다.
  • 특수 문서 유형 : 여권, 차량 번호판, MICR 수표 라인, 필기 및 표 추출과 같은 특수 문서 유형에 대한 전용 가이드 및 최적화된 구성이 제공됩니다. 이 모든 것은 Patagames의 서비스 범위에 포함되지 않습니다.
  • 신뢰도 기반 필터링 : 단어별 및 페이지별 신뢰도 점수를 통해 프로그램 방식으로 품질 검사를 수행할 수 있습니다. 즉, 수동 검토 없이 신뢰도가 낮은 결과를 거부하거나 표시할 수 있습니다.
  • 이미지 색상 보정 : 색상 채널 분리 및 반전 필터는 색상이 있는 배경이나 반전 대비 텍스트가 있는 문서에서 인식 정확도를 향상시킵니다.

.NET 호환성 및 미래 준비

IronOCR .NET 6, .NET 7, .NET 8, .NET 9를 적극적으로 지원하며, 유지 관리 중인 .NET Framework 프로젝트와의 호환성을 위해 .NET Standard 2.0도 지원합니다. 라이브러리는 교차 플랫폼 런타임 식별자(win-x64, win-x86, linux-x64, osx-x64, osx-arm64)를 NuGet 종속성 그래프의 일부로 제공하여 dotnet publish가 모든 타겟 런타임에 대해 추가 구성 없이 독립적인 배포를 생성하도록 보장합니다. Patagames Tesseract .NET SDK는 Linux또는 macOS런타임 식별자를 게시하지 않으므로 .NET 6 이상 버전의 기반이 되는 크로스 플랫폼 배포 모델에 참여할 수 없습니다. .NET Framework 4.x 워크로드가 .NET 8로 마이그레이션되고 팀이 Linux기반 클라우드 인프라를 도입함에 따라 Windows전용 제약 조건은 사소한 제한 사항이 아니라 걸림돌이 되고 있습니다. IronOCR의 개발 주기는 .NET 릴리스 주기를 따르며, 각 새로운 .NET 버전 출시 시 호환성을 문서화합니다.

결론

Patagames Tesseract .NET SDK는 어려운 시장 위치에 놓여 있습니다. 무료로 사용 가능한 오픈 소스 엔진인 Tesseract에 대해 상용 가격을 책정하면서, 무료 래퍼가 보유하고 있는 크로스 플랫폼 기능을 제거했기 때문입니다. 윈도우용 테서랙트 빌드가 실제로 복잡했을 때는 상업적 지원, 사전 빌드된 바이너리, 간소화된 API와 같은 가치 제안이 훨씬 더 매력적이었습니다. 2026년에는 tesseractocr과 같은 무료 래퍼도 사전 빌드된 Windows바이너리를 제공하며, 원시 Tesseract 위에 덧씌워진 "간소화된 API"는 tessdata 경로 관리 및 원시 변수 문자열을 여전히 노출하는 얇은 계층에 불과합니다.

윈도우에서만 작동한다는 제약 조건은 Patagames를 재고해야 할 가장 분명한 이유입니다. 최신 .NET 개발 워크플로는 Linux에서 CI를 실행하고, Linux컨테이너에 배포하며, 개발자용 컴퓨터로 macOS를 대상으로 하는 경우가 점점 늘어나고 있습니다. Windows에서만 로드되는 라이브러리는 사소한 불편함이 아니라, OCR 구성 요소를 Windows전용 서비스에서 호스팅해야 하는 아키텍처적 제약 조건이며, 배포 복잡성을 증가시키고 향후 유연성을 제한합니다. Patagames는 해당 경계를 넘어야 하는 팀을 위한 마이그레이션 경로를 제공하지 않습니다.

IronOCR의 상업적 타당성은 구체적이고 측정 가능합니다. 이 소프트웨어는 네이티브 PDF 지원, 자동 전처리, 검색 가능한 PDF 출력, 크로스 플랫폼 배포 및 구조화된 결과 데이터를 제공합니다. 이러한 기능은 라이선스 등급과 관계없이 Patagames에는 존재하지 않습니다. 가격은 공개적이며($999 단일 개발자에 대해 영구) 무료 Tesseract 래퍼 이상의 능력은 문서화되고 구체적이며, 배포 이야기는 타겟이 WindowsServer, Linux에서 Docker, 또는 ARM Mac 인지와 상관없이 동일합니다.

현재 Windows전용 환경에서 Patagames를 사용하고 있고 지원 관계에 만족하는 팀이라면 전환에 비용이 발생할 수 있습니다. 하지만 오늘날 옵션을 검토하는 모든 팀, 특히 클라우드 마이그레이션, 컨테이너화 또는 크로스 플랫폼 지원을 계획하는 팀에게는 Windows종속성과 무료 엔진 래핑에 대한 불투명한 상용 가격 책정 방식 때문에 Patagames를 선택하는 것이 쉽지 않습니다.IronOCR Tesseract 래퍼가 본질적으로 해결할 수 없는 문제를 해결하기 때문입니다.

참고해 주세요PDFium, Tesseract 및 iText는 각 소유자의 등록 상표입니다. 이 사이트는 Chromium Project, Google, 또는 iText Group과 관련이 없으며, 승인되지 않았으며, 후원도 받지 않습니다. 모든 제품 이름, 로고 및 브랜드는 각 소유자의 재산입니다. 비교는 정보 제공 목적으로만 사용되며, 작성 시점에 공개적으로 이용 가능한 정보를 반영합니다.

자주 묻는 질문

Patagames 테서랙트닷넷 SDK란 무엇인가요?

Patagames Tesseract.Net SDK는 개발자와 기업이 이미지와 문서에서 텍스트를 추출하는 데 사용하는 OCR 솔루션입니다. 이 솔루션은 .NET 애플리케이션 개발을 위해 IronOCR과 함께 평가된 여러 OCR 옵션 중 하나입니다.

IronOCR은 .NET 개발자를 위한 Patagames Tesseract.Net SDK와 어떻게 다른가요?

IronOCR은 IronTesseract를 핵심 엔진으로 사용하는 NuGet 네이티브 .NET OCR 라이브러리입니다. 파타게임즈 테서랙트닷넷 SDK에 비해 배포가 간편하고(SDK 설치 프로그램 없음), 정액제 요금제를 제공하며, COM 인터롭이나 클라우드 종속성이 없는 깔끔한 C# API를 제공합니다.

IronOCR이 Patagames Tesseract.Net SDK보다 설치가 더 쉬운가요?

IronOCR은 단일 NuGet 패키지를 통해 설치됩니다. SDK 설치 프로그램, 복사할 라이선스 파일, 등록할 COM 구성 요소 또는 관리해야 할 별도의 런타임 바이너리가 없습니다. 전체 OCR 엔진이 패키지에 번들로 제공됩니다.

Patagames Tesseract.Net SDK와 IronOCR에는 어떤 정확도 차이가 있나요?

IronOCR은 표준 비즈니스 문서, 송장, 영수증, 스캔 양식에 대해 높은 인식 정확도를 달성합니다. 품질이 많이 저하된 문서나 일반적이지 않은 스크립트의 경우 정확도는 소스 품질에 따라 달라집니다. IronOCR에는 이미지 전처리 필터가 포함되어 있어 저품질 입력에 대한 인식률을 향상시킵니다.

IronOCR은 PDF 텍스트 추출을 지원하나요?

예. IronOCR은 한 번의 호출로 원본 PDF와 스캔한 PDF 이미지 모두에서 텍스트를 추출합니다. 또한 여러 페이지의 TIFF 파일, 이미지, 스트림도 지원합니다. 스캔한 PDF의 경우 OCR은 페이지별 결과 개체를 사용하여 페이지별로 적용됩니다.

Patagames Tesseract.Net SDK 라이선싱은 IronOCR과 어떻게 다른가요?

IronOCR은 페이지당 또는 스캔당 요금이 없는 정액제 영구 라이선스를 사용합니다. 대량의 문서를 처리하는 조직은 문서 양에 관계없이 동일한 라이선스 비용을 지불합니다. 자세한 내용과 볼륨 가격은 IronOCR 라이선스 페이지에서 확인할 수 있습니다.

IronOCR 어떤 언어를 지원하나요?

IronOCR은 별도의 NuGet 언어 팩을 통해 127개 언어를 지원합니다. 언어를 추가하려면 '닷넷 추가 패키지 IronOcr.Languages.{Language}' 명령 하나만 있으면 됩니다. 수동으로 파일을 배치하거나 경로를 구성할 필요가 없습니다.

.NET 프로젝트에 IronOCR 설치하는 방법은 무엇인가요?

NuGet을 통해 설치합니다: 패키지 관리자 콘솔에서 '설치-패키지 IronOcr' 또는 CLI에서 '닷넷 추가 패키지 IronOcr'을 실행합니다. 추가 언어 팩도 같은 방법으로 설치됩니다. 기본 SDK 인스톨러가 필요하지 않습니다.

IronOCR은 Patagames Tesseract와 달리 Docker 및 컨테이너화된 배포에 적합한가요?

예. IronOCR은 NuGet 패키지를 통해 Docker 컨테이너에서 작동합니다. 라이선스 키는 환경 변수를 통해 설정됩니다. OCR 엔진 자체에는 라이선스 파일, SDK 경로 또는 볼륨 마운트가 필요하지 않습니다.

구매하기 전에 Patagames Tesseract와 비교하여 IronOCR을 사용해 볼 수 있나요?

예. IronOCR 평가판 모드는 문서를 처리하고 출력물에 워터마크 오버레이가 포함된 OCR 결과를 반환합니다. 라이선스를 구매하기 전에 자신의 문서에서 정확성을 확인할 수 있습니다.

IronOCR은 텍스트 추출과 함께 바코드 판독을 지원하나요?

IronOCR은 텍스트 추출과 OCR에 중점을 둡니다. 바코드 판독을 위해 Iron Software는 동반 라이브러리로 IronBarcode를 제공합니다. 두 가지 모두 개별적으로 또는 Iron Suite 번들의 일부로 사용할 수 있습니다.

Patagames Tesseract.Net SDK에서 IronOCR로 쉽게 마이그레이션할 수 있나요?

Patagames Tesseract.Net SDK에서 IronOCR로 마이그레이션하려면 일반적으로 초기화 시퀀스를 IronTesseract 인스턴스화로 대체하고, COM 수명 주기 관리를 제거하며, API 호출을 업데이트해야 합니다. 대부분의 마이그레이션은 코드 복잡성을 크게 줄여줍니다.

칸나오팟 우돈판트
소프트웨어 엔지니어
카나팟은 소프트웨어 엔지니어가 되기 전 일본 홋카이도 대학교에서 환경 자원학 박사 학위를 취득했습니다. 학위 과정 중에는 생물생산공학과 소속 차량 로봇 연구실에서 활동하기도 했습니다. 2022년에는 C# 기술을 활용하여 Iron Software의 엔지니어링 팀에 합류했고, 현재 IronPDF 개발에 집중하고 있습니다. 카나팟은 IronPDF에 사용되는 대부분의 코드를 직접 작성하는 개발자로부터 배울 수 있다는 점에 만족하며, 동료들과의 소통을 통해 배우는 것 외에도 Iron Software에서 일하는 즐거움을 누리고 있습니다. 코딩이나 문서 작업을 하지 않을 때는 주로 PS5로 게임을 하거나 The Last of Us를 다시 시청하는 것을 즐깁니다.

아이언 서포트 팀

저희는 주 5일, 24시간 온라인으로 운영합니다.
채팅
이메일
전화해