푸터 콘텐츠로 바로가기
바코드 도구

QR 코드 라이브러리(개발자 가이드)

QR 코드는 2D 바코드로, 전통적인 바코드보다 작고 접근하기 쉽습니다. 사람들이 정보에 접근하거나 이동 중에 좋아하는 브랜드와 연결할 수 있도록 자주 사용됩니다. QR 코드는 왼쪽 절반과 오른쪽 절반의 두 부분으로 구성되어 있습니다. 왼쪽 절반은 보통 검은 픽셀로 되어 있으며 오른쪽은 하얗습니다. QR 코드는 핸드폰이나 컴퓨터에서 전용 QR 코드 스캐너를 사용하여 코드를 빠르게 분석합니다. 이는 신용 카드 단말기와 유사한 Razor 기술을 사용하여 흰색 영역에 패턴으로 인코딩된 데이터를 캡처합니다. QR 코드는 매장 정보, 광고, 판촉, 쿠폰, 뉴스 기사 등의 정보를 표시하는 데 사용될 수 있습니다. 책 표지 앞에 QR 코드가 인쇄되어 있을 수 있지만, 더 일반적으로 책 표지의 뒷부분이나 게시판에 칩으로 들어가 있을 수 있습니다. QR 코드 기술은 예를 들어 학교 도서관에 책에 접근할 수 있도록 배치될 수 있습니다. QR 코드는 학생들이 도서관 내용을 배우는 데 도움을 줄 수 있을 뿐 아니라 무한대의 추가 정보에 대한 링크도 제공할 수 있습니다. 예를 들어 온라인 퀴즈가 학생들에게 제공될 수 있습니다.

QR 코드 기술은 마케팅 및 광고 캠페인, 전자상거래 웹사이트, POS 시스템, 비접촉식 결제 등 다양한 분야에서 활용될 수 있습니다. 꽤 오래전부터 존재해 왔지만 소비자들이 일상 생활에서 사용하기 시작한 것은 최근의 일입니다. QR 코드는 광고주와 소비자들 사이에서 인기를 얻고 있습니다. 주소나 전화번호를 입력하지 않고도 상품이나 서비스에 대한 빠른 정보를 얻을 수 있는 순조로운 방법을 제공합니다. 프로그래머로서 QR 코드 이미지를 만드는 방법이 얼마나 쉬운지 이 가이드를 통해 알아보세요.

이 기사에서는 JavaScript, Python 및 C#과 같은 다양한 언어를 사용하여 QR 코드를 프로그래밍 방식으로 스캔하고 생성하는 방법을 볼 수 있습니다. 자, 시작해 볼까요?

QuaggaJS: JavaScript 라이브러리

Qr Code Library 1 related to QuaggaJS: JavaScript 라이브러리

QuaggaJS는 바코드를 생성하는 JavaScript 라이브러리입니다. 현대 브라우저 기능을 활용하여 모든 플랫폼과 브라우저에서 작동하도록 합니다. 개발자들은 QuaggaJS를 빠른 성능, 휴대성 및 호환성 덕분에 널리 사용합니다. 이 JavaScript 라이브러리는 UPC-A, UPC-E, Code 128, Code 39, Interleaved 2 of 5 (ITF), EAN 8/13 등의 다양한 인코딩 타입을 지원합니다. 사용하기 위해 추가 종속성을 다운로드하거나 설치할 필요가 없습니다. QuaggaJS는 웹에서 복잡한 바코드와 같은 출력을 몇 줄의 코드만으로 생성하기 쉽게 만들어 줍니다. 모든 복잡성을 숨기고 기본값을 제공하면서 기반 HTML5 캔버스와 JavaScript API를 추상화한 고수준 API를 제공합니다.

QuaggaJS는 QR 코드를 디자인에 통합하려는 디지털 마케팅 솔루션을 만들려는 개발자와 디자이너들이 널리 사용합니다. 이 라이브러리는 React Native, Angular, Vue.js, Ionic 4 등 많은 프레임워크와도 호환됩니다.

QuaggaJS 라이브러리는 NPM 명령어로 설치할 수 있습니다. 프로젝트에서 QuaggaJS 라이브러리를 사용하는 코드 예제입니다:

// Initialize the QuaggaJS library for processing barcodes
Quagga.init({
    inputStream: {
        name: "Live",                // Stream type
        type: "LiveStream",          // Live stream from a webcam
        target: document.querySelector('#yourElement') // Target HTML element for rendering
    },
    decoder: {
        readers: ["code_128_reader"] // Barcode types to decode
    }
}, function(err) {
    if (err) {
        console.log(err);            // Log any initialization errors
        return;
    }
    console.log("Initialization finished. Ready to start");
    Quagga.start();                  // Start processing after initialization
});
// Initialize the QuaggaJS library for processing barcodes
Quagga.init({
    inputStream: {
        name: "Live",                // Stream type
        type: "LiveStream",          // Live stream from a webcam
        target: document.querySelector('#yourElement') // Target HTML element for rendering
    },
    decoder: {
        readers: ["code_128_reader"] // Barcode types to decode
    }
}, function(err) {
    if (err) {
        console.log(err);            // Log any initialization errors
        return;
    }
    console.log("Initialization finished. Ready to start");
    Quagga.start();                  // Start processing after initialization
});
JAVASCRIPT

정적인 이미지, 라이브 웹캠 또는 파일 API를 사용하여 바코드를 스캔할 수 있습니다.

Segno: Python 라이브러리

Qr Code Library 2 related to Segno: Python 라이브러리

Segno는 Python에서 바코드를 읽고, 쓰고, 생성하는 라이브러리입니다. 이 라이브러리로는 바코드 이미지를 쉽게 처음부터 만들 수 있습니다. Segno는 NumPy 배열을 사용하여 바코드를 효율적으로 인코딩하고 디코딩합니다. Segno의 문법은 Python의 turtle 모듈 중 하나와 유사하므로 빠르게 숙달할 수 있습니다. Segno는 단순함을 염두에 두고 설계되어 개발자가 바코드 생성에 대한 사전 지식 없이도 사용할 수 있습니다. 그러나 개발자가 더 많은 바코드 기능을 활용하고자 할 때 기능을 쉽게 확장할 수 있도록 강력한 API도 제공합니다.

Segno의 고유한 기능에는 바코드 데이터 필드에 따라 동일한 바코드 이미지를 여러 가지 방법으로 생성할 수 있습니다; 고정 크기, 가변 크기 또는 둘 다 지원합니다; 고해상도 래스터 출력을 지원합니다; 사용자가 이미지를 생성하는 데 도움을 줄 수 있는 툴팁이 있는 사이드바도 있습니다. Python 프로젝트에서 사용할 Segno 라이브러리 코드 예제입니다:

# Import the Segno library
import segno

# Create a QR code with specified data
qrcode = segno.make('Yellow Submarine')

# Save the generated QR code as a PNG file
qrcode.save('yellow-submarine.png')
# Import the Segno library
import segno

# Create a QR code with specified data
qrcode = segno.make('Yellow Submarine')

# Save the generated QR code as a PNG file
qrcode.save('yellow-submarine.png')
PYTHON

PIP 설치를 사용하여 설치할 수 있습니다.

IronBarcode: C# 바코드 라이브러리

Qr Code Library 3 related to IronBarcode: C# 바코드 라이브러리

IronBarcode는 바코드 표준 라이브러리를 지원하는 코드 객체 모음입니다. 여기에는 바코드 인코더, 바코드 생성기 및 편집기 등이 포함됩니다. 모바일 및 웹 애플리케이션 모두에 적합한 사용하기 쉬운 API를 제공합니다. IronBarcode는 어플리케이션 전체에서 재사용할 수 있는 표준화된 코드 객체 라이브러리를 제공하여 수작업 코딩 노력을 줄여줍니다. 이 객체들은 특정 프로세스를 자동화하여 개발 시간을 줄이고 표준화된 형태로 플랫폼 간에서 애플리케이션의 접근성을 높여줍니다.

IronBarcode는 사용의 용이성과 높은 성능 덕분에 오늘날 가장 빠르게 성장하는 라이브러리 중 하나입니다. iOS, Android, 웹 브라우저에서 변경 및 수정 없이 실행할 수 있는 IronBarcode는 다음 프로젝트에 탁월한 선택입니다. 이 라이브러리는 개발을 쉽게 하기 위해 바코드 생성에 추상화 계층과 표준 유틸리티 및 코드 스니펫을 제공합니다. 이 라이브러리를 가져와 생성된 코드를 전달하여 바코드를 생성하는 것이 유용합니다. 라이브러리 절차를 이해하기 위해 코드 예제를 살펴보겠습니다.

코드 예제

using IronBarCode;

//*******     WRITE A QR CODE      *******/

// Create a Barcode in 1 Line of Code
BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode", BarcodeWriterEncoding.QRCode).SaveAsJpeg("QuickStart.jpg");

//*******    READ A QR CODE    *******/

// Read a Barcode in 1 Line of Code. Gets text, numeric codes, binary data, and an image of the barcode
BarcodeResult result = BarcodeReader.QuicklyReadOneBarcode("QuickStart.jpg");

// Check the result of reading the QR code
if (result != null && result.Text == "https://ironsoftware.com/csharp/barcode")
{
    System.Console.WriteLine("Success!"); // Confirm the text matches
}
using IronBarCode;

//*******     WRITE A QR CODE      *******/

// Create a Barcode in 1 Line of Code
BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode", BarcodeWriterEncoding.QRCode).SaveAsJpeg("QuickStart.jpg");

//*******    READ A QR CODE    *******/

// Read a Barcode in 1 Line of Code. Gets text, numeric codes, binary data, and an image of the barcode
BarcodeResult result = BarcodeReader.QuicklyReadOneBarcode("QuickStart.jpg");

// Check the result of reading the QR code
if (result != null && result.Text == "https://ironsoftware.com/csharp/barcode")
{
    System.Console.WriteLine("Success!"); // Confirm the text matches
}
$vbLabelText   $csharpLabel

위의 코드는 IronBarcode 라이브러리를 사용하여 QR 코드를 생성하고 읽는 것입니다. 사용하기가 매우 간단합니다. 라이브러리를 가져와 몇 줄의 코드를 작성하면 바코드를 사용하고 읽을 준비가 됩니다.

using IronBarCode;

/*** EXPORTING BARCODES AS HTML FILES OR TAGS ***/

// Create a barcode object
GeneratedBarcode myBarCode = BarcodeWriter.CreateBarcode("1234567890", BarcodeWriterEncoding.Code128);

// Save as a stand-alone HTML file with no image assets required
myBarCode.SaveAsHtmlFile("MyBarCode.html");

// Save as a stand-alone HTML image tag which can be served in HTML files, ASPX, or MVC Views. No image assets required, the tag embeds the entire image in its src contents
string imgTag = myBarCode.ToHtmlTag();

// Turn the image into an HTML/CSS Data URI
string dataURI = myBarCode.ToDataUrl();
using IronBarCode;

/*** EXPORTING BARCODES AS HTML FILES OR TAGS ***/

// Create a barcode object
GeneratedBarcode myBarCode = BarcodeWriter.CreateBarcode("1234567890", BarcodeWriterEncoding.Code128);

// Save as a stand-alone HTML file with no image assets required
myBarCode.SaveAsHtmlFile("MyBarCode.html");

// Save as a stand-alone HTML image tag which can be served in HTML files, ASPX, or MVC Views. No image assets required, the tag embeds the entire image in its src contents
string imgTag = myBarCode.ToHtmlTag();

// Turn the image into an HTML/CSS Data URI
string dataURI = myBarCode.ToDataUrl();
$vbLabelText   $csharpLabel

IronBarcode는 QR 코드를 HTML 파일 또는 태그로 내보내는 것을 지원합니다. 테이블 태그로 내보낼 수 있습니다. 위의 코드는 QR 코드에서 HTML로 변환하는 것을 보여줍니다. 이 링크를 사용하여 IronBarcode 라이브러리 웹사이트에서 더 많은 정보를 얻을 수 있습니다.

라이선스

IronBarcode는 개발 단계에서 무료입니다. 무료 체험을 통해 상업적 사용 또는 프로덕션 수준에서 사용할 수 있습니다. IronBarcode는 개발자의 필요에 따라 세 가지 가격 계획을 제공합니다. 필요에 가장 적합한 옵션을 선택할 수 있습니다. Iron Software 제품 2개의 가격으로 5개의 Iron Software 제품의 전체 제공을 구입할 수 있습니다. 이 링크에서 더 많은 정보를 얻을 수 있습니다.

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

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

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

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me