IRONSOFTWAREHOME
IRONQR 사용

ASP.NET .NET Core 에서 QR 코드를 생성하는 방법

Curtis Chau
Curtis Chau
Updated: 2026년 4월 21일

QR 코드는 정보를 저장하고 전달하는 편리한 방법을 제공하는 현대 기술의 필수 요소가 되었습니다. 웹 개발에서는 IronQR를 사용하여 ASP.NET Core에서 구현할 QR 코드 생성기가 동적인 QR 코드 생성을 위한 견고한 기능을 제공합니다. QR 코드 생성기는 티켓 시스템, 인증, 재고 관리 등 다양한 용도에 귀중합니다. 이 기사는 IronQR를 사용하여 ASP.NET Core에서 QR 코드를 생성하는 과정에 대해 자세히 설명합니다. ASP.NET Core는 웹 애플리케이션을 구축하는 다목적 프레임워크로, QR 코드 생성에 대한 강력한 기능을 제공합니다. 이 기사에서는 IronQR라는 강력한 라이브러리를 사용하여 ASP.NET Core에서 QR 코드를 생성하는 과정을 탐구할 것이며, 이는 Iron Software의 QR 코드 생성에 사용할 수 있는 것입니다.

ASP.NET Core에서 QR 코드 생성 방법

  1. Visual Studio를 사용하여 ASP.Net 프로젝트 생성
  2. IronQR 라이브러리를 패키지 관리자에서 설치
  3. QR 코드 생성
  4. 형식을 지정하여 QR 코드 생성

IronQR 이해하기

IronQR은 .NET 응용 프로그램을 위한 고성능 QR 코드 생성 라이브러리입니다. 다양한 사용자 정의 옵션과 함께 QR 코드를 생성하기 위한 간단하고 직관적인 API를 제공합니다. IronQR는 .NET Standard를 지원하여 ASP.NET Core를 포함한 다양한 플랫폼과 호환됩니다. IronQR를 사용하여 개발자는 다양한 데이터 유형, 오류 수정 수준, 크기 및 형식으로 QR 코드를 손쉽게 생성할 수 있습니다.

주요 기능

1. QR 코드 읽기 및 생성

IronQR는 QR 코드를 쉽게 생성하고 읽을 수 있습니다. QR 코드를 동적으로 생성하거나 기존 QR 코드에서 정보를 추출해야 할 경우, 이 라이브러리가 도움이 됩니다.

2. 사용자 친화적 API

이 라이브러리는 개발자가 .NET 프로젝트에 빠르게 바코드 기능을 통합할 수 있는 사용자 친화적 API를 제공합니다. 몇 분 안에 QR 코드 작업을 시작할 수 있습니다.

3. 호환성

IronQR는 다양한 .NET 버전을 지원합니다:

  1. C#, VB.NET, F#
  2. .NET Core (8, 7, 6, 5 및 3.1+)
  3. .NET Standard (2.0+)
  4. .NET Framework (4.6.2+)

웹 프로젝트(Blazor & WebForms), 모바일(Xamarin & MAUI), 데스크톱(WPF & MAUI), 콘솔 응용 프로그램을 포함하여 다양한 프로젝트 유형을 포괄합니다.

4. QR 코드 감지를 위한 머신러닝 모델

IronQR는 QR 코드를 감지하기 위한 고급 맞춤형 머신러닝 모델을 사용합니다. 이는 정확하고 신뢰할 수 있는 코드 인식을 보장합니다. 추가적으로, 가벼운 접근을 선호하는 사람들을 위한 슬림 모드 옵션(비ML)도 있습니다.

5. QR 코드 읽기

다양한 이미지 형식에서 QR 코드를 읽을 수 있습니다:

  1. 이미지(jpg, png, svg, bmp)
  2. 다중 페이지 이미지(gif, tif, tiff)
  3. System.Drawing 비트맵
  4. IronDrawing 이미지 (AnyBitmap)

6. QR 코드 작성

IronQR는 다양한 문서 유형에 대한 QR 코드를 작성할 수 있습니다:

  1. 이미지(jpg, png, gif, tiff, bmp)
  2. System.Drawing 이미지
  3. 스트림 (MemoryStream, byte[])
  4. PDF (기존 PDF에 스탬프)

7. QR 코드 스타일링

크기 조정, 여백과 테두리 조정, 색상 변경, 로고 추가를 통해 QR 코드를 사용자 정의합니다.

8. 오류 처리 및 수정

IronQR는 자세한 오류 메시지를 제공하고 사용자 정의 QR 오류 수정 수준을 지원합니다.

이제 ASP.NET Core에서 QR 코드를 생성하는 응용 프로그램을 시작해봅시다.

1단계: Visual Studio를 사용하여 새 ASP.NET 프로젝트 생성

QR 코드 생성에 들어가기 전에, 새 ASP.NET Core 프로젝트를 설정해봅시다. 새 프로젝트를 시작하는 단계는 다음과 같습니다:

Visual Studio에서 새 프로젝트를 생성하고 ASP.Net Core 웹 앱 응용 프로그램 템플릿을 선택하여 시작

ASP .NET Core에서 QR 코드를 생성하는 방법: 그림 1 - ASP.NET CORE 웹 애플리케이션 템플릿 선택

프로젝트 이름과 위치를 제공하세요

ASP .NET Core에서 QR 코드를 생성하는 방법: 그림 2 - 프로젝트와 저장할 위치 이름 설정

필요한 .NET 버전을 선택하세요.

ASP .NET Core에서 QR 코드를 생성하는 방법: 그림 3 - 올바른 .NET 버전 선택

"생성" 버튼을 클릭하여 템플릿에서 애플리케이션 코드를 생성합니다

ASP .NET Core에서 QR 코드를 생성하는 방법: 그림 4 - 템플릿 코드를 생성하려면

단계 2: 패키지 관리자에서 IronQR 라이브러리 설치

아래와 같이 Visual Studio 패키지 관리자에서 IronQR 라이브러리를 설치하세요.

ASP .NET Core에서 QR 코드를 생성하는 방법: 그림 5 - Visual Studio 패키지 관리자를 사용하여 IronOCR 검색 및 설치

IronQR는 NuGet 패키지 관리자를 통해서도 설치할 수 있습니다.

ASP .NET Core에서 QR 코드를 생성하는 방법: 그림 6 - NuGet 패키지 관리자를 사용하여 IronOCR 검색

단계 3: QR 코드 생성

이제 QR 코드 앱을 만들어 봅시다.

QRCode 모델 생성

using System.ComponentModel.DataAnnotations;

namespace GenerateQRCode.Models
{
    public class QRCodeModel
    {
        [Display(Name = "Enter QR Code Text")]
        public string QRCodeText { get; set; }
    }
}

QR 코드 컨트롤러 생성

새 컨트롤러를 추가하려면 컨트롤러 폴더를 마우스 오른쪽 버튼으로 클릭하고 아래와 같이 이름을 제공하십시오.

ASP .NET Core에서 QR 코드를 생성하는 방법: 그림 7 - 폴더를 클릭하여 새 컨트롤러 추가하고 이름 지정

빈 컨트롤러를 선택하세요.

ASP .NET Core에서 QR 코드를 생성하는 방법: 그림 8 - 프롬프트에서 빈 컨트롤러 클릭

이름을 제공하세요.

ASP .NET Core에서 QR 코드를 생성하는 방법: 그림 9 - 컨트롤러 이름 지정

다음으로, 아래 코드를 컨트롤러에 통합합니다.

using GenerateQRCode.Models;
using IronSoftware.Drawing;
using IronQr;
using Microsoft.AspNetCore.Mvc;

namespace GenerateQRCode.Controllers
{
    public class QrCodeController : Controller
    {
        private readonly IWebHostEnvironment _environment;

        public QrCodeController(IWebHostEnvironment environment)
        {
            _environment = environment;
        }

        public IActionResult Index()
        {
            return View();
        }

        [HttpPost]
        public IActionResult CreateQRCode(QRCodeModel generateQRCode)
        {
            try
            {
                string path = Path.Combine(_environment.WebRootPath, "GeneratedQRCode");
                if (!Directory.Exists(path))
                {
                    Directory.CreateDirectory(path);
                }
                string filePath = Path.Combine(_environment.WebRootPath, "GeneratedQRCode/qrcode.png");
                // Create a QR Code object
                QrCode myQr = QrWriter.Write(generateQRCode.QRCodeText);
                // Save QR Code as a Bitmap
                AnyBitmap qrImage = myQr.Save();
                // Save QR Code Bitmap as File
                qrImage.SaveAs(filePath);
                string fileName = Path.GetFileName(filePath); // qr code file
                string imageUrl = $"{this.Request.Scheme}://{this.Request.Host}{this.Request.PathBase}" + "/GeneratedQRCode/" + fileName;
                ViewBag.QrCodeUri = imageUrl;
            }
            catch (Exception)
            {
                throw;
            }
            return View();
        }
    }
}

코드 설명

네임스페이스 및 클래스 정의

코드는 필요한 네임스페이스를 가져오는 using 문으로 시작합니다. GenerateQRCode.Controllers 네임스페이스에는 QrCodeController 클래스가 포함되어 있습니다.

컨트롤러 생성자

QrCodeController 클래스에는 IWebHostEnvironment 매개변수를 받는 생성자가 있습니다. 이 매개변수는 웹 호스팅 관련 작업을 처리하기 위해 ASP.NET Core가 주입합니다.

Action 방법

  • Index(): 이 메서드는 접근 시 보기를 반환합니다 (일반적으로 HTML 페이지). QR 코드 생성과 직접적인 관련은 없어 보입니다.
  • CreateQRCode(QRCodeModel generateQRCode): 이 메서드는 QR 코드 생성 로직의 핵심입니다. QRCodeModel 개체(일반적으로 QR 코드 텍스트가 포함됨)를 매개변수로 받습니다.

방법 내부

  • 생성된 QR 코드 이미지 저장 경로를 구성합니다.
  • QrWriter.Write(generateQRCode.QRCodeText)을 사용하여 QR 코드 개체를 생성합니다.
  • QR 코드를 비트맵 이미지로 저장합니다.
  • 웹 요청 세부 정보를 기반으로 이미지 URL을 구성합니다.
  • 이미지 URL과 함께 ViewBag.QrCodeUri 속성을 설정합니다.
  • 이 과정에서 예외가 발생하면 던져집니다.

QR 코드 생성

실제 QR 코드 생성은 CreateQRCode 메서드 내에서 수행됩니다. QrWriter.Write(generateQRCode.QRCodeText) 호출은 제공된 텍스트를 기반으로 QR 코드 개체를 생성합니다.

이미지 저장

qrImage.SaveAs(filePath)을 사용하여 생성된 QR 코드를 비트맵 이미지로 저장합니다. 이미지 파일 경로는 웹 루트 경로와 원하는 파일 이름을 기반으로 구성됩니다.

이미지 URL

imageUrl는 웹 요청의 스킴, 호스트 및 경로 베이스를 사용하여 구성됩니다. 이 URL은 생성된 QR 코드 이미지에 접근할 수 있는 위치를 가리킵니다. 전체적으로 이 컨트롤러는 QR 코드 생성, 이미지 저장, 그리고 추가 사용을 위한 이미지 URL 제공을 처리합니다.

컨트롤러에 뷰 추가

새로운 보기를 추가하려면 QrCodeController 클래스의 CreateQRCode 액션 메서드를 오른쪽 클릭하세요.

ASP .NET Core에서 QR 코드를 생성하는 방법: 그림 10 - QrCodeController 클래스에 새 보기 추가

"뷰 추가"를 선택한 다음 "Razor 뷰"를 선택합니다. "추가" 버튼을 클릭합니다.

ASP .NET Core에서 QR 코드를 생성하는 방법: 그림 11 - 보기 추가 옵션을 선택한 후 Razor 보기 선택, 추가 클릭

그런 다음 "생성" 템플릿과 이전에 생성된 모델 클래스를 선택합니다.

ASP .NET Core에서 QR 코드를 생성하는 방법: 그림 12 - 이전에 생성된 Create 템플릿 선택

이제 뷰에 아래 코드를 대체합니다.

@model GenerateQRCode.Models.QRCodeModel

@{
    ViewData["Title"] = "Generate QR Code";
}

<h1>Generate QR Code</h1>
<h4>QRCodeModel</h4>
<hr />
<div class="row">
    <div class="col-md-4">
        <form asp-action="CreateQRCode">
            <div asp-validation-summary="ModelOnly" class="text-danger"></div>
            <div class="form-group">
                <label asp-for="QRCodeText" class="control-label"></label>
                <input asp-for="QRCodeText" class="form-control" />
                <span asp-validation-for="QRCodeText" class="text-danger"></span>
            </div>
            <div class="form-group">
                <a href="#" class="btn btn-primary">Create QR Code</a>
            </div>
            <div class="form-group">
                <img src="@ViewBag.QrCodeUri" class="img-thumbnail" alt="Your QR Code will appear here." />
            </div>
        </form>
    </div>
</div>
<div>
    <a asp-action="Index">Clear</a>
</div>
@section Scripts {
    @{await Html.RenderPartialAsync("_ValidationScriptsPartial");}
}

앱이 시작될 때 POST 요청에 대한 오류를 발생시키지 않도록 인덱스 액션 메서드에서도 동일하게 수행합니다.

이제 Program.cs에서 위의 보기를 기본 경로로 설정하기 위해 코드를 다음과 같이 변경합니다.

app.MapControllerRoute(
    name: "default",
    pattern: "{controller=QrCode}/{action=Index}"
);

이 동작은 기본 경로를 HomeController에서 QrCodeController으로 수정합니다.

이제 프로젝트를 컴파일하고 실행합니다.

ASP .NET Core에서 QR 코드를 생성하는 방법: 그림 13 - 프로젝트의 예제 홈페이지

텍스트 상자에 원하는 텍스트를 입력하고 '생성'을 클릭합니다. 아래와 같이 새로운 QR 코드가 생성됩니다.

ASP .NET Core에서 QR 코드를 생성하는 방법: 그림 14 - 아무 텍스트를 입력하고 생성 클릭하여 IronQR을 이용해 새 QR 코드 생성

QR 코드에 스타일 추가

QrStyleOptions는 QR 코드 생성 스타일 지정에 사용됩니다.

[HttpPost]
public IActionResult CreateQRCode(QRCodeModel generateQRCode)
{
    try
    {
        string path = Path.Combine(_environment.WebRootPath, "GeneratedQRCode");
        if (!Directory.Exists(path))
        {
            Directory.CreateDirectory(path);
        }
        string filePath = Path.Combine(_environment.WebRootPath, "GeneratedQRCode/qrcode.png");

        // Create a QR Code object
        QrCode qrCode = QrWriter.Write(generateQRCode.QRCodeText);
        QrStyleOptions style = new QrStyleOptions
        {
            Dimensions = 300, // px size
            Margins = 10,     // px margins
            Color = Color.YellowGreen // custom color
        };

        // Save QR Code with style options as a bitmap
        AnyBitmap qrImage = qrCode.Save(style);
        // Save QR Code Bitmap to File
        qrImage.SaveAs(filePath);

        string fileName = Path.GetFileName(filePath); // qr code file
        string imageUrl = $"{this.Request.Scheme}://{this.Request.Host}{this.Request.PathBase}" + "/GeneratedQRCode/" + fileName;
        ViewBag.QrCodeUri = imageUrl;
    }
    catch (Exception)
    {
        throw;
    }
    return View();
}

산출

ASP .NET Core에서 QR 코드를 생성하는 방법: 그림 15 - 프로그래밍적으로 QR 코드의 색상 조정

라이선스 (체험판 이용 가능)

IronQR을 테스트하려는 개발자는 여기에서 체험판 라이센스를 사용할 수 있습니다. 이 라이선스 키는 appSettings.json 파일에 배치되어야 합니다. 이렇게 하면 위의 이미지에 표시된 워터마크가 제거됩니다.

{
  "IronQr.License.LicenseKey": "My key"
}
JSON

결론

이 기사에서는 IronQR을 사용하여 ASP.NET Core에서 QR 코드를 생성하는 방법을 탐구했습니다. IronQR의 기능을 활용하여 개발자는 웹 애플리케이션에 QR 코드 생성 기능을 쉽게 통합할 수 있습니다. 티켓팅, 인증, 정보 공유 등 다양한 용도로, QR 코드는 데이터를 효율적으로 전송하는 다목적 솔루션을 제공합니다. IronQR을 사용하면 ASP.NET Core에서 QR 코드를 생성하고 맞춤화하는 것이 그 어느 때보다 쉬워졌습니다. QR 코드 생성을 ASP.NET Core 프로젝트에 통합하여 동적 데이터 인코딩 및 공유의 가능성을 열어보세요.

Curtis Chau
기술 문서 작성자

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

...
더 읽어보기

관련 기사

Key in blue circle

무료 30일 체험 키를 즉시 받으세요.

Your trial license will be sent to your email address

제한 없음. 100% 무제한 이용. 신용카드 불필요.

bullet_checked신용카드나 계정 생성은 필요하지 않습니다.제한 없음. 100% 무제한 이용. 신용카드 불필요.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
무료 라이브 데모를 예약하세요
Booking Badge

전 세계 수백만 엔지니어들이 신뢰하는 제품입니다.

Iron Software의 고객 로고
부담 없는 무료 상담을 받아보세요
아래 양식을 작성하시거나 sales@ironsoftware.com으로 이메일을 보내주세요.
고객님의 정보는 항상 비밀로 유지됩니다.
전 세계 수백만 엔지니어들이 신뢰하는 제품입니다.
Iron Software의 고객 로고
지금 바로 30일 무료 체험판 키를 받으세요.
신용카드나 계정 생성은 필요하지 않습니다.