如何在 C# 中創建條碼和 QR 代碼圖像

How to Create Barcode Images

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

快速入門:在一行中創建和保存Code128條碼

使用IronBarcode的一行API從字符串創建Code128條碼並將其保存為PNG圖像。 開發人員可以立即開始——無需麻煩,無需樣板——只需提供數據,選擇編碼和大小,並寫入您的圖像文件。

Nuget IconGet started making PDFs with NuGet now:

  1. Install IronBarcode with NuGet Package Manager

    PM > Install-Package BarCode

  2. Copy and run this code snippet.

    IronBarCode.BarcodeWriter.CreateBarcode("Sample123", BarcodeEncoding.Code128, 250, 100).SaveAsPng("Barcode.png");
  3. Deploy to test on your live environment

    Start using IronBarcode in your project today with a free trial
    arrow pointer
class="hsg-featured-snippet">

最小工作流程(5步)

  1. 下載C# IronBarcode庫
  2. 生成條碼並保存為圖像文件
  3. 生成QR碼並保存為圖像文件

生成條碼並保存為圖像文件

除了讀取條碼外,IronBarcode還是一個強大的工具,用戶只需很少的代碼編寫就可以創建條碼。 要實現這一點,只需調用CreateBarcode()方法,該方法來自BarcodeWriter類,條碼的值、類型、寬度和高度可以在方法參數中指定。 這將輸出一個GeneratedBarcode對象,然後可以使用SaveAs()方法將其保存為圖像文件。 讓我們詳細討論每個參數,然後看看如何用代碼片段實現條碼寫入。

條碼值

BarcodeWriter.CreateBarcode()方法接受多種數據類型作為條碼值。 這些包括byte[] arrayMemoryStreamstring。 字符串的長度以及可以接受的字符取決於條碼類型,但這些都在我們的文檔中詳細說明。

條碼編碼類型

IronBarcode支持多種條碼格式來寫入——完整列表可以在我們的支持的條碼格式文章中找到。 這些條碼類型都有其獨特的屬性、特點和用途——您可以通過我們的文檔研究哪一種最適合您的用例。

寬度和高度

設置輸出條碼圖像的寬度和高度(以像素為單位)。 默認情況下,兩者的測量值均設置為250 px。 多種條碼類型,如QR和PDF417,需要具有某些尺寸才能符合要求,因此,對於不符合條碼所需尺寸的輸入寬度和高度,條碼將以符合要求的尺寸生成,剩餘空間將由空白填充。 如果條碼的尺寸太小,將會拋出異常。

導入條碼作為圖像

使用BarcodeWriter.CreateBarcode()方法創建條碼時,將生成一個GeneratedBarcode對象。 使用此對象,我們可以使用針對每個圖像格式的幾個SaveAs()方法將條碼保存到各種圖像類型中。 這些方法包括:

  • SaveAsGif():此方法將GeneratedBarcode保存為GIF圖像文件,並接受圖像文件路徑作為字符串參數。
  • SaveAsJpeg():此方法將GeneratedBarcode保存為JPEG圖像文件,並接受圖像文件路徑作為字符串參數。
  • SaveAsPng():此方法將GeneratedBarcode保存為PNG圖像文件,並接受圖像文件路徑作為字符串參數。
  • SaveAsTiff():此方法將GeneratedBarcode保存為TIFF圖像文件,並接受圖像文件路徑作為字符串參數。
  • SaveAsWindowsBitmap():此方法將GeneratedBarcode保存為BMP圖像文件,並接受圖像文件路徑作為字符串參數。
  • SaveAsImage():這是一個通用方法,用於將GeneratedBarcode保存為圖像文件—用戶必須在輸入文件路徑時指定所需的文件格式擴展名

生成條碼並保存為圖像文件

現在我們將使用BarcodeWriter.CreateBarcode()演示創建_Code128_條碼,並將其保存到磁盤作為JPEG圖像文件。

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

BarcodeWriter.CreateBarcode("IronBarcode123", BarcodeEncoding.Code128, 200, 100).SaveAsJpeg("OneDBarcode.jpeg");
Imports IronBarCode

BarcodeWriter.CreateBarcode("IronBarcode123", BarcodeEncoding.Code128, 200, 100).SaveAsJpeg("OneDBarcode.jpeg")
$vbLabelText   $csharpLabel
class="content-img-align-center">
class="center-image-wrapper"> 來自代碼片段的一維條碼

生成QR碼並保存為圖像文件

現今最受歡迎的條碼之一,QR碼,也被分類為二維條碼之一,IronBarcode完全支持。 由於其多樣性、外觀吸引力以及高度可定制的功能,QR碼在用戶中獲得了高度的受歡迎度。

與創建一維和其他條碼不同,創建QR碼將使用IronBarcode中的另一個類的另一種方法,因為QR碼的複雜性需要不同的屬性和參數來產生符合客戶要求的高質量QR碼。 要在IronBarcode中創建QR碼,用戶需要調用CreateQrCode()方法,該方法來自QRCodeWriter類。 QRCodeWriter.CreateQrCode()接受4個參數:第一個參數為條碼值,第二個參數為輸出QR碼的大小,第三個參數為QRCodeWriter.QrErrorCorrectionLevel枚舉字段,最後一個參數為QRVersion。 讓我們詳細討論此方法的參數。

QR碼值

BarcodeWriter.CreateBarcode()方法類似,QRCodeWriter.CreateQrCode()首先接受一個QR碼值,可以是數字、字母、或字母數字。 這些值可以作為byte[] arrayMemoryStreamSystem.String類型輸入到方法中。

QR碼大小

用戶還可以將QR碼的大小直接指定為Int32類型。 此方法中使用的QR碼大小的計量單位為像素(px)。 默認的QR碼大小為500 px。

QR錯誤校正級別

QRErrorCorrectionLevelQRCodeWriter類的一個成員屬性,其中有4個字段:最高中等。 基本上,這個屬性是QR碼的容錯級別,較高的校正級別會創建更複雜的QR碼,即使損壞或部分遮擋,仍然更不易讀取錯誤。 現在,讓我們詳細討論此屬性中的每個字段,並查看生成的QR碼在外觀上的差異。

QRErrorCorrectionLevel.Highest

最高校正級別生成的QR碼將擁有最複雜的QR碼圖像,其中30%是錯誤校正。 生成的QR碼還可以在QR碼上加蓋徽標或圖像圖形。

class="content-img-align-center">
class="center-image-wrapper"> 最高校正級別的QR碼

QRErrorCorrectionLevel.High

將屬性字段設置為結果會在QR碼圖像中應用25%的錯誤校正。 這將比從QRErrorCorrectionLevel.Highest生成的QR碼圖像更少複雜。

class="content-img-align-center">
class="center-image-wrapper"> 高校正級別的QR碼

QRErrorCorrectionLevel.Medium

此字段僅在QR碼圖像中應用15%的錯誤校正。 通過使用此設置,用戶將能更快地生成QR碼; 但是,這們生成的QR碼更容易出錯。

class="content-img-align-center">
class="center-image-wrapper"> 中等校正級別的QR碼

QRErrorCorrectionLevel.Low

這是錯誤校正級別的最低設置,僅在QR碼圖像中應用7%的錯誤校正,結果是最不複雜的QR碼。

class="content-img-align-center">
class="center-image-wrapper"> 低校正級別的QR碼

QR版本

QR版本是QR碼的符號版本,範圍從1到40。更高的QR版本將生成更複雜的QR碼,使用戶能夠存儲更多數據,反之亦然,對於較低版本的QR碼。 請注意,如果QR版本設置得太低,用戶在試圖對超過版本允許的更多數據進行編碼時可能會出現問題。 將QR版本設置為0將根據要編碼的值自動分配適當的QR版本。 Please refer to this site for more information on QR version: QR Version

創建QR碼圖像

以下代碼片段演示了如何使用IronBarcode中的QRCodeWriter.CreateQrCode()方法來編寫QR碼並使用SaveAsJpeg()方法將其保存為磁盤上的圖像文件。

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

QRCodeWriter.CreateQrCode("IronBarcode1234", 250, QRCodeWriter.QrErrorCorrectionLevel.Medium, qrVersion: 0).SaveAsJpeg("QRMedium.jpeg");
Imports IronBarCode

QRCodeWriter.CreateQrCode("IronBarcode1234", 250, QRCodeWriter.QrErrorCorrectionLevel.Medium, qrVersion:= 0).SaveAsJpeg("QRMedium.jpeg")
$vbLabelText   $csharpLabel
class="content-img-align-center">
class="center-image-wrapper"> 中等校正級別的QR碼

從上述代碼片段中,使用一個字母數字值作為要在QR碼中編碼的值,並使用250像素作為生成的QR碼的大小。 我們還指定了生成的QR碼的錯誤校正為中等,讓程序決定哪個QR版本適合我們的QR碼值。 除此之外,我們還使用了SaveAsJpeg()該命令將QR碼圖像文件名與圖像格式擴展名(在此例中為JPEG)一起作為參數進行保存。

常見問題解答

如何在 .NET 中創建條碼圖像?

要在 .NET 中創建條碼圖像,使用 IronBarcode 庫。首先,從 NuGet 下載,然後使用 BarcodeWriter.CreateBarcode() 方法,指定條碼的值、類型、寬度和高度。使用 SaveAsPng()SaveAsJpeg() 等方法保存生成的條碼圖像。

在 .NET 中支援哪些條碼格式?

.NET 條碼庫支援多種條碼格式,包括 Code128 和 QR 代碼。有關支援格式的完整列表,請參閱 IronBarcode 文件。

如何將條碼保存為 JPEG 圖像?

您可以在使用 IronBarcode 的 BarcodeWriter.CreateBarcode() 方法生成條碼後,使用 SaveAsJpeg() 方法將條碼保存為 JPEG 圖像。

如果我的條碼尺寸不正確,我應該怎麼做?

如果您指定的條碼尺寸不正確,IronBarcode 可能會調整尺寸以保持合規或拋出異常。請確保為條碼類型提供足夠的尺寸。

如何在 C# 中生成 QR 代碼?

要在 C# 中生成 QR 代碼,使用 IronBarcode 的 QRCodeWriter.CreateQrCode() 方法。提供條碼值、尺寸、糾錯級別和 QR 版本。使用 SaveAsPng() 等方法保存 QR 代碼。

哪些因素影響 QR 代碼的糾錯級別?

QR 代碼的糾錯級別影響其容錯能力和複雜性。IronBarcode 提供了四個級別:Highest、High、Medium 和 Low,每個級別會影響 QR 代碼受損時可恢復的數據量。

我可以在 .NET 中使用不同的數據類型作為條碼值嗎?

是的,IronBarcode 支援多種數據類型作為條碼值,包括字符串、字節數組和 MemoryStreams,允許靈活的輸入格式來創建條碼。

QR 版本如何影響 QR 代碼的數據容量?

IronBarcode 中的 QR 版本決定了 QR 代碼的數據容量和複雜性。版本範圍從 1 到 40,較高版本允許更多數據存儲。

要使用 IronBarcode,我應該包含哪個命名空間?

在您的 C# 項目中包含 IronBarcode 命名空間,以訪問該庫提供的所有條碼創建和操作功能。

Hairil Hasyimi Bin Omar
軟體工程師
和所有优秀的工程师一样,Hairil 是个努力学习者。他正在细化自己的 C# 、Python 和 Java 知识,将这些知识应用于 Iron Software 各个团队成员以增加价值。Hairil 自马来西亚 Universiti Teknologi MARA 加入 Iron Software 团队,并以化学与工艺工程学士学位毕业。
準備好開始了嗎?
Nuget 下載 1,935,276 | 版本: 2025.11 剛剛發布