QR Code Encoder

1 개요

2D 바코드 중 하나인 QR Code 코드를 생성하는 알고리즘입니다.

2 알고리즘 상세 설명

Result Image
Result Image
Fig. QR Code Encoding

3개의 Finder Pattern의 특징이 있습니다. 지원하는 코드 심볼은 QR Version1~40까지 모두 지원합니다.

3 파라미터 설정 및 사용 방법

4 예제 코드

CQRCodeEncoder qrCode;
//////////////////////////////////
// 공통 파라미터 설정
//////////////////////////////////

//////////////////////////////////
// 추가 옵션 설정
//////////////////////////////////

CQRCodeSpec codeSpec;

// Version 1~40중 적합한 것으로 인코딩
codeSpec.SetSymbolType(EQRCodeSymbolType1_Encoding_Auto, EQRCodeSymbolType2_Encoding_Auto);

// 패딩 크기
codeSpec.SetPaddingSize(20, 20, 20, 20);

// 데이터 영역 단위 픽셀 크기 설정
codeSpec.SetCellSize(4);

// 기본값으로 생략 가능
codeSpec.SetColorMode(EDataCodeColor_BlackOnWhite);
codeSpec.SetFlipMode(EDataCodeFlip_No);
codeSpec.SetImageFormat(EPixelFormat_C1_U8);

qrCode.SetQRCodeEncodingSpec(codeSpec);
qrCode.SetEncodingMessage(L"Fourth Logic");
qrCode.Execute();
CQRCodeEncoder qrCode = new CQRCodeEncoder();
//////////////////////////////////
// 공통 파라미터 설정
//////////////////////////////////

//////////////////////////////////
// 추가 옵션 설정
//////////////////////////////////

CQRCodeSpec codeSpec = new CQRCodeSpec();

// Version 1~40중 적합한 것으로 인코딩
codeSpec.SetSymbolType(EQRCodeSymbolType1.Encoding_Auto, EQRCodeSymbolType2.Encoding_Auto);

// 패딩 크기
codeSpec.SetPaddingSize(20, 20, 20, 20);

// 데이터 영역 단위 픽셀 크기 설정
codeSpec.SetCellSize(4);

// 기본값으로 생략 가능
codeSpec.SetColorMode(EDataCodeColor.BlackOnWhite);
codeSpec.SetFlipMode(EDataCodeFlip.No);
codeSpec.SetImageFormat(EPixelFormat.C1_U8);

qrCode.SetQRCodeEncodingSpec(codeSpec);
qrCode.SetEncodingMessage("Fourth Logic");
qrCode.Execute();

5 관련 알고리즘

CBarcodeDecoder, CBarcodeEncoder, CDataMatrixDecoder, CDataMatrixEncoder, CDataMatrixVerifier, CQRCCodeDecoder, CQRCCodeVerifier, CMicroQRCodeDecoder, CMicroQRCodeEncoder, CMicroQRCodeVerifier, CUnifiedDataCodeDecoder,