如何使用 IronBarcode 在 C# 中建立 BarCode 圖像
IronBarcode 讓 .NET 開發人員能透過 C# 僅需一行程式碼即可產生 BARCODE 與 QR 碼圖像,並支援多種格式與圖像類型。透過這個強大的 API 建立庫存管理系統、零售應用程式或文件處理解決方案,該 API 可產生專業品質的 BARCODE,確保在所有主要讀取器上皆能可靠掃描。
快速入門:一行代碼建立並儲存 Code128 BarCode
使用 IronBarcode 的單行 API,從字串建立 Code128 BarCode,並將其儲存為 PNG 圖片。 立即開始——提供資料、選擇編碼與尺寸,並寫入您的圖像檔案。
簡化工作流程(5 個步驟)
- 下載 C# IronBarcode 程式庫
- 產生BarCode並儲存為圖像檔案
- 產生 QR 碼並儲存為圖像檔案
如何產生BARCODE並儲存為圖像檔案?
除了讀取 BARCODE 外,IronBarcode 還讓使用者能以最少的程式碼書寫 BARCODE。 從 BarcodeWriter 類別呼叫 CreateBarcode() 方法,並在方法參數中指定 BARCODE 的值、類型、寬度和高度。 這會輸出一個 GeneratedBarcode 物件,可透過 SaveAs() 方法將其儲存為圖像檔案。
BarCode值可以使用哪些類型的資料?
BarcodeWriter.CreateBarcode() 方法接受多種資料型別作為 BARCODE 值:MemoryStream 及 string。 字串長度與可接受的字元會因 BarCode 類型而異——詳情請參閱我們的 API 文件。 Code128 支援完整的 ASCII 字元集,而 UPC-A 則必須精確包含 12 位數字。 針對二進位資料,請使用 byte[] array 來編碼複雜的資料結構。
支援哪些BarCode編碼類型?
IronBarcode 支援多種 BarCode 格式——完整清單請參閱我們的《支援的 BarCode 格式》文章。常見格式包括:
- 線性/1D BARCODE:
Code128,Code39,UPC-A,UPC-E,EAN-8,EAN-13 - 2D BARCODE:
Aztec - 專用格式:
MaxiCode適用於物流運輸,Databar適用於零售
每種格式皆有其特定用途。 Code128 能妥善處理一般的英數字資料,而 QR 碼則為行動裝置掃描提供更優異的錯誤修正能力。
寬度和高度設定會如何影響我的BarCode?
請以像素為單位設定輸出BarCode圖像的尺寸。 兩者的預設尺寸皆為 250 px。 某些BARCODE類型(PDF417)需符合特定尺寸規範。 當輸入尺寸不符合要求時,BARCODE會以符合規範的尺寸生成,並以空白填補剩餘空間。 若尺寸過小,將拋出例外。
為獲得最佳掃描效果:
- 線性BarCode:寬度須顯著大於高度
- 2D BARCODE:QR 碼應使用方格尺寸(例如 250x250)
- 列印品質:較高的像素尺寸可提升大尺寸列印的品質
我可以將BarCode匯出為哪些圖像格式?
來自 BarcodeWriter.CreateBarcode() 的 GeneratedBarcode 物件會透過特定的 SaveAs() 方法,將內容儲存為各種圖像格式:
SaveAsGif():儲存為 GIF 圖像檔案SaveAsJpeg():儲存為 JPEG 影像檔案SaveAsPng():儲存為 PNG 圖像檔案(建議用於網頁)SaveAsTiff():儲存為 TIFF 影像檔案(適用於歸檔/列印)SaveAsWindowsBitmap():儲存為 BMP 影像檔案SaveAsImage():通用方法——在檔案路徑中指定格式副檔名
此外,可將 BARCODE 匯出為資料流以供記憶體內處理,或將 BARCODE 建立為 PDF 文件以進行文件整合。
如何生成BARCODE並將其儲存為圖像檔案?
使用 BarcodeWriter.CreateBarcode() 生成 Code128 BARCODE,並將其儲存為 JPEG 圖片:
using IronBarCode;
// Create a basic barcode
BarcodeWriter.CreateBarcode("IronBarcode123", BarcodeEncoding.Code128, 200, 100).SaveAsJpeg("OneDBarcode.jpeg");
// Create a barcode with custom options
var myBarcode = BarcodeWriter.CreateBarcode("PRODUCT-12345", BarcodeEncoding.Code128, 300, 150);
// Apply styling
myBarcode.AddBarcodeValueTextBelowBarcode();
myBarcode.SetMargins(10);
// Save in multiple formats
myBarcode.SaveAsJpeg("product-barcode.jpg");
myBarcode.SaveAsPng("product-barcode.png");
using IronBarCode;
// Create a basic barcode
BarcodeWriter.CreateBarcode("IronBarcode123", BarcodeEncoding.Code128, 200, 100).SaveAsJpeg("OneDBarcode.jpeg");
// Create a barcode with custom options
var myBarcode = BarcodeWriter.CreateBarcode("PRODUCT-12345", BarcodeEncoding.Code128, 300, 150);
// Apply styling
myBarcode.AddBarcodeValueTextBelowBarcode();
myBarcode.SetMargins(10);
// Save in multiple formats
myBarcode.SaveAsJpeg("product-barcode.jpg");
myBarcode.SaveAsPng("product-barcode.png");
Imports IronBarCode
' Create a basic barcode
BarcodeWriter.CreateBarcode("IronBarcode123", BarcodeEncoding.Code128, 200, 100).SaveAsJpeg("OneDBarcode.jpeg")
' Create a barcode with custom options
Dim myBarcode = BarcodeWriter.CreateBarcode("PRODUCT-12345", BarcodeEncoding.Code128, 300, 150)
' Apply styling
myBarcode.AddBarcodeValueTextBelowBarcode()
myBarcode.SetMargins(10)
' Save in multiple formats
myBarcode.SaveAsJpeg("product-barcode.jpg")
myBarcode.SaveAsPng("product-barcode.png")
如需進階樣式設定選項,請參閱我們的BarCode樣式自訂指南。
如何生成 QR 碼並儲存為圖像檔案?
QR 碼(歸類為二維 BARCODE)獲得 IronBarcode 的完整支援。 其多功能性、美觀設計及可自訂功能,促使這些工具從餐廳菜單到支付系統等領域獲得廣泛採用。
由於 QR 碼的複雜性,其生成方式會因應不同情況而有所差異。 從 QRCodeWriter 類別呼叫 CreateQrCode() 方法,該方法接受 4 個參數:BarCode 值、輸出 QR 碼大小、QRCodeWriter.QrErrorCorrectionLevel 枚舉欄位,以及 QRVersion。
QR 碼的值可以使用哪些資料類型?
QRCodeWriter.CreateQrCode() 可接受數字、字母或字母數字值,並以 MemoryStream 或 System.String 類型儲存。QR 碼特別擅長儲存:
- 網址:引導使用者前往網站或登陸頁面
- 文字:最多可儲存 4,296 個英數字元
- 二進位資料:對檔案或複雜資料結構進行編碼
- 結構化資料:vCard、Wi-Fi 憑證或付款資訊
關於 Unicode 支援與國際化字元,請參閱我們的"撰寫 Unicode BARCODE"教學指南。
如何設定 QR 碼的大小?
請直接以 Int32 格式指定 QR 碼大小(單位為像素 (px))。 預設尺寸為 500 像素。 請考量以下因素:
- 顯示媒介:螢幕顯示通常需要 200-400px
- PRINT 應用程式:請使用 600 像素或更高解析度以確保列印品質
- 掃描距離:條碼尺寸越大,從較遠距離掃描的效果越好
什麼是 QR 錯誤校正等級?它為何重要?
QRErrorCorrectionLevel 決定容錯等級,共分四個層級:最高、高、中、低。 較高的校正等級會產生更複雜的 QR 碼,即使 QR 碼受損或部分被遮擋,也能有效防止讀取錯誤。
QRErrorCorrectionLevel.Highest
可生成具備 30% 錯誤修正能力的最複雜 QR 碼。 支援水印或圖像圖形。 非常適合用於自訂帶有商標的 QR 碼。
QRErrorCorrectionLevel.High
已進行 25% 的錯誤修正。 複雜度低於最高等級。 在耐用性與資料容量之間取得平衡。
QRErrorCorrectionLevel.Medium
已進行 15% 的錯誤修正。 生成 QR 碼的速度較快,但出錯機率較高。 適用於大多數需要清晰列印的商業應用。
QRErrorCorrectionLevel.Low
套用 7% 的錯誤修正率,生成複雜度最低的 QR 碼。 適用於需要最大資料容量且具備最佳掃描條件的情況。
何時該使用不同的 QR 版本?
QR 版本 (1-40) 決定了符號的複雜度與資料容量。 版本越高,產生的程式碼越複雜,儲存的資料也越多。 設定過低的版本會導致編碼大量資料時出現問題。 版本 0 會根據編碼值自動指派適當的版本。 See QR Version for more information.
如何建立具有特定設定的 QR 碼圖片?
使用 QRCodeWriter.CreateQrCode() 來生成 QR 碼並將其儲存為圖片:
using IronBarCode;
// Basic QR code creation
QRCodeWriter.CreateQrCode("IronBarcode1234", 250, QRCodeWriter.QrErrorCorrectionLevel.Medium, qrVersion: 0).SaveAsJpeg("QRMedium.jpeg");
// Advanced QR code with custom styling
var qrCode = QRCodeWriter.CreateQrCode("https://ironsoftware.com", 500, QRCodeWriter.QrErrorCorrectionLevel.High);
// Add logo and styling
qrCode.AddLogo("logo.png");
qrCode.ChangeBarCodeColor(System.Drawing.Color.DarkBlue);
// Save in multiple formats
qrCode.SaveAsPng("styled-qr.png");
qrCode.SaveAsPdf("styled-qr.pdf");
using IronBarCode;
// Basic QR code creation
QRCodeWriter.CreateQrCode("IronBarcode1234", 250, QRCodeWriter.QrErrorCorrectionLevel.Medium, qrVersion: 0).SaveAsJpeg("QRMedium.jpeg");
// Advanced QR code with custom styling
var qrCode = QRCodeWriter.CreateQrCode("https://ironsoftware.com", 500, QRCodeWriter.QrErrorCorrectionLevel.High);
// Add logo and styling
qrCode.AddLogo("logo.png");
qrCode.ChangeBarCodeColor(System.Drawing.Color.DarkBlue);
// Save in multiple formats
qrCode.SaveAsPng("styled-qr.png");
qrCode.SaveAsPdf("styled-qr.pdf");
Imports IronBarCode
' Basic QR code creation
QRCodeWriter.CreateQrCode("IronBarcode1234", 250, QRCodeWriter.QrErrorCorrectionLevel.Medium, qrVersion:=0).SaveAsJpeg("QRMedium.jpeg")
' Advanced QR code with custom styling
Dim qrCode = QRCodeWriter.CreateQrCode("https://ironsoftware.com", 500, QRCodeWriter.QrErrorCorrectionLevel.High)
' Add logo and styling
qrCode.AddLogo("logo.png")
qrCode.ChangeBarCodeColor(System.Drawing.Color.DarkBlue)
' Save in multiple formats
qrCode.SaveAsPng("styled-qr.png")
qrCode.SaveAsPdf("styled-qr.pdf")
該程式碼以中等錯誤修正等級,將一個字母數字值編碼為 250 像素。 版本 0 允許程式選擇合適的 QR 碼版本。 SaveAsJpeg() 接受帶有 JPEG 副檔名的檔案名稱。
BarCode影像生成的最佳實務
針對生產環境的應用程式:
- 選擇合適的格式:網頁使用 PNG,歸檔使用 TIFF,一般用途使用 JPEG
- 測試掃描:使用多種掃描裝置驗證 BARCODE
- 設定適當的邊距:使用BarCode邊距設定以確保掃描可靠性
- 考量效能:針對大量生成需求,探索非同步與多執行緒的選項
如需更多範例與技巧,請參閱我們的 C# BarCode 影像產生器教學。
常見問題
如何使用 C# 透過單行程式碼建立 BarCode 圖像?
透過 IronBarcode,您可以使用 BarcodeWriter.CreateBarcode() 方法,僅需一行程式碼即可建立條碼影像。 只需傳入您的資料、編碼類型、寬度和高度,然後將其儲存為圖像檔案。例如:IronBarCode.BarCodeWriter.CreateBarCode("Sample123", BarcodeEncoding.Co/de128, 250, 100).SaveAsPng("BarCode.png");
我可以將哪些類型的資料編碼到BARCODE中?
IronBarcode 的 BarCodeWriter.CreateBarCode() 方法支援多種資料類型,包括位元組陣列、MemoryStream 及字串。字串長度與可接受的字元會因 BarCode 類型而異——Code128 支援完整的 ASCII 字元集,而 UPC-A 則必須精確為 12 位數字。針對二進位資料,您可以使用位元組陣列來編碼複雜的資料結構。
支援哪些BarCode格式進行影像生成?
IronBarcode 支援多種 BARCODE 格式,包括線性/1D BARCODE(Code128、Code39、UPC-A、UPC-E、EAN-8、EAN-13)、2D BARCODE(QR Code、Data Matrix、PDF417、Aztec),以及專用格式,例如用於物流的 MaxiCode 和用於零售的 Databar。 每種格式皆有其特定用途,其中 Code128 適用於一般字母數字資料,而 QR 碼則為行動掃描提供卓越的錯誤修正能力。
如何設定BarCode圖像的尺寸?
您可直接在 CreateBarCode() 方法的參數中,以像素為單位設定 BarCode 圖像的尺寸。IronBarcode 預設寬度和高度均為 250px。某些 BarCode 類型(如 QR 碼和 PDF417)可能需要符合特定規格的尺寸,當輸入的尺寸不符合要求時,該程式庫會自動進行調整。
生成的BarCode可以儲存為哪些圖像檔案格式?
IronBarcode 允許您使用 SaveAs() 方法,將生成的 BarCode 儲存為多種圖像格式。您可以透過 SaveAsPng() 儲存為 PNG 格式,亦可儲存為 JPEG、BMP 和 TIFF 等其他常見格式。由 CreateBarcode() 返回的 GeneratedBarcode 物件提供了適用於不同檔案類型的各種儲存方法。
除了傳統 BarCode 外,我也能生成 QR 碼嗎?
是的,IronBarcode 除了傳統 BARCODE 外,也完全支援 QR 碼的生成。您可以透過相同的 CreateBarcode() 方法,並將編碼類型指定為 BarcodeEncoding.QRCode 來建立 QR 碼。QR 碼具備優異的錯誤修正能力等優勢,非常適合用於行動掃描應用。
IronBarcode是否提供自定義條碼外觀的支持?
是的,IronBarcode提供了廣泛的條碼外觀自定義選項,包括顏色、大小和文字註釋,讓您可以根據具體設計需求定制條碼。
IronBarcode如何幫助改善業務流程效率?
IronBarcode通過使條碼生成和讀取快速且準確來提高業務流程效率,減少手動數據輸入錯誤,並改善庫存和資產追蹤。
將IronBarcode實現於專案中需要什麼程式設計技能?
基本的C#程式設計知識足以將IronBarcode實現於專案中,因為它提供了簡單的方法和全面的文檔來指導開發者。
IronBarcode適合於小型專案和大型企業應用嗎?
IronBarcode設計為可擴展且多功能,使其適合小型專案和需要強大條碼解決方案的大型企業應用。

