如何製作條碼圖片
如何在 C# 中創建條碼圖像
- 下載 C# IronBarcode 函式庫
- 生成條碼並儲存為圖像文件
- 生成 QR 碼並保存為圖像文件
生成條碼並儲存為影像檔案
除了读取条形码,IronBarcode 还是一个强大的工具,它还允许用户通过非常少量的编码来写入条形码。 要達成此目的,只需從BarcodeWriter
類調用CreateBarcode()
方法,您可以在方法參數中指定條碼的值、類型、寬度和高度。 這將輸出一個GeneratedBarcode
物件,隨後可以使用SaveAs()
方法將其保存為影像檔案。 讓我們詳細討論每個參數,然後看看如何通過代碼片段實現條碼寫入。
條碼值
BarcodeWriter.CreateBarcode()
方法接受多種數據類型作為條碼值。 這些包括 byte[] array
、MemoryStream
和 string
。 字串的長度和接受的字元根據條碼類型而異,但這在我們的文件中都有詳細說明。
條碼編碼類型
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")

生成 QR 代码並保存為圖像文件
時下最受歡迎的條碼之一,QR code,這也是被分類為二維條碼的條碼之一,由 IronBarcode 完全支援。 由於其多功能性、美觀性和高度可定制的特點,QR碼在用戶中獲得了很高的受歡迎程度。
與創建一維和其他條形碼不同,使用IronBarcode創建QR碼將使用不同類別中的不同方法,因為QR碼的複雜性需要不同的屬性和參數才能產生符合客戶需求的高質量QR碼。 在 IronBarcode 中創建 QR 碼,使用者需要從 QRCodeWriter
類別調用 CreateQrCode()
方法。 QRCodeWriter.CreateQrCode()
方法接受4 個參數,其中將條碼值作為第一個參數,輸出 QR 碼的大小作為第二個參數,QRCodeWriter.QrErrorCorrectionLevel
枚舉字段作為第三個參數,最後是 QRVersion
。 讓我們詳細討論這個方法的參數。
QR 碼值
與BarcodeWriter.CreateBarcode()
方法相同,QRCodeWriter.CreateQrCode()
首先接受數字、字母或字母數字的QR Code值。 這些值可以作為byte []
陣列、MemoryStream
和System.String
類型輸入到方法中。
QR 碼大小
使用者也可以將 QR 碼的大小直接指定為Int32
類型的方法。 在此方法中使用的 QR 碼大小的度量單位是以像素(px)為單位。 預設的 QR 碼大小為 500 像素。
QR 錯誤修正等級
QRErrorCorrectionLevel
是 QRCodeWriter
類別的成員屬性,其中包含四個字段,分別是 Highest、High、Medium 和 Low。 基本上,這個屬性是 QR 碼的容錯等級,在這個等級中,更高的修正等級會創造出更複雜的 QR 碼,即使 QR 碼受損或部分遮蔽,也較不容易發生讀取錯誤。 現在,讓我們詳細討論此屬性中的每個字段,以及查看生成的QR碼的外觀差異。
QRErrorCorrectionLevel.Highest
使用最高修正級別生成的QR碼將具有最複雜的QR碼圖像,其中30%是錯誤修正。 生成的QR碼也可以在QR碼上蓋上標誌或圖像。

QRErrorCorrectionLevel.High
將屬性欄位設置為高將導致在 QR 碼影像中應用 25% 的錯誤更正。 這將比從QRErrorCorrectionLevel.Highest
生成的 QR 碼圖像更簡單。

QRErrorCorrectionLevel.Medium
此字段在 QR 碼圖片中僅應用 15% 的錯誤更正。 使用此設定,用戶將能更快地生成 QR 碼,但也更容易出錯。

QRErrorCorrectionLevel.Low
這是錯誤校正等級的最低設定,它只在QR碼圖像中應用7%的錯誤校正,並產生最不複雜的QR碼。

QrVersion
QR 版本是 QR 碼的符號版本,範圍從 1 到 40,較高的 QR 版本將產生更複雜的 QR 碼,使使用者能夠儲存更多數據,較低版本的 QR 碼則相反。 請注意,如果QR版本設定過低,當用戶試圖編碼超過版本允許的數據量時,可能會出現問題。 將 QR 版本設置為 0 將根據要編碼的值自動分配適當的 QR 版本。 請參閱此網站以獲取有關 QR 版本的更多資訊: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")

在上面的代碼片段中,字母數字值被用作要編碼在QR碼中的值,我們使用250像素作為產生的QR碼的尺寸。 我們還指定產生的QR碼的錯誤更正等級為中等,並讓程式決定哪一個QR碼版本適合我們的QR碼值。 除此之外,我們還附加了SaveAsJpeg()
,它接受帶有圖像格式擴展名的 QR 碼圖像文件名,在這個例子中是 JPEG 格式,以作為參數進行保存。