TIFF 이미지는 일반적으로 단일 파일에 여러 바코드를 저장하는 데 사용됩니다. 특정 시나리오에서는 TIFF 파일에서 다른 바코드를 읽어야 할 수 있습니다. 이러한 요구 사항에 따라 이 문서에서는 C#에서 프로그래밍 방식으로 TIFF 이미지에서 다양한 유형의 바코드를 읽는 방법을 다룹니다.
TIFF 이미지에서 바코드 스캔 - C# API 다운로드
Aspose.BarCode for .NET에는 Aztec, Swiss Post 등과 같은 다양한 유형의 바코드를 스캔하거나 생성할 수 있는 기능이 있습니다. 다음에서 참조 DLL 파일을 다운로드하여 API를 쉽게 설정할 수 있습니다. 다운로드 페이지 또는 아래의 NuGet 설치 명령 사용:
PM> Install-Package Aspose.BarCode
C#의 TIFF 이미지에서 바코드를 읽는 방법
TIFF 이미지에서 바코드를 읽으려면 아래 단계를 따라야 합니다.
- 원본 TIFF 이미지를 로드합니다.
- 프레임 수를 가져오고 각 프레임을 반복합니다.
- 활성 TIFF 프레임을 스트림에 씁니다.
- TIFF 이미지의 각 바코드를 인식합니다.
C#에서 프로그래밍 방식으로 TIFF 이미지에서 바코드 읽기
다음 단계는 C#의 다중 페이지 TIFF 이미지에서 바코드를 읽는 방법을 보여줍니다.
- Image 클래스를 사용하여 원본 TIFF 이미지를 로드합니다.
- 프레임 수를 가져오고 각 프레임을 반복합니다.
- 활성 TIFF 프레임을 스트림에 씁니다.
- BarCodeReader 클래스를 사용하여 바코드를 인식합니다.
다음 코드 조각은 C#에서 프로그래밍 방식으로 다중 페이지 TIFF 이미지에서 바코드를 인식하는 방법을 보여줍니다.
// 필요한 TIFF 이미지를 엽니다.
using (System.Drawing.Image tiffImage = System.Drawing.Image.FromFile(dataDir + "MultiPageTiffWithBarcodes.tiff"))
{
// 프레임 수 가져오기
int tiffFrameCount = tiffImage.GetFrameCount(System.Drawing.Imaging.FrameDimension.Page);
// 각 tiff 프레임 처리
for (int i = 0; i < tiffFrameCount; i++)
{
// 활성 프레임 선택
tiffImage.SelectActiveFrame(System.Drawing.Imaging.FrameDimension.Page, i);
// TIFF 프레임을 스트림에 PNG로 저장
System.IO.MemoryStream ms = new System.IO.MemoryStream();
tiffImage.Save(ms, System.Drawing.Imaging.ImageFormat.Png);
ms.Position = 0;
// 페이지의 렌더링된 이미지에서 PDF417, QR 코드, 데이터 매트릭스 및 Aztec 바코드 유형을 인식합니다.
BarCodeRecognition.BarCodeReader reader = new BarCodeRecognition.BarCodeReader(ms, BarCodeRecognition.DecodeType.Pdf417, BarCodeRecognition.DecodeType.QR, BarCodeRecognition.DecodeType.DataMatrix, BarCodeRecognition.DecodeType.Aztec);
foreach (BarCodeRecognition.BarCodeResult result in reader.ReadBarCodes())
System.Console.WriteLine($"Barcode type:{result.CodeTypeName}, Barcode Data:{result.CodeText}");
}
}
무료 라이선스 받기
무료 임시 라이선스를 받아 평가 제한 없이 API를 평가할 수 있습니다.
결론
이 문서에서는 C#에서 프로그래밍 방식으로 다중 페이지 TIFF 이미지에서 바코드 이미지를 읽는 방법을 살펴보았습니다. PDF417, QR 코드, 데이터 매트릭스, Aztec 등과 같은 다양한 유형의 바코드를 스캔할 수 있습니다. 또한 문서 공간에서 API의 다른 많은 기능을 탐색할 수 있습니다. 질문에 대해 논의하고 싶은 경우 포럼에 글을 남겨주세요.