跳過到頁腳內容
使用IRONBARCODE

如何在Blazor中生成QR碼

本文說明開發人員如何使用 IronBarcode 庫在 C# 項目中生成 QR 碼。

class="hsg-featured-snippet">

如何在 Blazor 中生成 QR 碼

  1. 下載 C# 庫以在 Blazor 中生成 QR 碼
  2. 使用CreateQrCode方法創建 QR 碼
  3. 將生成的 QR 碼轉換為 HTML 標籤字符串
  4. 將信息通過 razor 文件中的MarkupString傳遞
  5. 使用SaveAsPng方法將生成的 QR 碼保存為 PNG 圖像

IronBarcode - C#

IronBarcode是一個 C# 條碼和 QR 碼庫,允許您在任何 .NET C# 應用程序中輕鬆讀取和生成條碼和 QR 碼。 它優先考慮速度、準確性和易用性以適用於 C#

IronBarcode 是一個用戶友好的庫,允許開發人員在 C# 項目中輕鬆添加、讀取和設置 QR 碼的樣式,通常只需幾分鐘。 它使開發人員能夠創建不同格式的 QR 碼,比如 Aztec、Data Matrix、MaxiCode。 使用 IronBarcode 可用不同的條碼類型,例如 Code 39、Code 128、RSS14 等。

IronBarcode 與所有 .NET Framework 語言兼容,即 C#、F# 和 VB.NET。 它支持下列所有 .NET 平台:

  • .NET 7, 6 和 5
  • .NET Core 2x 和 3x
  • .NET Standard 2
  • .NET Framework 4.6.2+

如何在 Blazor Server 應用程序中生成 QR 碼?

先決條件

要在 Blazor Web 應用程序中以 C# 創建 QR 碼,我們需要以下組件:

  1. Visual Studio - 這是用於 C# 開發的一個集成開發環境 (IDE)。 可以從 Visual Studio 網站下載。 或者,您可以使用任何其他支持 C# 的 IDE。
  2. Blazor Server App: 創建 Blazor Server 應用程序是主要任務。 按照以下步驟創建一個 Blazor 服務器 Web 應用程序。
    • 打開您的 IDE 或 Visual Studio。 單擊“創建新項目”。

如何在 Blazor 中生成 QR 碼:圖 1

  • 從可用的項目選項中選擇 Blazor Server App。

如何在 Blazor 中生成 QR 碼:圖 2

  • 接下來,設置位置並命名項目。

如何在 Blazor 中生成 QR 碼:圖 3

  • 接下來,設置項目的額外信息。 選擇適當的 .NET Framework 版本。 IronBarcode 支持 .NET 版本 2 到 7,其中 .NET 7 是最新的。

如何在 Blazor 中生成 QR 碼:圖 4

  1. IronBarcode - .NET QR 碼和條碼庫,有助於生成和讀取不同的條碼類型。以下是安裝 IronBarcode 的不同方法:
    • NuGet 網站直接下載 IronBarcode。
    • 通過 Visual Studio 工具中的“為解決方案管理 NuGet 包”或右鍵單擊解決方案資源管理器選擇“NuGet 包管理器”進行安裝。
    • 從 Iron Software 網站直接下載 IronBarcode DLL

添加 IronBarcode 命名空間

一切安裝就緒後,將以下程序集引用添加到您的 Blazor 條碼應用程序的“Imports.razor”文件中:

@using IronBarCode

如何在 Blazor 中生成 QR 碼:圖 5

添加許可密鑰

必須獲得 IronBarcode 的許可才能進行部署。 您可以從這裡獲取免費試用許可密鑰。 將以下代碼行添加到 Program.cs 文件中:

using IronBarCode;

// Set the license key for IronBarcode here.
License.LicenseKey = "YOUR-KEY-HERE";
using IronBarCode;

// Set the license key for IronBarcode here.
License.LicenseKey = "YOUR-KEY-HERE";
Imports IronBarCode

' Set the license key for IronBarcode here.
License.LicenseKey = "YOUR-KEY-HERE"
$vbLabelText   $csharpLabel

生成 QR 碼的步驟

以下步驟將幫助生成最佳方式的 QR 碼 在 Blazor Server 應用程序中:

添加 Blazor HTML 組件

首先,我們將在“Index.razor”頁面中添加一些 HTML 代碼。 代碼由一些標題、一個輸入欄和按鈕組成。

使用以下代碼將組件添加到 Blazor 條碼應用程序中:

<h4>Welcome to Blazor QR Code Generator</h4>
<p>Enter the value to Generate QR Code:</p>

<!-- Input field for QR code text -->
<input @bind="text" />

<!-- Button to trigger QR code generation -->
<button @onclick="QRCodeGenerater">Generate QR Code</button>

<p>Generated QR Code:</p>
<h4>Welcome to Blazor QR Code Generator</h4>
<p>Enter the value to Generate QR Code:</p>

<!-- Input field for QR code text -->
<input @bind="text" />

<!-- Button to trigger QR code generation -->
<button @onclick="QRCodeGenerater">Generate QR Code</button>

<p>Generated QR Code:</p>
HTML

輸出如下:

如何在 Blazor 中生成 QR 碼:圖 6

文本字段用於從用戶獲取輸入,並且生成按鈕將調用QRCodeGenerater方法來創建 QR 碼。 生成的 QR 碼將顯示在“生成的 QR 碼:”標題下。 現在,我們來創建QRCodeGenerater方法。

創建QRCodeGenerater方法

是時候在 Visual Studio 中使用強大的 IronBarcode 庫來生成 QR 碼了。 @code段落被添加到“Index.razor”頁面中。 讓我們先看看下面的完整代碼:

@code {
    // Variable to hold the generated QR code HTML
    private string qrCode = "";

    // Variable to hold user input text
    private string text = "";

    // Method to generate QR code from user input
    private void QRCodeGenerater()
    {
        // Create a QR code from the input text
        GeneratedBarcode myQRCode = QRCodeWriter.CreateQrCode(text);

        // Convert the generated QR code to HTML tag
        qrCode = Convert.ToString(myQRCode.ToHtmlTag());
    }
}

在上述代碼中,有兩個私有字符串變量。 qrCode 將顯示生成的 QR 碼,而text將從輸入字段中獲取用戶輸入。 然後,在QRCodeGenerater方法中,使用QRCodeWriter類的CreateQrCode方法創建了myQRCodeCreateQrCode方法提供了幾個參數來增強代碼輸出。 您可以自動調整 QR 碼的大小,設置糾錯代碼字以維護糾錯級別,並更改QrVersion。 以下代碼有助於您處理其他參數:

// Creating a QR code with custom parameters
QRCodeWriter.CreateQrCode(
    "https://ironsoftware.com/csharp/barcode/", // URL for the QR code
    500, // Size of the QR code
    QRCodeWriter.QrErrorCorrectionLevel.High, // Error correction level
    0 // QrVersion
)
// Creating a QR code with custom parameters
QRCodeWriter.CreateQrCode(
    "https://ironsoftware.com/csharp/barcode/", // URL for the QR code
    500, // Size of the QR code
    QRCodeWriter.QrErrorCorrectionLevel.High, // Error correction level
    0 // QrVersion
)
' Creating a QR code with custom parameters
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'QRCodeWriter.CreateQrCode("https://ironsoftware.com/csharp/barcode/", 500, QRCodeWriter.QrErrorCorrectionLevel.High, 0)
$vbLabelText   $csharpLabel

最終,生成的 Blazor 條碼被轉換為 HTML 標籤,然後轉換為qrCode字串。

從這個代碼示例頁面中獲取更多 IronBarcode 功能的詳細信息。

在 Blazor Server 應用程序首頁顯示

在"Index.razor"頁面的 HTML 組件中,將下面的代碼添加到此 H4 標題之後以顯示qrCode

@((MarkupString)qrCode)

保存為 PNG 文件

您也可以使用SaveAsPng方法將其保存為 PNG 文件:

// Save the generated QR code as a PNG file
myQRCode.SaveAsPng("myQRCode.png");
// Save the generated QR code as a PNG file
myQRCode.SaveAsPng("myQRCode.png");
' Save the generated QR code as a PNG file
myQRCode.SaveAsPng("myQRCode.png")
$vbLabelText   $csharpLabel

如何在 Blazor 中生成 QR 碼:圖 7

在頁面加載時生成 QR 碼

您還可以在頁面加載時創建 QR 碼,並為用戶顯示以掃描數據。 以下代碼幫助您異步完成此任務:

@((MarkupString)qrCode)

@code {
    // Variable to hold the generated QR code HTML
    private string qrCode = "";

    // Method called when the page is initialized
    protected override async Task OnInitializedAsync()
    {
        // Asynchronously generate a QR code on page load
        await Task.Run(() =>
            qrCode = Convert.ToString(QRCodeWriter.CreateQrCode(
                "https://ironsoftware.com/csharp/barcode/", 
                500, 
                QRCodeWriter.QrErrorCorrectionLevel.High, 
                0).ToHtmlTag())
        );
    }
}

如何在 Blazor 中生成 QR 碼:圖 8

總結

在本文中,我們學習了如何在 Blazor Server 應用程序中使用 IronBarcode 以 C# 生成 QR 碼。 IronBarcode 是一個靈活的庫,為 Blazor 應用程序提供了所有必要的方法和支持。

IronBarcode 可以輕鬆將純文本、圖像、視頻或任何其他數據轉換為 QR 碼。 您可以控制代碼大小、糾錯級別和其版本。 您可以使用 IronBarcode 在 Blazor 應用程序中掃描條碼。 這是一個完整的示例這裡

IronBarcode 對於開發是免費的,但必須授權才能用於商業和部署目的。 您可以嘗試免費試用以測試所有功能。

常見問題解答

如何在Blazor應用程式中使用C#生成QR碼?

您可以使用IronBarcode庫在Blazor應用程式中生成QR碼。通過NuGet或下載DLL安裝IronBarcode,然後使用QRCodeGenerater方法將用戶輸入轉換為QR碼。

如何在Blazor Server App中安裝QR碼生成庫的步驟?

要在Blazor Server App中安裝QR碼生成庫,從NuGet下載IronBarcode,在您的Imports.razor文件中添加@using IronBarCode命名空間,必要時設置授權密鑰。

如何自定義在Blazor項目中生成的QR碼?

IronBarcode允許在Blazor項目中通過修改顏色、邊距和大小等元素來自定義QR碼。在生成QR碼時使用IronBarcode的方法來調整這些屬性。

哪種方法可以用於將生成的QR碼保存為圖像文件?

使用IronBarcode庫中的SaveAsPng方法將生成的QR碼保存為Blazor應用程式中的PNG圖像文件。

如何在Blazor應用程式中顯示QR碼?

可以將QR碼轉換為HTML標籤字符串,使用MarkupString來在頁面上渲染QR碼,以便在Blazor應用程式中顯示。

在Blazor頁面加載時生成QR碼是否可能?

是的,您可以在Blazor頁面加載時利用OnInitializedAsync生命週期事件中的異步方法來生成QR碼。

使用QR碼庫於.NET應用程式中有什麼授權要求?

IronBarcode免費用於開發,但部署需要商業授權。提供測試用的試用授權。

IronBarcode是否能用於不同的.NET平台進行QR碼生成?

是的,IronBarcode兼容包括.NET 7、.NET 6、.NET 5、.NET Core 2x & 3x、.NET Standard 2和.NET Framework 4.6.2+的廣泛.NET平台。

Jordi Bardia
軟體工程師
Jordi 在 Python、C# 和 C++ 上最得心應手,當他不在 Iron Software 展現技術時,便在做遊戲編程。在分担产品测测试,产品开发和研究的责任时,Jordi 为持续的产品改进增值。他说这种多样化的经验使他受到挑战并保持参与, 而这也是他与 Iron Software 中工作一大乐趣。Jordi 在佛罗里达州迈阿密长大,曾在佛罗里达大学学习计算机科学和统计学。