.NET용 2D 바코드 리더

2D 바코드 리더에 대한 소개 .NET

.NET을위한 2D 바코드 리더는 개발자가 이미지에서 2d 바 코드를 읽을 수있는 플러그인입니다.이 가이드는 사용 가능한 기능에 대한 개요를 제공하고 .net에서 코드 예를 사용하여 일반적인 작업을 실행하는 방법을 설명합니다.

지원되는 바코드 유형

.NET을 위한 2D 바코드 리더는 다음과 같이 지원됩니다:

  • QR 코드
  • 데이터 매트릭스
  • PDF417 조회수
  • 아세테크

사진에서 바코드 읽기

그림에서 바코드를 읽으려면, 당신은 BarCodeReader 다음은 C#에서 이것을 할 수있는 방법의 예입니다 :

using (BarCodeReader reader = new BarCodeReader("image.png"))
{
    foreach (BarCodeResult result in reader.ReadBarCodes())
    {
        Console.WriteLine("Code Text: " + result.CodeText);
        Console.WriteLine("Symbology: " + result.CodeType);
    }
}

읽기 프로세스를 사용자 정의

다양한 옵션을 설정함으로써 읽기 과정을 사용자 정의할 수 있습니다, 예를 들어 이미지 품질 등.

using (BarCodeReader reader = new BarCodeReader("image.png"))
{
    reader.QualitySettings = QualitySettings.HighQuality;
    foreach (BarCodeResult result in reader.ReadBarCodes())
    {
        Console.WriteLine("Code Text: " + result.CodeText);
        Console.WriteLine("Symbology: " + result.CodeType);
    }
}

오류 및 예외 처리

2D Barcode Reader for .NET은 읽기 과정에서 오류가 발생할 때 예외를 던집니다. try-catch 블록을 사용하여 이러한 예제를 처리할 수 있습니다.

try
{
    using (BarCodeReader reader = new BarCodeReader("image.png"))
    {
        foreach (BarCodeResult result in reader.ReadBarCodes())
        {
            Console.WriteLine("Code Text: " + result.CodeText);
            Console.WriteLine("Symbology: " + result.CodeType);
        }
    }
}
catch (BarCodeRecognitionException ex)
{
    Console.WriteLine("Error: " + ex.Message);
}

최고의 관행 및 성과 최적화

성능을 최적화하기 위해, 높은 품질의 이미지를 사용하고 설정하는 것이 좋습니다. QualitySettings 부동산에 대하여 HighPerformance또한, 여러 위협 또는 병렬 처리를 사용하여 성능을 향상시킬 수 있습니다.이것은 C#에서 이것을 할 수있는 방법의 예입니다.

BarCodeReader.ProcessorSettings.UseAllCores = true;

Parallel.ForEach(Files.GetFiles("images"), file =>
{
    using (BarCodeReader reader = new BarCodeReader(file))
    {
        reader.QualitySettings = QualitySettings.HighPerformance;
        foreach (BarCodeResult result in reader.ReadBarCodes())
        {
            Console.WriteLine("Code Text: " + result.CodeText);
            Console.WriteLine("Symbology: " + result.CodeType);
        }
    }
});
 한국어