IRONSOFTWAREHOME
동영상

Telerik RadBarcode에서 IronBarcode로의 마이그레이션

Curtis Chau
Curtis Chau
Updated: 2026년 8월 1일

이 가이드는 .NET 개발자가 Telerik RadBarcode에서 IronBarcode로 완벽한 마이그레이션 경로를 제공합니다. RadBarcodeRadBarcodeReader 가 할 수 있는 것의 한계에 도달한 경우에 유용합니다. 이 문서에는 패키지 교체, 네임스페이스 업데이트, 라이선스 초기화, 코드 수준 마이그레이션 예제, API 매핑 참조 및 마이그레이션 완료 여부를 확인하기 위한 체크리스트가 포함되어 있습니다. 이 예제들은 Telerik 바코드 마이그레이션 중에 가장 흔히 발생하는 시나리오, 즉 XAML 컨트롤 교체, 읽기 형식 확장, 서버 측 배포 및 PDF 처리에 중점을 둡니다.

Telerik RadBarcode에서 마이그레이션해야 하는 이유는 무엇일까요?

Telerik RadBarcode 마이그레이션은 기존 구성 요소가 충족할 수 없는 구체적인 기술 요구 사항에 따라 시작됩니다. 아래 이유는 이러한 전환을 완료했거나 평가 중인 팀들이 가장 흔히 보고하는 상황을 나타냅니다.

2D 읽기 경계: WPF의 RadBarcodeReader 구성 요소와 WinForms의 RadBarcodeReader 구성 요소는 읽기 엔진을 공유하며 DecodeType 열거형으로 경계가 설정됩니다. 해당 열거형에는 Code128, Code39, EAN13, EAN8, UPCA, UPCE, Codabar, ITF와 같은 1D 선형 형식에 대한 항목만 포함되어 있으며 그 외에는 아무것도 없습니다. QR 코드, DataMatrix, PDF417 또는 Aztec에 대한 항목이 없습니다. 새로운 요구 사항으로 인바운드 QR 코드 처리나 스캔된 문서에서 DataMatrix 라벨 읽기가 필요할 때, DecodeType 제약 조건은 사용할 수 있는 우회가 없는 까다로운 차단 요소가 됩니다.

플랫폼 코드 단편화: Telerik를 사용하여 읽으려면 UI 프레임워크 종속성이 필요합니다: RadBarcodeReader 은 WPF 유형(BitmapImage)을 사용하고 RadBarcodeReader 은 WinForms 유형(System.Drawing.Image)을 사용합니다. 이러한 형식은 공유 .NET 라이브러리, 콘솔 애플리케이션, ASP.NET Core 프로젝트 또는 Blazor 서버에서 참조할 수 없습니다. 바코드 판독 로직을 공유 서비스 계층에 중앙 집중화하려는 팀은 Telerik 타입을 사용해서는 그렇게 할 수 없습니다. 판독기 구현이 각 UI 프레임워크에 영구적으로 종속되기 때문입니다.

PDF 처리 격차: 많은 바코드 워크플로는 이미지 파일이 아닌 문서를 기반으로 작동합니다. Telerik RadBarcodeReader는 비트맵 이미지만 허용합니다. PDF 페이지에 삽입된 바코드를 읽으려면 별도의 라이브러리를 사용하여 페이지를 이미지로 변환한 다음 해당 이미지를 Telerik 리더에 제공해야 합니다. 이렇게 하면 종속성이 추가되지만 여전히 1D 결과만 얻을 수 있습니다. 주로 PDF 문서를 사용하는 팀의 경우, 이 해결 방법은 워크플로의 모든 단계에서 불편함을 초래합니다.

구독 라이선스: Telerik 바코드 기능은 독립형 패키지로 판매되지 않습니다. RadBarcodeRadBarcodeReader에 대한 액세스는 플랫폼별 UI 스위트 구독과 함께 제공됩니다. 플랫폼별 Telerik UI 구독은 개발자당 연 $999(Lite 계층)에서 시작하며 DevCraft UI는 모든 플랫폼을 결합하여 개발자당 연 1,149달러입니다. 이는 Telerik의 공시된 2026년 가격에 따라 다릅니다. 바코드 기능이 주된 요구 사항이며 다른 Telerik UI 컨트롤을 사용하지 않는 팀은 구매하는 구성 요소 중 극히 일부에 해당하는 기능에 대해 전체 Suite 비용을 부담해야 합니다.

근본적인 문제

Telerik 읽기 제한 사항을 가장 명확하게 보여주는 것은 형식을 생성하는 구성 요소가 리더를 통해 형식을 왕복 처리할 수 없다는 점입니다.

// Telerik — generates a QR code, then cannot read it back
var qrBarcode = new RadBarcode();
qrBarcode.Value = "https://example.com/order/4821";
qrBarcode.Symbology = new QRCode { ErrorCorrectionLevel = ErrorCorrectionLevel.H };
// Save to file...

// Attempt to read the same QR code:
var reader = new RadBarcodeReader();
// DecodeType.QR does not exist — QR cannot be added to this list
reader.DecodeTypes = new[] { DecodeType.Code128, DecodeType.EAN13 };
var bitmap = new BitmapImage(new Uri("qr-output.png", UriKind.Absolute));
var result = reader.Decode(bitmap);
// result == null — always, for any QR code image

IronBarcode 이러한 격차를 해소합니다. 생성과 읽기에 동일한 패키지를 사용하며, 읽기 엔진은 QR 코드, DataMatrix, PDF417 및 기타 모든 형식을 자동으로 감지합니다.

// NuGet: dotnet add package IronBarcode
using IronBarCode;

IronBarCode.License.LicenseKey = "YOUR-LICENSE-KEY";

// Generate a QR code
BarcodeWriter.CreateBarcode("https://example.com/order/4821", BarcodeEncoding.QRCode)
             .SaveAsPng("qr-output.png");

// Read that same QR code back — no format specification needed
var results = BarcodeReader.Read("qr-output.png");
Console.WriteLine(results.First().Value);
// Output: https://example.com/order/4821

##IronBarcode와 Telerik RadBarcode의 기능 비교

기능텔레릭 라드바코드IronBarcode
1D 바코드 생성예 (모든 플랫폼)
2D 바코드 생성예 (모든 플랫폼)
1D 바코드 판독WPF 및 WinForms 전용예 (모든 플랫폼)
QR 코드 읽기WPF 전용예 (모든 플랫폼)
데이터매트릭스 읽기WPF 전용예 (모든 플랫폼)
PDF417 읽기WPF 전용예 (모든 플랫폼)
아즈텍어 읽기사용 불가
PDF 파일 읽기사용 불가예 (원어민)
자동 형식 감지아니요 — DecodeType이 필요합니다.
ASP.NET Core 읽기사용 불가
Blazor 읽기사용 불가
Docker/Linux 관련 자료사용 불가
공유 서비스 라이브러리불가능합니다 (플랫폼 유형)
정적 읽기 API아니요 (인스턴스 필요)
독립 실행 NuGet 패키지아니요 - UI Suite 필요합니다.
영구 라이선스구독과 함께 영구적 등급 가능예 — $999부터 (Lite)

빠른 시작

1단계: NuGet 패키지 교체

프로젝트에서 해당 플랫폼에 대한 Telerik UI 패키지를 제거하세요.

# WPF
dotnet remove package Telerik.UI.for.Wpf.60.Xaml

# WinForms
dotnet remove package Telerik.UI.for.WinForms.Common
dotnet remove package Telerik.UI.for.WinForms.Barcode

# Blazor
dotnet remove package Telerik.UI.for.Blazor
SHELL

프로젝트에서 동일한 패키지에 포함된 다른 Telerik 컨트롤을 사용하는 경우, 해당 패키지를 그대로 두고 2단계로 진행하십시오. 공유 패키지를 제거하지 않고 바코드 관련 API 호출만 제거할 수 있습니다.

IronBarcode 설치하세요:

dotnet add package IronBarcode
SHELL

하나의 패키지로 WPF, WinForms, ASP.NET Core, Blazor Server, 콘솔 애플리케이션, Docker, Azure Functions 및 AWS Lambda를 모두 지원합니다. 전체 플랫폼 호환성 세부 정보에는 지원되는 정확한 .NET 버전 및 운영 체제 대상이 명시되어 있습니다.

단계 2: 네임스페이스 업데이트

Telerik 바코드 네임스페이스 가져오기를 제거하고IronBarcode네임스페이스로 바꾸십시오.

// Remove these namespace imports:
// using Telerik.Windows.Controls.Barcode;      // WPF reader and generator
// using Telerik.Windows.Controls;              // WPF general
// using Telerik.WinControls.UI;               // WinForms
// using Telerik.WinControls.UI.Barcode;        // WinForms barcode reader

// Add this:
using IronBarCode;

단계 3: 라이선스 초기화

애플리케이션 시작 시 Telerik 라이선스 초기화를IronBarcode키 할당으로 대체하십시오.

// Remove:
// Telerik.WinControls.TelerikLicenseManager.InstallLicense("key");

// Add at application startup (Program.cs, App.xaml.cs, or composition root):
IronBarCode.License.LicenseKey = "YOUR-LICENSE-KEY";

주요 할당은 애플리케이션 진입점에서 한 번만 이루어집니다. 배포할 라이선스 파일이 없으며, 플랫폼별 초기화 경로도 없고, WPF와 ASP.NET Core 대한 별도의 구성도 필요하지 않습니다.

코드 마이그레이션 예제

바코드 생성: XAML 컨트롤에서 코드 기반 API로

Telerik의 WPF 생성은 선언적입니다. RadBarcode XAML 요소는 UI 트리에서 직접 렌더링됩니다. IronBarcode는 코드에서 바코드를 생성하고 파일로 저장하거나 WPF 표시를 위해 GeneratedBarcode 객체를 BitmapSource로 변환할 수 있습니다.

텔레릭 접근 방식:

<!-- WPF XAML — RadBarcode renders inline in the UI -->
<Window xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation">
    <telerik:RadBarcode Value="PROD-2026-00184" Symbology="Code128" />
</Window>
XML
@* Blazor — TelerikBarcode renders as a Razor component *@
<TelerikBarcode Value="PROD-2026-00184" Type="@BarcodeType.Code128" />
Text

IronBarcode 접근 방식:

// NuGet: dotnet add package IronBarcode
using IronBarCode;

// Save to file — replaces XAML generation + manual export
BarcodeWriter.CreateBarcode("PROD-2026-00184", BarcodeEncoding.Code128)
             .ResizeTo(400, 100)
             .SaveAsPng("barcode.png");

// Display in WPF — assign to an Image control's Source property
var bitmapSource = BarcodeWriter.CreateBarcode("PROD-2026-00184", BarcodeEncoding.Code128)
                                .ToBitmapSource();
barcodeImageControl.Source = bitmapSource;

// Serve in Blazor or ASP.NET Core — return as base64 src attribute
byte[] bytes = BarcodeWriter.CreateBarcode("PROD-2026-00184", BarcodeEncoding.Code128)
                            .ResizeTo(400, 100)
                            .ToPngBinaryData();
string imgSrc = $"data:image/png;base64,{Convert.ToBase64String(bytes)}";

BarcodeEncoding 열거형은 Telerik의 Symbology 열거형과 동일한 심볼로지를 포함합니다. QR 코드 생성으로 전환하면 열거형 인수만 변경됩니다. QR 오류 수정 수준 및 DataMatrix 크기를 포함한 모든 2D 바코드 생성 옵션 에 대한 자세한 예제는IronBarcode설명서를 참조하십시오.

데스크톱 애플리케이션에서 바코드 읽기

Telerik는 데스크탑 플랫폼에 대해 두 개의 별도 읽기 클래스를 제공합니다 — WPF의 RadBarcodeReader 및 WinForms의 RadBarcodeReader —. 서로 다른 클래스 이름, 속성 이름, 입력 종류를 가지고 있습니다. IronBarcode는 두 프로젝트 유형 모두 동일하게 작동하는 단일 정적 호출로 이를 대체합니다.

Telerik WPF 접근 방식:

WPF 읽기에는 RadBarcodeReader 인스턴스, 명시적 DecodeType 구성, URI에서 로드된 BitmapImage 객체, reader.Decode() 호출이 필요합니다. 결과 속성은 .Text 입니다.

using Telerik.Windows.Controls.Barcode;
using System.Windows.Media.Imaging;

public string ReadProductBarcode(string imagePath)
{
    var reader = new RadBarcodeReader();
    reader.DecodeTypes = new DecodeType[]
    {
        DecodeType.Code128,
        DecodeType.Code39,
        DecodeType.EAN13,
        DecodeType.EAN8,
        DecodeType.UPCA,
        DecodeType.UPCE,
        DecodeType.Codabar,
        DecodeType.ITF
    };

    var bitmap = new BitmapImage(new Uri(imagePath, UriKind.Absolute));
    var result = reader.Decode(bitmap);

    return result?.Text ?? "No barcode found";
}

Telerik WinForms 접근 방식:

WinForms RadBarcodeReader 클래스는 다른 이름, 다른 속성 이름(DecodeType 단수가 아니라 DecodeTypes 복수), System.Drawing.Image 대신 BitmapImage를 사용합니다.

using Telerik.WinControls.UI.Barcode;
using System.Drawing;

public string ReadShippingLabel(string imagePath)
{
    var reader = new RadBarcodeReader();
    reader.DecodeType = new DecodeType[]
    {
        DecodeType.Code128,
        DecodeType.ITF,
        DecodeType.EAN13
    };

    using var image = Image.FromFile(imagePath);
    var result = reader.Read(image);

    return result?.Text ?? "No barcode found";
}

IronBarcode 접근 방식:

// NuGet: dotnet add package IronBarcode
using IronBarCode;

public string ReadProductBarcode(string imagePath)
{
    var results = BarcodeReader.Read(imagePath);
    return results.FirstOrDefault()?.Value ?? "No barcode found";
}

BarcodeReader.Read() 는 정적 메서드입니다 — 읽기 인스턴스가 필요하지 않습니다. 파일 경로 문자열을 직접 수락하여 BitmapImage 또는 System.Drawing.Image 로드를 요구하지 않습니다. 50개 이상의 지원되는 형식에 대해 자동으로 형식 감지를 수행합니다. 결과 속성은 .Value이고 .Text이 아닙니다. 이 호출은 WPF 및 WinForms 애플리케이션 모두에서 수정 없이 동일하게 작동하며, 플랫폼별 변형은 없습니다. 또한 Telerik 리더기가 1D 형식으로만 제한되는 것과 달리 QR 코드, DataMatrix 및 이미지에 있는 기타 모든 형식을 읽을 수 있습니다.

Telerik을 사용하면 이전에는 불가능했던 QR 코드 읽기가 가능합니다.

QR 읽기가 불가능하다고 설명한 주석이나 NotSupportedException이 코드베이스에 포함된 경우, 이것이 대체입니다. Telerik에는 QR 코드 읽기를 활성화하는 구성 경로가 없습니다. 즉, Telerik에는 이 시나리오에 해당하는 기능이 없습니다.

텔레릭 접근 방식:

// RadBarcodeReader does not support QR codes.
// DecodeType.QR does not exist in the Telerik enum.
public string ReadQrCode(string imagePath)
{
    throw new NotSupportedException(
        "Telerik RadBarcodeReader cannot read QR codes. " +
        "DecodeType.QR is not a valid enum value.");
}

IronBarcode 접근 방식:

// NuGet: dotnet add package IronBarcode
using IronBarCode;

public string ReadQrCode(string imagePath)
{
    // QR codes, DataMatrix, PDF417, and Aztec are all detected automatically
    var results = BarcodeReader.Read(imagePath);
    return results.FirstOrDefault()?.Value ?? "No QR code found";
}

EAN-13 바코드를 읽는 동일한 BarcodeReader.Read() 호출이 QR 코드를 읽습니다. 2D 형식에 대한 별도의 설정은 없습니다. 읽기 및 생성에 지원되는 바코드 형식 의 전체 목록은IronBarcode설명서에서 확인할 수 있으며, 50개 이상의 모든 항목과 형식별 참고 사항이 포함되어 있습니다.

ASP.NET Core 엔드포인트에서 바코드 읽기

Telerik은 ASP.NET Core 또는 Blazor 용 바코드 판독 구성 요소를 제공하지 않습니다. 기존 애플리케이션이 웹 계층에 Telerik 리더가 없어서 업로드된 이미지를 데스크톱 서비스로 보내 읽도록 하는 경우, 해당 해결 방법은 웹 계층에서 직접 읽는 방식으로 대체됩니다.

텔레릭 접근 방식:

// No Telerik reading API available in ASP.NET Core.
// Workaround: forward uploaded file to a WPF or WinForms service
// that can reference Telerik.Windows.Controls.Barcode.
[HttpPost("read")]
public async Task<IActionResult> ReadBarcode(IFormFile imageFile)
{
    // Must proxy to desktop service — no Telerik reader available here
    var bytes = await ReadAllBytesAsync(imageFile);
    var result = await _desktopBridgeService.ReadAsync(bytes);
    return Ok(result);
}

IronBarcode 접근 방식:

// NuGet: dotnet add package IronBarcode
using IronBarCode;
using Microsoft.AspNetCore.Mvc;

[ApiController]
[Route("api/barcode")]
public class BarcodeController : ControllerBase
{
    [HttpPost("read")]
    public IActionResult ReadBarcode(IFormFile imageFile)
    {
        using var stream = imageFile.OpenReadStream();
        var results = BarcodeReader.Read(stream);
        return Ok(results.Select(r => new
        {
            Format = r.BarcodeType.ToString(),
            Value = r.Value
        }));
    }

    [HttpGet("generate")]
    public IActionResult GenerateBarcode([FromQuery] string data)
    {
        var bytes = BarcodeWriter.CreateBarcode(data, BarcodeEncoding.Code128)
                                 .ResizeTo(400, 100)
                                 .ToPngBinaryData();
        return File(bytes, "image/png");
    }
}

BarcodeReader.Read()Stream를 직접 수락하므로 업로드된 파일 스트림이 디스크에 쓰지 않고 전달됩니다. 이 컨트롤러는 수정 없이 Linux, Docker 또는 Azure App Service에 배포할 수 있습니다.

PDF 파일에서 바코드 읽기

Telerik에는 PDF 바코드 읽기 기능이 없습니다. Telerik 기반의 기존 코드베이스에 PDF 읽기를 추가하려면 페이지를 이미지로 변환하기 위한 PDF 렌더링 라이브러리가 필요하며, 이를 RadBarcodeReader에 전달해야 합니다.IronBarcode PDF 파일을 직접 읽습니다.

텔레릭 접근 방식:

// No direct PDF reading support in RadBarcodeReader.
// Workaround: use a separate PDF library to extract page images
using SomePdfLibrary; // third-party dependency
using Telerik.Windows.Controls.Barcode;

public List<string> ReadBarcodesFromPdf(string pdfPath)
{
    var results = new List<string>();
    var pages = PdfRenderer.ExtractPages(pdfPath); // third-party call

    foreach (var pageImage in pages)
    {
        var reader = new RadBarcodeReader();
        reader.DecodeTypes = new[] { DecodeType.Code128, DecodeType.EAN13 };
        var bitmap = ConvertToBitmapImage(pageImage); // conversion required
        var result = reader.Decode(bitmap);
        if (result != null)
            results.Add(result.Text); // 1D only — QR codes on PDF pages are missed
    }
    return results;
}

IronBarcode 접근 방식:

// NuGet: dotnet add package IronBarcode
using IronBarCode;

public List<string> ReadBarcodesFromPdf(string pdfPath)
{
    var results = BarcodeReader.Read(pdfPath);
    return results.Select(r =>
        $"Page {r.PageNumber}: {r.BarcodeType}{r.Value}").ToList();
}

별도의 PDF 라이브러리는 필요하지 않습니다. 페이지 추출 단계가 없습니다. 이미지 변환도 없습니다. PDF 파일 경로를 전달하면IronBarcode모든 페이지를 처리하여 페이지 번호 추적 기능이 포함된 모든 바코드를 반환합니다. PDF 페이지에 있는 1D 및 2D 바코드 모두 감지됩니다.

텔레릭 라드바코드 API와IronBarcode매핑 참조

텔레릭 라드바코드IronBarcode
TelerikLicenseManager.InstallLicense("key")IronBarCode.License.LicenseKey = "key"
<telerik:RadBarcode Value="..." Symbology="Code128" />BarcodeWriter.CreateBarcode(data, BarcodeEncoding.Code128)
<TelerikBarcode Type="@BarcodeType.Code128" />서버 측 생성으로 ToPngBinaryData() 반환
Symbology.Code128BarcodeEncoding.Code128
Symbology.QRCodeBarcodeEncoding.QRCode
new RadBarcodeReader() (WPF)정적 클래스 - 인스턴스가 필요하지 않습니다.
new RadBarcodeReader() (WinForms)정적 클래스 - 인스턴스가 필요하지 않습니다.
reader.DecodeTypes = new DecodeType[] { ... } (WPF)자동 감지 - 별도의 설정 필요 없음
reader.DecodeType = new DecodeType[] { ... } (윈폼)자동 감지 - 별도의 설정 필요 없음
reader.Decode(bitmapImage) (WPF)BarcodeReader.Read(imagePath)
reader.Read(drawingImage) (WinForms)BarcodeReader.Read(imagePath)
result.Textresult.Value
result.Symbologyresult.BarcodeType
BitmapImage 입력으로 필요 (WPF)파일 경로, Stream 혹은 바이트 배열 허용
System.Drawing.Image 입력으로 필요 (WinForms)파일 경로, Stream 혹은 바이트 배열 허용
읽기에서는 1D 형식만 사용 가능합니다.2D 유형을 포함한 50개 이상의 형식
WPF 및 WinForms 읽기 전용모든 .NET 플랫폼
PDF 읽기를 지원하지 않습니다.BarcodeReader.Read("file.pdf") — 네이티브

일반적인 마이그레이션 문제와 해결책

문제 1: XAML 바코드 컨트롤 교체

Telerik: <telerik:RadBarcode> 는 WPF UI 요소 트리에서 직접 렌더링되는 비주얼 컨트롤입니다. 코드-비하인드 변경 없이 Image 요소로 대체할 수 없습니다.

솔루션: <telerik:RadBarcode> 요소를 <Image> 컨트롤로 교체하고 코드-비하인드에서 바코드를 생성합니다. Image.Source을 IronBarcode로 생성된 BitmapSource에 바인딩하세요:

// In code-behind or ViewModel
using IronBarCode;

var generated = BarcodeWriter.CreateBarcode(barcodeValue, BarcodeEncoding.Code128)
                             .ResizeTo(400, 100);
BarcodeImage.Source = generated.ToBitmapSource();

Blazor의 경우, <TelerikBarcode>을 서버 측에서 생성된 base64 인코딩된 PNG를 받는 src 속성을 가진 <img> 요소로 교체합니다.

문제 2: DecodeType 제거의 부작용

Telerik: DecodeTypes (WPF) 또는 DecodeType (WinForms) 속성은 읽기 엔진이 감지하려는 형식을 필터링합니다.IronBarcode마이그레이션에서 이 필터를 제거하면IronBarcode이제 이전에 필터에 의해 제외되었던 형식을 포함하여 이미지에 있는 모든 형식에 대한 결과를 반환합니다.

솔루션: DecodeType 할당 블록을 완전히 제거합니다. 감지된 추가 형식이 다운스트림 로직에서 예상치 못한 결과를 일으킬 경우 — 예를 들어, 코드가 한 가지 바코드 형식만 반환될 것으로 가정한 경우 — BarcodeReaderOptions를 사용하여 선택적 필터링을 추가합니다.

using IronBarCode;

var options = new BarcodeReaderOptions
{
    ExpectedBarcodeTypes = BarcodeEncoding.Code128 | BarcodeEncoding.EAN13
};
var results = BarcodeReader.Read(imagePath, options);

이는 선택 사항입니다. 기본 동작(모든 형식 감지)은 대부분의 사용 사례에 적합하며 이전 Telerik 구현에서는 얻을 수 없었던 결과를 제공합니다.

문제 3: TelerikLicenseManager 정리

Telerik: Telerik.WinControls.TelerikLicenseManager.InstallLicense(key) 호출은 애플리케이션 시작 시, 일반적으로 Program.cs (WinForms) 또는 App.xaml.cs (WPF)에서 나타납니다. 키는 종종 앱 설정, 구성 파일에 저장되거나 시작 메서드에 하드코딩되어 있습니다.

솔루션: TelerikLicenseManager.InstallLicense() 호출을 제거합니다. 시작 위치와 동일한 위치에 있는IronBarcode키 할당으로 교체하십시오.

// Remove:
// Telerik.WinControls.TelerikLicenseManager.InstallLicense("TELERIK-KEY");

// Add:
IronBarCode.License.LicenseKey = "YOUR-LICENSE-KEY";

다른 비바코드 Telerik 컨트롤이 여전히 사용 중이어서 Telerik 패키지가 설치된 상태로 남아 있을 경우, 해당 컨트롤의 TelerikLicenseManager 호출을 보존해야 합니다. Telerik 패키지 자체가 완전히 제거되는 경우에만 해당 호출을 제거하십시오.

텔레릭 라드바코드 마이그레이션 체크리스트

이동 전 작업

코드 변경을 하기 전에 코드베이스에서 Telerik 바코드 사용 부분을 모두 검토하십시오.

# License initialization
grep -r "TelerikLicenseManager.InstallLicense" --include="*.cs" .

# XAML generation controls
grep -r "RadBarcode" --include="*.xaml" .
grep -r "TelerikBarcode" --include="*.razor" .

# Code-behind generation references
grep -r "RadBarcode" --include="*.cs" .
grep -r "Symbology\." --include="*.cs" .

# Reading API — WPF
grep -r "RadBarcodeReader" --include="*.cs" .
grep -r "DecodeTypes\." --include="*.cs" .
grep -r "reader\.Decode(" --include="*.cs" .

# Reading API — WinForms
grep -r "BarCodeReader" --include="*.cs" .
grep -r "DecodeType\." --include="*.cs" .
grep -r "reader\.Read(" --include="*.cs" .

# Result property access
grep -r "result\.Text" --include="*.cs" .
grep -r "result\.Symbology" --include="*.cs" .
SHELL

각 경기 결과를 기록하십시오. XAML 컨트롤이 포함된 파일, 읽기 코드가 포함된 파일, 그리고 각 파일이 속한 플랫폼을 기록해 두세요.

코드 업데이트 작업

  1. Telerik 바코드 NuGet 패키지를 제거합니다(다른 컨트롤에 필요한 경우 유지).
  2. 바코드 기능을 필요로 하는 각 프로젝트에 IronBarcode NuGet 패키지를 설치합니다.
  3. 각 애플리케이션 시작 진입점에 IronBarCode.License.LicenseKey = "YOUR-LICENSE-KEY"을 추가합니다.
  4. Telerik 네임스페이스 임포트를 제거하고 using IronBarCode을 추가합니다.
  5. <telerik:RadBarcode> XAML 요소를 <Image> 컨트롤로 교체합니다.
  6. 코드-비하인드에서 BarcodeWriter.CreateBarcode(...).ToBitmapSource()을 사용하여 바코드 이미지를 생성합니다.
  7. <TelerikBarcode> Razor 구성 요소를 서버 측에서 생성된 base64 <img> 소스로 교체합니다.
  8. new RadBarcodeReader() 인스턴스를 BarcodeReader.Read(path) 정적 호출로 교체합니다.
  9. new RadBarcodeReader() 인스턴스를 BarcodeReader.Read(path) 정적 호출로 교체합니다.
  10. reader.DecodeTypes = new DecodeType[] { ...를 모두 삭제합니다. }andreader.DecodeType = new DecodeType[] { ... }` 블록
  11. reader.Decode(bitmapImage) 호출을 BarcodeReader.Read(imagePath)로 교체합니다.
  12. reader.Read(drawingImage) 호출을 BarcodeReader.Read(imagePath)로 교체합니다.
  13. 읽기 결과 접근지에서 모든 result.Textresult.Value으로 이름 변경합니다.
  14. 모든 형식 검사 지점에서 result.Symbologyresult.BarcodeType으로 이름 변경합니다.
  15. Symbology.Code128 및 유사한 생성 열거값을 BarcodeEncoding.Code128으로 교체합니다.
  16. Telerik 패키지가 모두 제거된 경우 TelerikLicenseManager.InstallLicense() 호출을 제거합니다.

마이그레이션 후 테스트

  • 이전에 판독한 모든 1D 바코드(Code128, EAN13 등)가 계속해서 올바른 값을 반환하는지 확인하십시오.
  • 테스트 이미지의 QR 코드가 이전에 null을 반환했던 부분에서 이제는 성공적으로 읽히는지 확인합니다.
  • 생성된 바코드(PNG 형식으로 저장되거나 바이트 형식으로 제공됨)가 화면에 제대로 표시되고 정확하게 스캔되는지 테스트합니다.
  • 이전에 읽기 기능을 수행할 수 없었던 ASP.NET Core 또는 Blazor 엔드포인트가 이제 올바르게 작동하는지 확인합니다.
  • PDF 읽기 기능이 추가된 경우, 각 PDF 페이지의 바코드가 올바른 페이지 번호와 함께 제대로 감지되는지 확인하십시오.
  • 마이그레이션 전 섹션의 grep audit 명령을 실행하여 Telerik 바코드 API 참조가 남아 있지 않은지 확인하십시오.
  • 첫 번째 BarcodeReader.Read() 또는 BarcodeWriter.CreateBarcode() 호출 전 IronBarCode.License.LicenseKey가 설정되었는지 확인합니다.

##IronBarcode로 마이그레이션할 때의 주요 이점

완벽한 2D 형식 지원: 마이그레이션 후 QR 코드, DataMatrix, PDF417 및 Aztec 형식을 기존 Code128 및 EAN13 읽기에 사용되던 동일한 API 호출로 읽을 수 있습니다. 추가 구성이 필요하지 않으며 2D 형식을 위한 별도의 라이브러리도 필요하지 않습니다. 읽기 엔진은 형식 식별을 자동으로 처리합니다.

통합된 크로스 플랫폼 API: 동일한 BarcodeReader.Read()BarcodeWriter.CreateBarcode() 호출은 WPF, WinForms, ASP.NET Core, Blazor, 콘솔 애플리케이션 및 Docker 컨테이너에서 동일하게 컴파일되고 실행됩니다. 공유 서비스 라이브러리에 한 번 작성된 바코드 로직은 수정 없이 솔루션의 모든 프로젝트 유형에서 작동합니다.

**네이티브 PDF 파일 처리:**IronBarcode PDF 파일에서 바코드를 직접 읽어 모든 페이지를 처리하고 페이지 번호 메타데이터를 포함한 결과를 반환합니다. 이전에는 PDF 렌더링 라이브러리 Plus Telerik 읽기 단계를 필요로 했던 워크플로가 단일 메서드 호출로 통합되어 타사 종속성과 중간 이미지 변환 단계가 제거되었습니다.

바코드 접근에 대한 구독 의존성 제거: 마이그레이션 후, 바코드 기능은 IronBarcode의 영구 라이선스 모델을 통해 이용할 수 있습니다. 이용 권한 유지를 위해 매년 갱신할 필요는 없습니다. 텔레릭 Suite 을 주로 바코드 관련 용도로 사용하는 팀은 반복적인 라이선스 비용을 일회성 비용으로 줄일 수 있습니다.

단순화된 코드베이스: DecodeType 구성 블록, BitmapImage 로드 단계, 플랫폼별 리더 클래스 선택, result.Text 속성 체인은 자동 감지 결과 수집 기능이 있는 단일 정적 메서드 호출로 모두 교체됩니다. 이전에는 WPF와 WinForms 읽기에 대해 서로 다른 구현이 필요했던 코드가 이제 하나의 공통 구현으로 통합됩니다.

참고해 주세요: 텔레릭은 해당 소유자의 등록 상표입니다. 이 사이트는 Progress Software와 제휴되지 않았으며, 공인 또는 후원받지 않았습니다. 모든 제품명, 로고 및 브랜드는 해당 소유자의 자산입니다. 비교는 정보 제공 목적으로만 사용되며, 작성 시점에 공개적으로 이용 가능한 정보를 반영합니다.
Curtis Chau
기술 문서 작성자

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

...
더 읽어보기

관련 기사

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
무료 라이브 데모를 예약하세요
Booking Badge

전 세계 수백만 엔지니어들이 신뢰하는 제품입니다.

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