IRONOCR 사용 Blazor 에서 이미지에서 텍스트를 읽는 방법 칸나팟 우돈판트 업데이트됨:9월 1, 2025 다운로드 IronOCR NuGet 다운로드 DLL 다운로드 윈도우 설치 프로그램 무료 체험 시작하기 LLM용 사본 LLM용 사본 LLM용 마크다운 형식으로 페이지를 복사하세요 ChatGPT에서 열기 ChatGPT에 이 페이지에 대해 문의하세요 제미니에서 열기 제미니에게 이 페이지에 대해 문의하세요 Grok에서 열기 Grok에게 이 페이지에 대해 문의하세요 혼란 속에서 열기 Perplexity에게 이 페이지에 대해 문의하세요 공유하다 페이스북에 공유하기 트위터에 공유하기 LinkedIn에 공유하기 URL 복사 이메일로 기사 보내기 Blazor 프레임워크는 HTML과 C#을 사용하여 대화형 UI 웹 애플리케이션을 개발하는 데 사용되는 ASP.NET 팀에 의해 구축되었습니다. Blazor는 WebAssembly를 사용하여 웹 브라우저에서 직접 C# 코드를 실행합니다. 이로 인해 구성요소를 논리적으로 개발하고 이를 재사용하기 쉽게 만듭니다. C#에서 UI를 빌드하는 개발자들 사이에서 인기가 높은 프레임워크입니다. 이 기사에서는 IronOCR을 사용하여 광학 문자 인식 (OCR)을 통해 이미지 파일에서 텍스트를 읽기 위한 Blazor 서버 앱을 만들 것입니다. Blazor에서 광학 문자 인식을 사용하여 이미지에서 텍스트를 읽는 방법 필수 조건 최신 버전의 Visual Studio가 있어야 합니다. 여기서 링크를 통해 다운로드할 수 있습니다. ASP.NET 및 웹 개발 작업 부하. Visual Studio 설치 시 해당 프로젝트에 필요한 ASP.NET 및 웹 개발 작업 부하를 선택하여 설치하십시오. IronOCR C# 라이브러리. 우리는 이미지 데이터를 기계가 읽을 수 있는 텍스트로 변환하기 위해 IronOCR을 사용할 것입니다. Iron 웹사이트에서 IronOCR 패키지 .DLL 파일을 직접 다운로드하거나 NuGet 웹사이트에서 다운로드할 수 있습니다. Visual Studio의 NuGet 패키지 관리자에서 IronOCR을 다운로드하고 설치하는 것이 더 편리한 방법입니다. Blazor 서버 앱 생성 Visual Studio를 열고 Blazor 서버 앱을 생성하기 위한 단계를 따르십시오: 새 프로젝트 만들기를 클릭한 다음 나열된 프로젝트 템플릿에서 "Blazor 서버 앱"을 선택합니다. Visual Studio에서 새 Blazor 서버 앱 생성 다음으로 프로젝트에 적절한 이름을 지정합니다. 여기서는 BlazorReadText로 이름을 지정합니다. Blazor 프로젝트 구성 마지막으로 추가 정보를 설정하고 생성 버튼을 클릭하십시오. 프로젝트에 대해 장기 지원 .NET Framework 및 추가 정보 선택 Blazor 서버 앱이 이제 생성되었습니다. 이제 IronOCR을 사용하여 이미지 데이터를 추출하기 전에 필요한 패키지를 설치해야 합니다. 필요한 패키지 추가 BlazorInputFile 첫 번째 단계는 BlazorInputFile 패키지를 설치하는 것입니다. 이것은 Blazor 애플리케이션을 위한 구성요소로 서버에 단일 또는 여러 파일을 업로드하는 데 사용됩니다. 이 구성요소는 Blazor 애플리케이션의 Razor 페이지에서 이미지 파일을 업로드하는 데 사용될 것입니다. 솔루션을 위한 NuGet 패키지 관리를 열고 BlazorInputFile를 찾아보세요.  BlazorInputFile Install-Package 프로젝트의 체크박스를 선택하고 설치 버튼을 클릭하세요. 이제 Pages 폴더 내의 _Host.cshtml 파일을 열고 다음 JavaScript 파일을 추가하십시오: <script src="_content/BlazorInputFile/inputfile.js"></script> <script src="_content/BlazorInputFile/inputfile.js"></script> HTML  솔루션 탐색기에서 _Host.cshtml 파일로 이동 마지막으로 _Imports.razor 파일에 다음 코드를 추가하십시오. @using BlazorInputFile @using BlazorInputFile $vbLabelText $csharpLabel IronOCR IronOCR은 다양한 형식의 이미지를 스캔하고 읽기 위한 C# 라이브러리입니다. 이는 전 세계 125개 이상의 언어로 이미지를 작업할 수 있는 기능을 제공합니다. IronOCR을 설치하려면 NuGet 패키지 관리자를 열고 IronOCR을 찾으십시오. 프로젝트를 선택하고 Install 버튼을 클릭합니다.  NuGet 패키지 매니저에서 IronOcr Install-Package _Imports.razor 파일에 IronOCR 네임스페이스를 추가하십시오: @using IronOCR @using IronOCR $vbLabelText $csharpLabel Blazor UI 구성 요소 생성 구성 요소는 동적 동작을 표시하기 위한 비즈니스 로직이 포함된 사용자 인터페이스를 나타냅니다. Blazor는 Razor 구성 요소를 사용하여 앱을 빌드합니다. 이러한 구성 요소는 중첩될 수 있고, 재사용 가능하며, 프로젝트 간에 공유될 수 있습니다. 기본적으로 Counter 및 FetchData 페이지가 애플리케이션에 제공됩니다; 단순화를 위해 제거합니다. BlazorReadText 애플리케이션 아래의 페이지 폴더를 오른쪽 클릭하고, 추가 > Razor 구성 요소를 선택하십시오. Razor 구성 요소를 찾을 수 없는 경우, 새 항목을 클릭하고 C# 구성 요소에서 "Razor 구성 요소"를 선택합니다. 구성 요소 이름을 "OCR.razor"로 설정하고 추가를 클릭합니다.  새로운 Razor 구성 요소 추가 최고의 방법은 이 razor 페이지의 코드를 다른 클래스처럼 분리하는 것입니다. 다시 pages 폴더를 마우스 오른쪽 버튼으로 클릭하고 추가 > 클래스를 선택합니다. 클래스 이름을 페이지 이름과 동일하게 설정하고 추가를 클릭합니다. Blazor는 스마트한 프레임워크로, 이 클래스를 같은 이름을 공유하는 페이지에 태그합니다.  OCR.razor Razor 구성 요소용 OCR.razor.cs 코드 파일 생성 이제 실제 코드 구현으로 이동하여 IronOCR를 사용하여 이미지 데이터를 읽어보겠습니다. Blazor OCR.razor UI 구성 요소 소스 코드로 이미지 데이터 읽기 이미지의 텍스트를 인식하려면 이미지를 업로드하고, 이진 데이터로 변환한 다음, IronOCR 메소드를 적용하여 텍스트를 추출합니다. OCR.razor.cs 클래스를 열고 다음 예제 소스 코드를 작성하십시오: using BlazorInputFile; using Microsoft.AspNetCore.Components; using IronOcr; using System.IO; using System.Linq; using System.Threading.Tasks; namespace BlazorReadText.Pages { public class OCRModel : ComponentBase { // Holds the extracted text from the image protected string imageText; // Holds the base64 string preview of the image protected string imagePreview; // Byte array to store uploaded image data private byte[] imageFileBytes; // Default status message for file upload const string DefaultStatus = "Maximum size allowed for the image is 4 MB"; protected string status = DefaultStatus; // Maximum file size allowed (4MB) const int MaxFileSize = 4 * 1024 * 1024; // Method to handle image preview and size/type validation protected async Task ViewImage(IFileListEntry[] files) { var file = files.FirstOrDefault(); if (file == null) { return; } if (file.Size > MaxFileSize) { status = $"The file size is {file.Size} bytes, which exceeds the allowed limit of {MaxFileSize} bytes."; return; } if (!file.Type.Contains("image")) { status = "Please upload a valid image file."; return; } using (var memoryStream = new MemoryStream()) { await file.Data.CopyToAsync(memoryStream); imageFileBytes = memoryStream.ToArray(); string base64String = Convert.ToBase64String(imageFileBytes, 0, imageFileBytes.Length); imagePreview = $"data:image/png;base64,{base64String}"; status = DefaultStatus; } } // Method to extract text from the uploaded image using IronOCR protected private async Task GetText() { if (imageFileBytes != null) { using (var ocr = new IronTesseract()) using (var input = new OcrInput(imageFileBytes)) { OcrResult result = ocr.Read(input); imageText = result.Text; } } } } } using BlazorInputFile; using Microsoft.AspNetCore.Components; using IronOcr; using System.IO; using System.Linq; using System.Threading.Tasks; namespace BlazorReadText.Pages { public class OCRModel : ComponentBase { // Holds the extracted text from the image protected string imageText; // Holds the base64 string preview of the image protected string imagePreview; // Byte array to store uploaded image data private byte[] imageFileBytes; // Default status message for file upload const string DefaultStatus = "Maximum size allowed for the image is 4 MB"; protected string status = DefaultStatus; // Maximum file size allowed (4MB) const int MaxFileSize = 4 * 1024 * 1024; // Method to handle image preview and size/type validation protected async Task ViewImage(IFileListEntry[] files) { var file = files.FirstOrDefault(); if (file == null) { return; } if (file.Size > MaxFileSize) { status = $"The file size is {file.Size} bytes, which exceeds the allowed limit of {MaxFileSize} bytes."; return; } if (!file.Type.Contains("image")) { status = "Please upload a valid image file."; return; } using (var memoryStream = new MemoryStream()) { await file.Data.CopyToAsync(memoryStream); imageFileBytes = memoryStream.ToArray(); string base64String = Convert.ToBase64String(imageFileBytes, 0, imageFileBytes.Length); imagePreview = $"data:image/png;base64,{base64String}"; status = DefaultStatus; } } // Method to extract text from the uploaded image using IronOCR protected private async Task GetText() { if (imageFileBytes != null) { using (var ocr = new IronTesseract()) using (var input = new OcrInput(imageFileBytes)) { OcrResult result = ocr.Read(input); imageText = result.Text; } } } } } $vbLabelText $csharpLabel 위 코드에서: 업로드된 이미지 파일을 처리하기 위해 ViewImage 메서드를 사용합니다. 파일이 이미지인지 확인하고 크기가 지정된 제한에 충족하는지 확인합니다. 파일 크기 또는 파일 타입에서 오류가 발생하면 if-else 블록을 사용하여 처리됩니다. 그런 다음 이미지를 MemoryStream로 복사하고 이미지가 이진 형식으로 IronOcr.OcrInput에서 수용할 수 있도록 바이트 배열로 변환합니다. GetText 메서드는 IronOCR을 이용하여 입력된 이미지에서 텍스트를 추출합니다. IronOCR는 Tesseract 5 엔진을 사용하며 125개 이상의 언어를 지원합니다. 추출된 텍스트는 표시를 위해 imageText 변수에 저장됩니다. 라이브러리는 추가 설정 없이 영어 텍스트 이미지를 지원합니다. 다른 언어 사용에 대해 자세히 알아보려면 코드 예제 페이지를 참조하세요. Blazor 프론트엔드 UI 구성 요소 소스 코드 다음으로, 애플리케이션의 UI를 생성합니다. OCR.razor 파일을 열고 다음 코드를 작성하십시오: @page "/IronOCR" @inherits OCRModel <h2>Optical Character Recognition (OCR) Using Blazor and IronOCR Software</h2> <div class="row"> <div class="col-md-5"> <textarea disabled class="form-control" rows="10" cols="15">@imageText</textarea> </div> <div class="col-md-5"> <div class="image-container"> <img class="preview-image" width="800" height="500" src=@imagePreview> </div> <BlazorInputFile.InputFile OnChange="@ViewImage" /> <p>@status</p> <hr /> <button class="btn btn-primary btn-lg" @onclick="GetText"> Extract Text </button> </div> </div> 위의 코드에서는 UI가 다음을 포함합니다: 이미지 파일을 선택하기 위한 입력 파일 태그. 이미지를 표시하기 위한 이미지 태그. GetText 메서드를 트리거하는 버튼. 이미지 데이터에서 추출한 텍스트를 표시하기 위한 텍스트 영역. 탐색 메뉴에 링크 추가 마지막으로 Shared 폴더 아래의 NavMenu.razor 파일에 OCR.razor 페이지로의 링크를 추가하십시오: <div class="nav-item px-3"> <NavLink class="nav-link" href="IronOCR"> <span class="oi oi-plus" aria-hidden="true"></span> Read Image Text </NavLink> </div> <div class="nav-item px-3"> <NavLink class="nav-link" href="IronOCR"> <span class="oi oi-plus" aria-hidden="true"></span> Read Image Text </NavLink> </div> HTML Counter 및 FetchData에 대한 링크를 제거하십시오, 필요하지 않기 때문입니다. 이제 모든 것이 완료되어 사용할 준비가 되었습니다. F5를 눌러 애플리케이션을 실행하십시오. 프론트엔드는 아래와 같이 표시되어야 합니다:  Blazor 서버 앱의 UI 이제 이미지를 업로드하고 텍스트를 추출하여 출력을 시각화해봅시다.  업로드된 이미지와 추출된 텍스트 출력된 텍스트는 깔끔하며, 텍스트 영역에서 복사할 수 있습니다. 요약 이 문서에서는 Blazor Server Application에서 이미지에서 텍스트를 읽기 위한 코드 뒤에 Blazor UI 구성 요소를 만드는 방법을 시연했습니다. IronOCR는 C# 기반의 모든 애플리케이션에서 텍스트를 추출할 수 있는 다목적 라이브러리입니다. 최신 .NET Framework를 지원하며 Razor 애플리케이션과 잘 사용할 수 있습니다. IronOCR는 Windows, Linux, macOS, Docker, Azure, AWS, MAUI에서 지원되는 크로스 플랫폼 라이브러리입니다. 추가 설정 없이 Tesseract의 최상의 결과를 사용하여 높은 정확도를 제공합니다. 다중 페이지 프레임 TIFF, PDF 파일 및 모든 인기 있는 이미지 형식을 지원합니다. 이미지에서 바코드 값을 읽을 수도 있습니다. 또한, IronOCR를 무료로 체험할 수 있는 체험판을 시도해볼 수 있습니다. 여기에서 소프트웨어 라이브러리를 다운로드하세요. 자주 묻는 질문 Blazor 서버 앱에서 이미지의 텍스트를 읽으려면 어떻게 해야 하나요? IronOCR 사용하면 Blazor 서버 앱에서 이미지의 텍스트를 읽을 수 있습니다. 먼저 BlazorInputFile 패키지를 사용하여 이미지를 업로드한 다음, IronOCR 의 GetText 메서드를 사용하여 이미지에서 텍스트를 추출합니다. OCR용 Blazor 서버 앱을 설정하려면 어떤 단계가 필요합니까? OCR용 Blazor 서버 앱을 설정하려면 ASP.NET 및 웹 개발 워크로드가 포함된 Visual Studio가 설치되어 있는지 확인하십시오. 그런 다음 새 Blazor 서버 앱을 만들고 NuGet 패키지 관리자를 통해 IronOCR 설치하십시오. Blazor 애플리케이션에서 파일 업로드를 어떻게 처리해야 할까요? Blazor 애플리케이션에서 파일 업로드는 BlazorInputFile 패키지를 사용하여 관리할 수 있습니다. 이 패키지를 사용하면 단일 파일 또는 여러 파일을 업로드할 수 있으며, 이는 OCR 이미지 처리에 필수적입니다. IronOCR 텍스트 추출에서 다국어를 지원할 수 있습니까? 네, IronOCR 텍스트 추출에 있어 다국어를 지원합니다. IronOCR은 Tesseract 5 엔진을 사용하여 이미지에서 다양한 언어의 텍스트를 높은 정확도로 인식합니다. 크로스 플랫폼 애플리케이션에서 IronOCR 사용하는 장점은 무엇입니까? IronOCR Windows, Linux, macOS, Docker, Azure, AWS 및 MAUI와의 호환성을 포함하여 다양한 플랫폼 애플리케이션에 여러 가지 이점을 제공합니다. 따라서 다양한 환경에서 OCR을 구현하는 데 다재다능한 선택지가 될 수 있습니다. Blazor 컴포넌트에서 IronOCR 사용하여 이미지에서 텍스트를 추출하는 방법은 무엇인가요? Blazor 컴포넌트에서 이미지를 통해 텍스트를 추출하려면 먼저 이미지 파일을 업로드한 다음 OCR.razor.cs 클래스를 사용하여 IronOCR의 GetText 메서드를 호출하면 됩니다. 이 메서드는 이미지를 처리하고 텍스트를 추출합니다. OCR 기능을 위한 Blazor UI의 핵심 구성 요소는 무엇입니까? OCR 기능을 위한 Blazor UI에는 이미지를 선택하기 위한 입력 파일 태그, 미리 보기를 위한 이미지 태그, OCR 프로세스를 시작하는 버튼, 추출된 텍스트를 표시하는 텍스트 영역이 포함됩니다. Blazor 애플리케이션에서 OCR 페이지로 이동하려면 어떻게 해야 하나요? Blazor 애플리케이션에서 OCR 페이지로 이동하려면 Shared 폴더에 있는 NavMenu.razor 파일에 탐색 항목을 추가하세요. OCR 페이지를 가리키는 NavLink 를 포함시키면 됩니다. 칸나팟 우돈판트 지금 바로 엔지니어링 팀과 채팅하세요 소프트웨어 엔지니어 카나팟은 소프트웨어 엔지니어가 되기 전 일본 홋카이도 대학교에서 환경 자원학 박사 학위를 취득했습니다. 학위 과정 중에는 생물생산공학과 소속 차량 로봇 연구실에서 활동하기도 했습니다. 2022년에는 C# 기술을 활용하여 Iron Software의 엔지니어링 팀에 합류했고, 현재 IronPDF 개발에 집중하고 있습니다. 카나팟은 IronPDF에 사용되는 대부분의 코드를 직접 작성하는 개발자로부터 배울 수 있다는 점에 만족하며, 동료들과의 소통을 통해 배우는 것 외에도 Iron Software에서 일하는 즐거움을 누리고 있습니다. 코딩이나 문서 작업을 하지 않을 때는 주로 PS5로 게임을 하거나 The Last of Us를 다시 시청하는 것을 즐깁니다. 관련 기사 게시됨 3월 8, 2026 실제로 유용한 데이터를 추출하는 영수증 OCR API를 C#에서 빌드합니다 IronOCR를 사용하여 C#에서 영수증 OCR API를 빌드합니다. 영수증 이미지에서 구조화된 데이터를 로컬에서 정확하게 추출하는 코드 예제를 포함한 단계별 튜토리얼입니다. 더 읽어보기 업데이트됨 3월 1, 2026 IronOCR 이용한 텍스트 인식 (C# GitHub ) IronOCR 사용하여 GitHub 프로젝트에 텍스트 인식 기능을 구현하는 C# GitHub 튜토리얼입니다. 코드 예제와 버전 관리 팁이 포함되어 있습니다. 더 읽어보기 업데이트됨 3월 1, 2026 .NET OCR SDK: C#용 텍스트 인식 라이브러리 IronOCR의 .NET SDK를 사용하여 강력한 OCR 솔루션을 구축하세요. 간편한 API, Enterprise급 기능, 그리고 다양한 플랫폼 지원을 통해 문서 처리 애플리케이션을 최적화할 수 있습니다. 더 읽어보기 송장 OCR API (개발자 튜토리얼)OCR을 이용한 영수증 데이...
게시됨 3월 8, 2026 실제로 유용한 데이터를 추출하는 영수증 OCR API를 C#에서 빌드합니다 IronOCR를 사용하여 C#에서 영수증 OCR API를 빌드합니다. 영수증 이미지에서 구조화된 데이터를 로컬에서 정확하게 추출하는 코드 예제를 포함한 단계별 튜토리얼입니다. 더 읽어보기
업데이트됨 3월 1, 2026 IronOCR 이용한 텍스트 인식 (C# GitHub ) IronOCR 사용하여 GitHub 프로젝트에 텍스트 인식 기능을 구현하는 C# GitHub 튜토리얼입니다. 코드 예제와 버전 관리 팁이 포함되어 있습니다. 더 읽어보기
업데이트됨 3월 1, 2026 .NET OCR SDK: C#용 텍스트 인식 라이브러리 IronOCR의 .NET SDK를 사용하여 강력한 OCR 솔루션을 구축하세요. 간편한 API, Enterprise급 기능, 그리고 다양한 플랫폼 지원을 통해 문서 처리 애플리케이션을 최적화할 수 있습니다. 더 읽어보기