如何建立二維條碼

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronBarcode 讓您能夠使用簡單的 C# 程式碼產生所有主要的 2D 條碼格式,包括 QR 碼、Aztec、DataMatrix、MaxiCode、PDF417 和新的 rMQR 格式。 只需將所需的編碼類型傳遞給Create方法,然後匯出為圖像即可。 IronBarcode 支援30 多種條碼格式,可為您的所有條碼產生需求提供全面的解決方案。

當需要在狹小空間內儲存詳細資訊時,二維條碼是業界內的理想解決方案。 即使撕裂、刮傷或留下痕跡,它們仍然可以容納數千個字符,並且仍然可讀。 由於可以從任何角度掃描,並且不需要完美對齊,因此這些條碼非常適合快節奏的物流和行動掃描應用。 內建糾錯功能確保您的資料即使在具有挑戰性的條件下也能存取。

主要挑戰在於根據您的具體需求選擇正確的格式。 您可能需要 Aztec Code 的無邊框緊湊型設計用於行動票務,Data Matrix 的工業級精度用於微型電子元件,或 PDF417 的海量離線儲存容量用於駕駛執照和身分證。 使用 IronBarcode,您可以可靠且有效率地產生所有這些格式。

在本指南中,我們將介紹如何產生關鍵的 2D 格式,例如 QR 碼、MaxiCode 和新的 rMQR,以及它們的日常使用案例。

開始使用 IronBarcode


快速入門:產生您的第一個二維條碼

```cs :title=快速入門 使用 IronBarCode;

// 用一行字建立一個二維碼 var myBarcode = BarcodeWriter.CreateBarcode("Hello World", BarcodeEncoding.QRCode);

// 另存為映像 myBarcode.SaveAsPng("myQRCode.png");


1. 透過 NuGet 安裝 IronBarcode: `Install-Package BarCode`
2. 導入命名空間: `使用 IronBarCode;`
3. 建立二維碼: `var myBarcode = BarcodeWriter.CreateBarcode("Hello World", BarcodeEncoding.QRCode);`
4. 儲存為映像: `myBarcode.SaveAsPng("myQRCode.png");`
5. 完成! 您的二維碼已準備就緒。

有關更詳細的安裝說明,請造訪我們的[NuGet 套件指南](https://ironsoftware.com/csharp/barcode/get-started/advanced-installation-nuget/)。

## 什麼是二維條碼?我應該在什麼情況下使用它們?

<!-- TODO: Add image here -->
<!-- ![Output showing create 2d barcodes results in IronPDF](/static-assets/images/TODO/create-2d-barcodes-code_output.webp) -->
<!-- Description: Screenshot showing code execution output or results -->

二維條碼(如二維碼)使用方格或點陣來儲存水平和垂直方向的資訊。 相較之下,線性一維條碼使用單行線條來儲存資料。 雖然標準條碼只能儲存少量數字或字母,但二維條碼可以儲存大量資料(包括網頁連結、ID 詳細資訊或整個檔案),而無需資料庫連線。

這種堅固的設計使二維條碼非常耐用。 內建糾錯功能即使在條碼被刮傷、撕裂或標記的情況下也能進行掃描,而普通條碼在這種情況下會失效。 這使得二維條碼成為惡劣環境或行動掃描的理想選擇,因為在這些環境中無法保證完美的條件。 有關進一步調整糾錯的信息,請參閱[我們的糾錯指南](https://ironsoftware.com/csharp/barcode/how-to/error-correction/)。

讓我們來探索 IronBarcode 支援的所有 2D 條碼格式,示範如何建立它們,並討論它們的常見用途。 每種格式都有其獨特的特點,適合特定的應用場景。

### 如何創建用於行動票務的阿茲特克條碼?

阿茲特克密碼是一種高密度二維矩陣,其中心為方形靶心圖案。 與其他格式不同,阿茲特克碼節省空間,並以緊湊的正方形格式儲存資料。

阿茲特克條碼的獨特優點在於它不需要像其他條碼那樣設定靜默區。 它通常用於行動票務,例如電子登機證和醫療保健患者腕帶。 航空公司和公共交通系統更喜歡這種格式,因為它尺寸小巧,在智慧型手機螢幕上的可讀性極佳。

#### 程式碼

IronBarcode 讓產生阿茲特克條碼變得簡單:在呼叫`Create`方法時將`BarcodeEncoding.Aztec`作為第二個參數傳遞,然後將結果匯出為影像。 您可以使用 IronBarcode 的樣式選項進一步[自訂外觀](https://ironsoftware.com/csharp/barcode/how-to/customize-barcode-style/)。

```cs
:path=/static-assets/barcode/content-code-examples/how-to/create-aztec-barcode.cs

輸出

阿茲特克條碼範例,展示了其獨特的靶心圖案

如何建立用於工業零件標記的DataMatrix條碼?

資料矩陣是一種緊湊的二維矩陣,其周邊的 L 形定位圖案是其識別特徵。 這種形式非常適合空間有限且耐用性至關重要的應用場合。

Data Matrix 的獨特優勢在於其極高的耐用性,並且能夠縮小到微觀尺寸,用於直接零件標記 (DPM)。 它常用於太空極其有限的工業領域,例如外科手術器械、電子元件和航空航天零件的追蹤。 此格式尺寸小巧、資料密度高,非常適合從各種資料類型(包括序號和批次程式碼)建立條碼

程式碼

IronBarcode 讓產生 DataMatrix 碼變得簡單:在呼叫Create方法時將BarcodeEncoding.DataMatrix作為第二個參數傳遞,然後將結果匯出為影像。

:path=/static-assets/barcode/content-code-examples/how-to/create-datamatrix-barcode.cs
using IronBarCode;

// Create the DataMatrix barcode
GeneratedBarcode DataMatrix = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode/", BarcodeEncoding.DataMatrix);

// Display the value below the barcode
DataMatrix.AddBarcodeValueTextBelowBarcode();

// Save as a JPG file
DataMatrix.SaveAsJpeg("dataMatrix-sample.jpg");
$vbLabelText   $csharpLabel

輸出

DataMatrix 條碼範例,顯示 L 形查找圖案

如何建立用於貨運標籤的 MaxiCode 條碼?

MaxiCode 是一種固定大小的二維矩陣,其特徵是圓形靶心圖案被六邊形網格包圍。 這種獨特的設計是專門為傳送帶上的高速掃描而開發的。

MaxiCode 的獨特之處在於,無論儲存多少數據,其物理尺寸始終為 1 英寸,這使其能夠針對高速傳送帶讀取進行最佳化。 它常用於物流和供應鏈管理,尤其是在 UPS 運輸標籤上,用於自動包裹分類和路線規劃。 固定尺寸確保瞭無論資料負載如何,掃描效能始終如一。

程式碼

IronBarcode 讓產生 MaxiCode 變得簡單:在呼叫Create方法時將BarcodeEncoding.MaxiCode作為第二個參數傳遞,然後將其匯出為圖像。 更多範例,請查看我們的條碼快速入門指南

:path=/static-assets/barcode/content-code-examples/how-to/create-maxicode-barcode.cs
using IronBarCode;

// Create the MaxiCode barcode
GeneratedBarcode MaxiCode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode/", BarcodeEncoding.MaxiCode);

// Display the value below the barcode
MaxiCode.AddBarcodeValueTextBelowBarcode();

// Save as a JPG file
MaxiCode.SaveAsJpeg("maxiCode-sample.jpg");
$vbLabelText   $csharpLabel

輸出

MaxiCode 條碼範例,採用六角形圖案和圓形靶心。

如何建立用於身分證的PDF417條碼?

PDF417 是一種堆疊式線性條碼,其寬大的矩形外觀類似於數位靜電。 這種格式比其他 2D 格式編碼的資料量大得多,因此非常適合儲存詳細資訊。

PDF417 的獨特功能是作為便攜式資料文件,無需資料庫連接即可儲存大量數據,例如照片、姓名和生物特徵記錄。 它通常用於政府頒發的身份證明文件,例如駕駛執照和印刷的航空公司登機證。 此格式同時支援文字和二進位資料編碼。

程式碼

IronBarcode 讓產生 PDF417 變得簡單:在呼叫Create方法時將BarcodeEncoding.PDF417作為第二個參數傳遞,然後將其匯出為圖像。 您也可以將條碼儲存為各種影像格式,包括 PNG、JPEG 等。

:path=/static-assets/barcode/content-code-examples/how-to/create-pdf417-barcode.cs
using IronBarCode;

// Create PDF417 barcode
GeneratedBarcode PDF417code = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode/", BarcodeEncoding.PDF417);

// Display the value below the barcode
PDF417code.AddBarcodeValueTextBelowBarcode();

// Save as a JPG file
PDF417code.SaveAsJpeg("pdf417-sample.jpg");
$vbLabelText   $csharpLabel

輸出

PDF417 條碼範例,顯示堆疊線性圖案

如何建立用於行銷活動的二維碼?

二維碼是一種高密度二維矩陣,其四個角落有三個獨特的方形識別圖案,可透過這些圖案進行識別。 作為最廣泛認可的二維條碼格式,二維碼已在消費應用中無處不在。

二維碼的獨特優勢在於其普遍的消費者可訪問性——它是唯一一種幾乎所有現代智慧型手機相機應用程式都原生支援的二維符號,無需額外軟體。 它常用於行銷和公眾參與,連結到網站和數位菜單,以及促進行動支付。 如需了解更進階的二維碼產生方法,請瀏覽我們的二維碼建立範例

程式碼

IronBarcode 讓產生二維碼變得簡單:在呼叫Create方法時將BarcodeEncoding.QRCode作為第二個參數傳遞,然後將其匯出為映像。 您也可以透過新增徽標和更改顏色來自訂二維碼樣式

:path=/static-assets/barcode/content-code-examples/how-to/create-QRCode.cs
using IronBarCode;

// Create QR Code
GeneratedBarcode QRcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode/", BarcodeEncoding.QRCode);

// Display the value below the barcode
QRcode.AddBarcodeValueTextBelowBarcode();

// Save as a JPG file
QRcode.SaveAsJpeg("QRcode.jpg");
$vbLabelText   $csharpLabel

輸出

帶有三個角點查找圖案的二維碼範例

如何為小型電子產品建立微型二維碼?

微型二維碼是一種小型化的二維矩陣,透過左上角的單一方形識別圖案進行識別。 這種格式專為空間極為有限的應用而設計。

微型二維碼的獨特優勢在於,它能夠適應極其狹小的空間,減少開銷,與標準的四個模組相比,只需要兩個模組的靜音區,同時以資料容量換取物理上的緊湊性。 它通常用於標記小型電子元件、印刷電路板 (PCB) 和工業零件,在這些地方,標準二維碼太大。

由於篇幅有限,字數有限制。 最大版本(M4)最多可容納 21 個字母數字字元或 35 個數字。 使用微型二維碼時,請仔細規劃資料編碼策略。

程式碼

IronBarcode 讓產生 MicroQRCode 變得簡單:在呼叫Create方法時將BarcodeEncoding.MicroQRCode作為第二個參數傳遞,然後將其匯出為圖像。

:path=/static-assets/barcode/content-code-examples/how-to/create-microQR.cs
using IronBarCode;

// Create a Micro QR Code
GeneratedBarcode microQRcode = BarcodeWriter.CreateBarcode("IRON-1234", BarcodeEncoding.MicroQRCode);

// Display the value below the barcode
microQRcode.AddBarcodeValueTextBelowBarcode();

// Save to file as Jpeg
microQRcode.SaveAsJpeg("microQRCode.jpg");
$vbLabelText   $csharpLabel

輸出

帶有單一查找圖案的微型二維碼範例

如果我的資料量超過了Micro QR碼的容量會怎麼樣?

如果輸入的字串超過 35 個數字或 21 個字母數字字符,IronBarcode 將拋出錯誤。 這種內建驗證有助於防止生產環境中出現執行時錯誤。

微型二維碼資料容量超出限制時會顯示錯誤訊息

如何為狹窄空間建立 rMQR 程式碼?

矩形微型二維碼 (rMQR) 是一種特殊的二維矩陣,其特徵是細長的條狀形狀和左上角的單一查找圖案。 這種創新形式彌補了條碼技術的一個特定空白。

rMQR 的獨特優勢在於能夠適應方形碼無法適應的狹長空間,例如細邊框或曲面。 它彌合了微型二維碼的小巧尺寸和標準二維碼的高容量之間的差距,只需要兩個模組的靜音區。 它常用於標記電纜、試管、醫用小瓶和高度受到嚴格限制的薄型電子元件。

由於其矩形設計,它可以水平延伸以增加容量,而不會增加垂直佔地面積。 最大版本(R17x139)最多可容納 219 個字母數字字元或 361 個數字——比 Micro QR 功能強大得多,同時保持了纖薄的外形。

程式碼

IronBarcode 讓產生 RMQRCode 變得簡單:在呼叫Create方法時將BarcodeEncoding.RMQRCode作為第二個參數傳遞,然後將其匯出為圖像。 如需全面了解 IronBarcode 的所有功能,請造訪我們的API 參考文件

:path=/static-assets/barcode/content-code-examples/how-to/create-rmQRcode.cs
using IronBarCode;

// Create a  RmQR Code
GeneratedBarcode rMqrCode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode/", BarcodeEncoding.RMQRCode);

// Display the value below the barcode
rMqrCode.AddBarcodeValueTextBelowBarcode();

// Save to file as Jpeg
rMqrCode.SaveAsJpeg("rmQRcode.jpg");
$vbLabelText   $csharpLabel

輸出

rMQR 程式碼範例,顯示矩形格式

如果我的數據超過了 rMQR 的容量會發生什麼?

如果輸入的字串超過 361 個數字或 219 個字母數字字符,IronBarcode 將拋出錯誤。 此驗證可確保您的條碼保持可掃描狀態並符合 rMQR 規格。

當 rMQR 代碼容量超出限制時,會顯示錯誤訊息。

我應該選擇哪種二維條碼格式?

姓名格式常用用法限制與陷阱
阿茲特克密碼矩陣(中心向外)
方形網格,中心設有"靶心"定位點。無需安靜區域。
移動登機證(Apple Wallet)、火車票和醫療保健腕帶。
  • 中心損傷:依靠中心定位器;靶心損傷會導致完全失效。
  • 螢幕眩光:手機螢幕反射會使標準掃描器視線受阻。
數據矩陣矩陣(L型)
正方形或長方形,兩邊有實心"L"形邊框。
電子元件、外科器械和金屬上的直接零件標記 (DPM)。
  • 靜默區:需要 1 個模組的白色邊框;邊緣圖形會導致故障。
  • 對比:光亮金屬(DPM)需要專門的照明才能閱讀。
MaxiCode固定尺寸矩陣
尺寸正好是 1x1 英吋。六邊形圓點,中心為圓形靶心。
UPS 運送標籤和高速傳送帶分類。
  • 固定尺寸:高度不能小於 1 英吋。
  • 列印品質:低解析度熱感印表機會使六角形變形。
PDF417堆疊線性
寬大的長方形,類似數位雪花。容量大。
駕駛執照(AAMVA)、身分證和紙本登機證。
  • 截斷:手持掃描器經常會漏掉左右邊緣。
  • 尺寸成長:隨著資料量的增加,物理尺寸會顯著增加。
QR 圖碼矩陣
正方形,帶有三個獨特的角標圖案。
消費者行銷、付款、餐廳菜單、Wi-Fi配對。
  • 靜音區:需要較大的白色邊距(4 個模組寬)。
  • 密度:未縮短的長 URL 會造成無法聚焦的"靜態"問題。
微型二維碼微型矩陣
只有一個角落定位圖案的小正方形。
印刷電路板(PCB),小型電子元件。
  • 容量限制:最多約 35 個數字或 21 個字母數字字元。
  • 掃描器支援:並非所有智慧型手機相機應用程式都支援此功能。
rMQR矩形矩陣
連接微型二維碼和標準二維碼的細長條狀物。
試管、電纜、薄邊框、窄產品邊緣。
  • 新格式:對舊式掃描器的支援度正在提高,但尚未普及。
  • 寬高比:專為狹窄空間設計。

常見問題解答

我可以在 C# 中建立哪些 2D BarCode 格式?

IronBarcode 支援所有主要的 2D 條碼格式,包括 QR Code、Aztec、DataMatrix、MaxiCode、PDF417 以及新的 rMQR 格式。IronBarcode 總共支援超過 30 種條碼格式,為您在 C# 應用程式中生成任何您需要的二維條碼類型提供了全面的解決方案。

如何只用一行代碼就生成 QR 代碼?

您可以使用 IronBarcode 用一行文字來建立 QR 代碼:var myBarcode = BarcodeWriter.CreateBarcode("Hello World", BarcodeEncoding.QRCode); 這個簡單的 API 呼叫會產生一個功能完整的 QR 代碼,然後您可以儲存為影像或匯出為各種格式。

2D BarCode 在損壞時是否仍可閱讀?

是的,使用 IronBarcode 生成的二維條碼內含內置錯誤修正功能,可確保即使條碼被撕裂、刮傷或標記,您的資料仍可存取。它們也可以從任何角度掃描,而且不需要完全對齊,因此非常適合具有挑戰性的掃描條件。

行動購票應該使用哪種 2D BarCode 格式?

對於行動票務應用程式,IronBarcode 可以產生 Aztec Codes,其特色在於無邊框的精巧設計非常適合行動螢幕。您也可以在一般行動應用程式中使用 QR Code,或探索其他格式,例如工業用途的 DataMatrix 或 ID 卡的 PDF417。

與傳統條碼相比,二維條碼能儲存多少資料?

傳統的一維條碼僅能保存幾個數字或字母,而使用 IronBarcode 創建的二維條碼則可保存數以千計的字符,包括網站鏈接、詳細的 ID 信息等。確切的容量取決於格式 - PDF417 提供大量離線儲存容量,而 DataMatrix 則為較小的元件提供工業精準度。

生成的二維 BarCode 可以儲存成哪些檔案格式?

IronBarcode 允許您將您的二維條碼以多種影像格式儲存。您可以使用 SaveAsPng() 來儲存 PNG 檔案,SaveAsJpeg() 來儲存 JPEG 圖檔,以及其他各種匯出方法,以最適合您應用程式需求的格式來儲存您的條碼。

我可以產生新的 rMQR BarCode 格式嗎?

是的,IronBarcode 支持新的 rMQR (Rectangular Micro QR) 格式以及传统的 QR 码和其他二维格式。只需在创建您的条码时指定BarcodeEncoding.rMQR,即可生成这种现代矩形QR码的变体。

是否有免費的試用版來測試 2D BarCode 的產生?

是的,IronBarcode 提供免費試用版,您可以在購買前測試所有的二維條碼生成功能。您可以透過 NuGet 下載程式庫,並立即開始建立 QR 條碼、DataMatrix、Aztec 條碼和其他二維格式,以評估其是否符合您的需求。

柯蒂斯·週
技術撰稿人

Curtis Chau擁有卡爾頓大學電腦科學學士學位,專長於前端開發,精通Node.js、TypeScript、JavaScript和React。他熱衷於打造直覺美觀的使用者介面,喜歡使用現代框架,並擅長撰寫結構清晰、視覺效果出色的使用者手冊。

除了開發工作之外,柯蒂斯對物聯網 (IoT) 也抱有濃厚的興趣,致力於探索硬體和軟體整合的創新方法。閒暇時,他喜歡玩遊戲和製作 Discord 機器人,將他對科技的熱愛與創造力結合。

準備好開始了嗎?
Nuget 下載 2,035,202 | 版本: 2025.12 剛剛發布