跳至頁尾內容
使用IRONBARCODE

如何為連結建立QR碼(C#教程)

1.0 簡介

快速回應碼(QR Code)源自日本汽車行業。 它也被稱為QR符號、QR圖形或QR程式碼圖形。 它是由原博設立於1994年,最初應用是作為一種快速且簡單的工具,用於監控車輛在工廠組裝時的進度。 自那時以來,QR碼作為條碼替代的使用顯著增加,不僅限於汽車製造業。 這要歸功於其更快的讀取速度和儲存容量。 QR碼除追蹤和識別產品外,還可用於交換和儲存資訊以進行營銷及社交媒體網站和賬戶的目的。 從應用中生成的靜態QR碼可以用相機應用程式掃描。

2.0 IronBarcode 特性

使用IronBarcode的QR碼程式庫,建立動態QR碼非常簡單。 只需幾行程式碼,這個簡單的程式庫就可以快速生成QR碼。 IronBarcode可以生成高質量的QR碼,並使QR碼掃描器更容易讀取自定義程式碼。

  • IronBarcode可以讀寫大多數條碼格式和QR標準,包括UPC A/E、EAN 8/13、Code 39/93/128、ITF、MSI、RSS 14/擴展、Databar和CodaB。
  • IronBarcode能夠讀取掃描和實時影片幀,並糾正旋轉、噪音、失真和傾斜。 IronBarcode自動預處理條碼圖像,以提高生成QR碼時的讀取效率和準確性。 它們允許內容編輯,因此動態QR碼特別受歡迎。
  • IronBarcode可以在多個核心和執行緒上運行(對於批量處理伺服器特別有用)。
  • IronBarcode可以在單頁和多頁文件中自動定位一個或多個條碼。
  • IronBarcode支持.NET Framework和.NET Core實現,且支持32位和64位架構。
  • IronBarcode支持PC和移動平台上的控制台、桌面、雲端和網頁應用程式。
  • IronBarcode能夠為PDF、JPG、TIFF、GIF、BMP、PNG和HTML等多種文件和流格式生成QR碼圖像。

3.0 建立QR碼圖片

3.1 從Windows/控制台應用程式使用IronBarcode

本文的後續部分將展示一個例子,說明我們的程式庫如何輕鬆生成QR碼。

步驟1. 為建立QR碼建立新專案

打開Visual Studio並點擊檔案選單選項中的新專案

選擇控制台應用程式模板後,點擊下一步。

如何為連結製作QR碼(C#教學):圖1

在專案名稱文字區域輸入任意您選擇的專案名稱(例如,QR Code Generator),然後在位置字段中輸入新專案的位置。 然後單擊下一步按鈕繼續。

如何為連結製作QR碼(C#教學):圖2

從框架下拉選項中選擇一個.NET Framework(此處,我們使用.NET 6.0(長期支援)),然後單擊建立。

如何為連結製作QR碼(C#教學):圖3

步驟2. 安裝IronBarcode程式庫

在包管理控制台中輸入以下程式碼來下載所需的IronBarcode程式庫:

Install-Package BarCode

如何為連結製作QR碼(C#教學):圖4

或者,我們可以使用NuGet包管理進行搜索並下載"IronBarcode"包,這將列出所有結果並允許我們選擇要下載的包。

如何為連結製作QR碼(C#教學):圖5

步驟3. 生成QR碼圖片

IronBarcode允許我們用幾行程式碼建立QR碼。 使用QRCodeWriter.CreateQrCode方法來建立新的QR碼,如下程式碼所示:

using IronBarCode;

// Create a QR code with a specified URL and dimensions,
// and save it as a PNG file.
QRCodeWriter.CreateQrCode("www.google.com", 500, QRCodeWriter.QrErrorCorrectionLevel.Medium, 0).SaveAsPng("NewQR.png");
using IronBarCode;

// Create a QR code with a specified URL and dimensions,
// and save it as a PNG file.
QRCodeWriter.CreateQrCode("www.google.com", 500, QRCodeWriter.QrErrorCorrectionLevel.Medium, 0).SaveAsPng("NewQR.png");
Imports IronBarCode

' Create a QR code with a specified URL and dimensions,
' and save it as a PNG file.
QRCodeWriter.CreateQrCode("www.google.com", 500, QRCodeWriter.QrErrorCorrectionLevel.Medium, 0).SaveAsPng("NewQR.png")
$vbLabelText   $csharpLabel

編碼在程式碼圖像中的資料(可能是URL或流)是CreateQrCode方法的唯一必需參數。 此外,該方法還接受三個可選參數:

  • 圖形的預設尺寸為500像素寬乘500像素高。
  • 錯誤更正級別。 IronBarcode提供四個錯誤更正級別:低、中、高和最高。 預設情況下,CreateQrCode方法使用最高的更正級別 (QRCodeWriter.QrErrorCorrectionLevel.Highest)。
  • QR碼的版本號。 要獲得可接受的版本列表,請存取此頁面。 如果值為0(預設值),方法將根據將要編碼的資料使用正確的版本號。

上面的範例使用中等級別的錯誤更正生成了一個500乘500像素的圖形來建立自定義QR碼。 接下來,我們可以調用SaveAsPng方法將生成的QR碼儲存為指定文件位置的PNG文件。

如何為連結製作QR碼(C#教學):圖6

然後,我們將查看一個範例使用案例,其中使用者或公司希望在生成的QR碼中新增公司徽標。 要完成此任務,在下面的範例程式碼中使用QrCodeWriter.CreateQrCodeWithLogo方法。

using System.Drawing; // Necessary for Color type

// Create a QR code with a logo included.
var QRWithLogo = QRCodeWriter.CreateQrCodeWithLogo("www.google.com", "qrWithlogo.png", 500);

// Customize the color of the QR code using the ChangeBarCodeColor method.
QRWithLogo.ChangeBarCodeColor(Color.DarkRed);

// Save the customized QR code as a new PNG file.
QRWithLogo.SaveAsPng("NewQR_Code.png");
using System.Drawing; // Necessary for Color type

// Create a QR code with a logo included.
var QRWithLogo = QRCodeWriter.CreateQrCodeWithLogo("www.google.com", "qrWithlogo.png", 500);

// Customize the color of the QR code using the ChangeBarCodeColor method.
QRWithLogo.ChangeBarCodeColor(Color.DarkRed);

// Save the customized QR code as a new PNG file.
QRWithLogo.SaveAsPng("NewQR_Code.png");
Imports System.Drawing ' Necessary for Color type

' Create a QR code with a logo included.
Private QRWithLogo = QRCodeWriter.CreateQrCodeWithLogo("www.google.com", "qrWithlogo.png", 500)

' Customize the color of the QR code using the ChangeBarCodeColor method.
QRWithLogo.ChangeBarCodeColor(Color.DarkRed)

' Save the customized QR code as a new PNG file.
QRWithLogo.SaveAsPng("NewQR_Code.png")
$vbLabelText   $csharpLabel

在上面的範例中,我們將URL "www.google.com"的字串值編碼為一個新的QR碼,該QR碼將該網站中的圖像嵌入到給定的文件位置。

上面的QR碼中包含圖形。 徽標自動定位到該大小並調整大小以匹配QR碼方格,以便純程式碼仍然可被閱讀。 我們還可以使用ChangeBarCodeColor方法自定義QR地址條碼的顏色,該方法提供了一系列可用於QR碼的程式碼顏色。 一種使用顏色型別,而另一種則使用HTML十六進制顏色表示法,如下所示:

QRWithLogo.ChangeBarCodeColor(System.Drawing.ColorTranslator.FromHtml("#8B0000"));
QRWithLogo.ChangeBarCodeColor(System.Drawing.ColorTranslator.FromHtml("#8B0000"));
QRWithLogo.ChangeBarCodeColor(System.Drawing.ColorTranslator.FromHtml("#8B0000"))
$vbLabelText   $csharpLabel

上面的程式碼行指定了條碼的深紅色。 然後,按照程式碼指示,我們將其保存為PNG文件。我們還可以將QR碼保存為其他文件格式,例如HTML:

QRWithLogo.SaveAsHtmlFile("test.html");
QRWithLogo.SaveAsHtmlFile("test.html");
QRWithLogo.SaveAsHtmlFile("test.html")
$vbLabelText   $csharpLabel

上述源程式碼的結果顯示在下面的圖像中。

如何為連結製作QR碼(C#教學):圖7

QR碼可以以HTML等其他格式保存:

QRWithLogo.SaveAsHtmlFile("test.html");
QRWithLogo.SaveAsHtmlFile("test.html");
QRWithLogo.SaveAsHtmlFile("test.html")
$vbLabelText   $csharpLabel

如何為連結製作QR碼(C#教學):圖8

使用IronBarcode QR碼生成器網站

IronBarcode也可以在網頁應用程式中使用。 以下提供了MVC .NET core 6.0範例程式碼。

public IActionResult Index()
{
    // Generate a QR code for www.google.com
    var barcode = QRCodeWriter.CreateQrCode("www.google.com", 500, QRCodeWriter.QrErrorCorrectionLevel.Medium, 0);

    // Save the QR code as a PNG file
    barcode.SaveAsPng("Barcode.png");

    // Get the file path to the saved QR code
    var filePath = Path.Combine(Directory.GetCurrentDirectory(), "Barcode.png");

    // Return the file as a physical file result to be downloaded
    return PhysicalFile(filePath, "image/png", "Barcode.png");
}
public IActionResult Index()
{
    // Generate a QR code for www.google.com
    var barcode = QRCodeWriter.CreateQrCode("www.google.com", 500, QRCodeWriter.QrErrorCorrectionLevel.Medium, 0);

    // Save the QR code as a PNG file
    barcode.SaveAsPng("Barcode.png");

    // Get the file path to the saved QR code
    var filePath = Path.Combine(Directory.GetCurrentDirectory(), "Barcode.png");

    // Return the file as a physical file result to be downloaded
    return PhysicalFile(filePath, "image/png", "Barcode.png");
}
Public Function Index() As IActionResult
	' Generate a QR code for www.google.com
	Dim barcode = QRCodeWriter.CreateQrCode("www.google.com", 500, QRCodeWriter.QrErrorCorrectionLevel.Medium, 0)

	' Save the QR code as a PNG file
	barcode.SaveAsPng("Barcode.png")

	' Get the file path to the saved QR code
	Dim filePath = Path.Combine(Directory.GetCurrentDirectory(), "Barcode.png")

	' Return the file as a physical file result to be downloaded
	Return PhysicalFile(filePath, "image/png", "Barcode.png")
End Function
$vbLabelText   $csharpLabel

我們對Windows/控制台程式使用的程式碼與上面提供的程式碼相同。 上述程式碼首先生成一個QR碼文件,然後返回它。 使用者可以下載QR碼為PNG文件。我們還可以使其可用于移動裝置和在線表單。

如何為連結製作QR碼(C#教學):圖9

如何為連結製作QR碼(C#教學):圖10

有關IronBarcode的更多程式碼教程,請單擊此處

4.0 結論

IronBarcode是建立和識別條碼的最有效的程式庫之一。 此外,這是建立和讀取條碼最快的程式庫之一。 該程式庫與不同的作業系統相容。

它支持開發並支持多種條碼格式。 我們可以更改顏色、線寬、高度、條碼文字等等。

您可以在此處找到許可資訊。 開發者許可下提供免費QR碼生成程式庫,還有IronBarcode的高級版。 它包括一年的免費支持和更新。

使用者還可以從包括IronBarcodeIronXLIronPDF等的五個專業ASP.NET core程式庫中受益於Iron Suite

常見問題

QR Code在現代應用中的意義是什麼?

QR Code提供了一種快速而有效的方式來儲存和交換資訊,這使其在許多現代應用中至關重要,如行銷、產品追蹤和支付系統。IronBarcode使為這些應用生成和自定義QR Code變得簡單。

如何在C#中為網頁連結建立QR Code?

您可以透過調用 QRCodeWriter.CreateQrCode 方法並將URL作為參數,使用IronBarcode為網頁連結建立QR Code。自定義QR Code外觀,並以PNG或PDF格式儲存。

使用IronBarcode生成QR Code有什麼優勢?

IronBarcode提供了高品質的QR Code生成,具有可自定義的功能,如顏色變化和嵌入Logo。它支持各種條碼格式和文件輸出,使其適用於不同的應用。

如何將QR Code生成整合到.NET Web應用中?

要將QR Code生成整合到.NET Web應用中,請將IronBarcode與MVC Dot Net core 6.0一起使用。該程式庫允許您在Web應用中動態生成QR Code,並支持多種下載格式。

我可以使用該程式庫自定義QR Code的尺寸和錯誤更正級別嗎?

是的,IronBarcode允許您自定義QR Code的尺寸和錯誤更正級別。使用帶有特定參數的 CreateQrCode 方法以根據您的需求調整這些功能。

如何在C#中為QR Code新增Logo?

要在C#中的QR Code上新增Logo,請使用IronBarcode的 QRCodeWriter.CreateQrCodeWithLogo 方法。此功能允許您將Logo嵌入在QR Code中,同時保持程式碼可讀性,提高品牌能見度。

有關QR Code生成問題有哪些故障排除提示?

如果您遇到QR Code生成問題,請確保程式庫通過NuGet正確安裝,並且所有方法都按照說明檔使用。檢查有無與您的專案設置或.NET版本的相容性問題。

使用該程式庫生成的QR Code支持哪些文件格式的保存?

IronBarcode支持以多種文件格式保存QR Code,包括PDF、JPG、TIFF、GIF、BMP、PNG和HTML,提供不同使用需求的靈活性。

QR Code生成程式庫是否有免費版本可用?

是的,IronBarcode為開發者提供了QR Code生成程式庫的免費版本。還有一個包含其他功能、支援和更新的高階版本。

Curtis Chau
技術作家

Curtis Chau擁有Carleton大學的電腦科學學士學位,專精於前端開發,擁有Node.js、TypeScript、JavaScript和React的專業知識。Curtis熱衷於建立直觀且美觀的使用者介面,喜愛使用現代框架並建立結構良好、視覺吸引力的手冊。

除了開發,Curtis對物聯網(IoT)有濃厚的興趣,探索創新的方法來整合硬體和軟體。在空閒時間,他喜歡玩遊戲和建立Discord機器人,結合他對技術的熱愛與創造力。

Iron 支援團隊

我們線上24小時,每週5天。
聊天
電子郵件
給我打電話