Iron Barcode를 사용하여 .NET 5용 C#에서 QR 코드 및 바코드를 생성하는 방법

Barcodes & QRs in C# & VB.NET Applications

This article was translated from English: Does it need improvement?
Translated
View the article in English

C#과 기타 모든 .NET 언어로 바코드를 읽고 쓰는 것은 IronBarcode 소프트웨어 라이브러리를 사용하면 간단한 과정입니다.

IronBarcode 설치하기

여행의 첫 번째 단계는 IronBarcode를 설치하는 것이며, 이는 NuGet에서 다운로드하거나 DLL을 다운로드하여 수행할 수 있습니다.

IronBarcode NuGet 패키지를 설치하려면 Visual Studio용 NuGet 패키지 관리자를 사용할 수 있습니다:

Install-Package BarCode

또한, dotnet CLI를 사용하여 설치할 수도 있습니다:

dotnet add package IronBarCode

바코드 또는 QR 코드 읽기

IronBarcode를 사용하면 바코드를 읽는 데 단 한 줄의 코드만 필요합니다.

:path=/static-assets/barcode/content-code-examples/get-started/get-started-1.cs
using IronBarCode;

BarcodeResults results = BarcodeReader.Read("QuickStart.jpg");
if (results != null)
{
    foreach (BarcodeResult result in results)
    {
        Console.WriteLine(result.Text);
    }
}
$vbLabelText   $csharpLabel

이 한 줄의 코드를 통해 입력 문서에서 모든 유형의 바코드를 감지 및 스캔할 수 있으며, 뛰어난 성능으로 모든 필요한 것을 한 단계로 수행합니다! 이 방법은 JPEG, PNG, BMP 등의 다양한 이미지 형식과 PDF 및 GIF와 TIFF와 같은 다중 프레임 형식을 지원합니다. 향상된 성능을 위해 맞춤형 구성 옵션을 사용할 수 있습니다.

읽기 속도를 개선하기 위해 BarcodeReaderOptions 객체를 생성하고 성능을 향상시키기 위해 설정된 Speed을 구성할 수 있습니다. 기본값은 Balanced이지만, 특정 검사를 건너뛰기 위한 Faster 옵션도 사용할 수 있습니다.

:path=/static-assets/barcode/content-code-examples/get-started/get-started-2.cs
using IronBarCode;

BarcodeReaderOptions myOptionsExample = new BarcodeReaderOptions()
{
    ExpectMultipleBarcodes = false,
    ExpectBarcodeTypes = BarcodeEncoding.QRCode | BarcodeEncoding.Code128,
    CropArea = new System.Drawing.Rectangle(100, 200, 300, 400),
};

BarcodeResults result = BarcodeReader.Read("QuickStart.jpg", myOptionsExample);
if (result != null)
{
    Console.WriteLine(result.First().Text);
}
$vbLabelText   $csharpLabel

읽기 프로세스를 최적화하려면 ScanModeOnlyBasicScan로 설정할 수도 있습니다.

:path=/static-assets/barcode/content-code-examples/get-started/get-started-3.cs
using IronBarCode;

BarcodeResults results = BarcodeReader.Read("MultipleBarcodes.png");

// Loop through the results
foreach (BarcodeResult result in results)
{
    string value = result.Value;
    Bitmap img = result.BarcodeImage;
    BarcodeEncoding barcodeType = result.BarcodeType;
    byte[] binary = result.BinaryValue;
    Console.WriteLine(result.Value);
}
$vbLabelText   $csharpLabel

기타 구성에는 스캔할 바코드 형식을 지정하여 불필요한 스캔을 줄여 처리 속도를 높이는 방법이 포함됩니다.

:path=/static-assets/barcode/content-code-examples/get-started/get-started-4.cs
using IronBarCode;

BarcodeResults pagedResults = BarcodeReader.Read("MultipleBarcodes.pdf");

// Loop through the results
foreach (BarcodeResult result in pagedResults)
{
    int pageNumber = result.PageNumber;
    string value = result.Value;
    Bitmap img = result.BarcodeImage;
    BarcodeEncoding barcodeType = result.BarcodeType;
    byte[] binary = result.BinaryValue;
    Console.WriteLine(result.Value);
}

// or from a multi-page  TIFF scan with image correction:
BarcodeResults multiFrameResults = BarcodeReader.Read(inputImage: "Multiframe.tiff", new BarcodeReaderOptions
{
    Speed = ReadingSpeed.Detailed,
    ExpectMultipleBarcodes = true,
    ExpectBarcodeTypes = BarcodeEncoding.Code128,
    Multithreaded = false,
    RemoveFalsePositive = false,
    ImageFilters = null
});
$vbLabelText   $csharpLabel

바코드 쓰기

IronBarcode를 사용하여 바코드를 작성하려면 BarcodeWriter 클래스를 사용합니다.

:path=/static-assets/barcode/content-code-examples/get-started/get-started-5.cs
using IronBarCode;

GeneratedBarcode myBarcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode", BarcodeEncoding.Code128);
myBarcode.SaveAsImage("myBarcode.png");
$vbLabelText   $csharpLabel

바코드 스타일링

IronBarcode는 바코드의 시각적 표현을 조작하는 여러 옵션을 제공합니다.

:path=/static-assets/barcode/content-code-examples/get-started/get-started-7.cs
using IronBarCode;

GeneratedBarcode myBarcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode", BarcodeEncoding.Code128);
myBarcode.AddAnnotationTextAboveBarcode("Product URL:");
myBarcode.AddBarcodeValueTextBelowBarcode();
myBarcode.SetMargins(100);
myBarcode.ChangeBarCodeColor(IronSoftware.Drawing.Color.Purple);

// All major image formats supported as well as PDF and HTML
myBarcode.SaveAsPng("myBarcode.png");
$vbLabelText   $csharpLabel

바코드를 HTML로 내보내기

IronBarcode는 바코드를 HTML 문서로 내보내거나 HTML 콘텐츠의 일부로 내보낼 수 있습니다.

:path=/static-assets/barcode/content-code-examples/get-started/get-started-8.cs
using IronBarCode;

QRCodeWriter.CreateQrCode("https://ironsoftware.com", 500, QRCodeWriter.QrErrorCorrectionLevel.Medium).SaveAsPdf("MyQR.pdf");
$vbLabelText   $csharpLabel

QR 코드 생성

QR 코드는 QR 고유의 기능, 예를 들어 오류 수정과 같은 추가 구성을 제공하는 QRCodeWriter 클래스를 사용합니다.

:path=/static-assets/barcode/content-code-examples/get-started/get-started-9.cs
using IronBarCode;
using IronSoftware.Drawing;

QRCodeLogo qrCodeLogo = new QRCodeLogo("visual-studio-logo.png");
GeneratedBarcode myQRCodeWithLogo = QRCodeWriter.CreateQrCodeWithLogo("https://ironsoftware.com/csharp/barcode/", qrCodeLogo);
myQRCodeWithLogo.ChangeBarCodeColor(Color.DarkGreen).SaveAsPdf("MyQRWithLogo.pdf");
$vbLabelText   $csharpLabel

지원되는 바코드 형식

IronBarcode는 읽기와 쓰기에 대해 널리 사용되는 여러 바코드 형식을 지원합니다:

  • QR, Micro QR, Rectangular Micro QR (rMQR) 코드.
  • Aztec, Data Matrix, MaxiCode, PDF417과 같은 기타 2차원 바코드.
  • Databar와 같은 스택형 선형 바코드.
  • UPC-A, UPC-E, EAN-8, EAN-13, Codabar, ITF, MSI, Plessey와 같은 일반적인 1차원 바코드 형식.

왜 IronBarcode를 선택해야 하는가?

IronBarcode는 .NET을 위한 바코드 읽기 및 쓰기에 대해 친숙하고 사용하기 쉬운 API를 제공하며, 실제 사용 시 정확성, 정밀도 및 속도를 최적화합니다.

BarcodeWriter 클래스는 예를 들어 UPCA 및 UPCE 바코드에서 '체크섬'을 자동으로 검증하고 수정하며 숫자 형식 제한을 처리합니다. IronBarcode는 개발자가 데이터에 가장 적합한 바코드 형식을 선택하는 데 도움을 줍니다.

라이브러리는 자동 회전 및 이미지 노이즈 제거와 같은 이미지 전처리 기술을 통해 바코드 감지 성공률을 극대화할 수 있습니다.

앞으로 나아가기

IronBarcode의 최대 활용을 위해 이 문서 섹션의 튜토리얼을 읽고, GitHub에 방문할 것을 권장합니다.

커티스 차우
기술 문서 작성자

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

커티스는 개발 분야 외에도 사물 인터넷(IoT)에 깊은 관심을 가지고 있으며, 하드웨어와 소프트웨어를 통합하는 혁신적인 방법을 연구합니다. 여가 시간에는 게임을 즐기거나 디스코드 봇을 만들면서 기술에 대한 애정과 창의성을 결합합니다.

시작할 준비 되셨나요?
Nuget 다운로드 2,108,094 | 버전: 2026.3 방금 출시되었습니다
Still Scrolling Icon

아직도 스크롤하고 계신가요?

빠른 증거를 원하시나요? PM > Install-Package BarCode
샘플을 실행하세요 실이 바코드로 변하는 모습을 지켜보세요.