IronBarcode 操作指南 從 System.Drawing 中讀取條碼 How to Read Barcodes From System.Drawing Objects Hairil Hasyimi Bin Omar 更新日期:7月 22, 2025 Download IronBarcode NuGet 下載 DLL 下載 Start Free Trial Copy for LLMs Copy for LLMs Copy page as Markdown for LLMs Open in ChatGPT Ask ChatGPT about this page Open in Gemini Ask Gemini about this page Open in Grok Ask Grok about this page Open in Perplexity Ask Perplexity about this page Share Share on Facebook Share on X (Twitter) Share on LinkedIn Copy URL Email article This article was translated from English: Does it need improvement? Translated View the article in English System.Drawing 物件常被開發人員用於 .NET 中與影像處理相關的任務。 然而,Microsoft 已經在其他作業系統上停止支援 System.Drawing,例如MacOS 和Linux,現在只支援Windows。 這一重大改變使得在非 Windows 作業系統上使用 IronBarcode 的開發人員遇到了多個問題。 這是因為處理條碼通常涉及使用如圖形、影像和字體等物件。 為了解決這個問題,我們引入了一個替代解決方案:IronDrawing。 這個由 IronSoftware 啟動的免費且開源的程式庫,旨在簡化使其在非 Windows 作業系統上運行的過程。 這為我們的使用者提供了一個友好的使用體驗。 當您從 NuGet 安裝 IronBarcode 時,IronDrawing 將自動包含在您的項目中。 快速入門:使用 AnyBitmap 在一條簡單的線中讀取條碼 此代碼片段展示了 IronBarcode 如何輕鬆地透過創建 System.Drawing.Bitmap 並讓 IronDrawing 將其隱式轉換為 AnyBitmap。只需一行代碼,任何作業系統上的開發人員都能快速且簡單地獲得結果。 Get started making PDFs with NuGet now: Install IronBarcode with NuGet Package Manager PM > Install-Package BarCode Copy and run this code snippet. var results = IronBarCode.BarcodeReader.Read((AnyBitmap)(new System.Drawing.Bitmap("yourImage.png"))); Deploy to test on your live environment Start using IronBarcode in your project today with a free trial Free 30 day Trial class="hsg-featured-snippet"> 最小工作流程(5 步) 下載 C# 函式庫以從 System.Drawing 讀取條碼 利用 IronDrawing 將 System.Drawing 物件轉換為 AnyBitmap 使用Read方法從 AnyBitmap 物件讀取條碼 在控制台上顯示檢測到的條碼值 探索另一篇文章以了解如何使用 IronDrawing 處理顏色和字體 將 System.Drawing 轉換為 AnyBitmap 從System.Drawing讀取條碼只需將物件轉換為 AnyBitmap。IronDrawing 的設計考慮到了使用的簡便性。 因此,IronDrawing 支援將System.Drawing影像物件隱式轉換為名為AnyBitmap的IronSoftware.Drawing影像物件。 除了System.Drawing物件之外,我們還支援從其他類型的物件進行轉換,包括: System.Drawing.Bitmap System.Drawing.Image SkiaSharp.SKBitmap SkiaSharp.SKImage SixLabors.ImageSharp 用戶可以參考以下代碼範例以進行上方物件的轉換。 下面是一個代碼片段,展示了如何將條碼的影像從System.Drawing objects轉換為IronSoftware.Drawing.AnyBitmap。 這是一個簡單的範例: :path=/static-assets/barcode/content-code-examples/how-to/read-barcodes-from-system-drawing-cast-to-anybitmap.cs using IronSoftware.Drawing; using System.Collections.Generic; List<AnyBitmap> barcodes = new List<AnyBitmap>(); // Instantiate System.Drawing.Bitmap System.Drawing.Bitmap bitmapFromBitmap = new System.Drawing.Bitmap("test1.jpg"); // Cast from System.Drawing.Bitmap to AnyBitmap AnyBitmap barcode1 = bitmapFromBitmap; barcodes.Add(barcode1); // Instantiate System.Drawing.Bitmap System.Drawing.Image bitmapFromFile = System.Drawing.Image.FromFile("test2.png"); // Cast from System.Drawing.Image to AnyBitmap AnyBitmap barcode2 = bitmapFromFile; barcodes.Add(barcode2); Imports IronSoftware.Drawing Imports System.Collections.Generic Private barcodes As New List(Of AnyBitmap)() ' Instantiate System.Drawing.Bitmap Private bitmapFromBitmap As New System.Drawing.Bitmap("test1.jpg") ' Cast from System.Drawing.Bitmap to AnyBitmap Private barcode1 As AnyBitmap = bitmapFromBitmap barcodes.Add(barcode1) ' Instantiate System.Drawing.Bitmap Dim bitmapFromFile As System.Drawing.Image = System.Drawing.Image.FromFile("test2.png") ' Cast from System.Drawing.Image to AnyBitmap Dim barcode2 As AnyBitmap = bitmapFromFile barcodes.Add(barcode2) $vbLabelText $csharpLabel 從上述代碼片段中,我們載入了兩幅條碼影像作為System.Drawing.Bitmap和System.Drawing.Image。 然後我們僅透過將它們賦值給 AnyBitmap 物件,將它們隱式轉換為AnyBitmap。 隨後,我們將這些物件添加到一個AnyBitmap清單中。 從 AnyBitmap 讀取條碼 IronBarcode 在其所有方法中均能輕鬆接受IronSoftware.Drawing.AnyBitmap物件,無需額外配置。 這為使用 IronBarcode 且在其他作業系統上不支援System.Drawing物件的開發人員提供了方便。 下面的代碼片段展示了如何進行這樣的操作。 :path=/static-assets/barcode/content-code-examples/how-to/read-barcodes-from-system-drawing-read-anybitmap.cs using IronBarCode; using IronSoftware.Drawing; using System; using System.Collections.Generic; List<AnyBitmap> barcodes = new List<AnyBitmap>(); System.Drawing.Bitmap bitmapFromBitmap = new System.Drawing.Bitmap("test1.jpg"); AnyBitmap barcode1 = bitmapFromBitmap; barcodes.Add(barcode1); System.Drawing.Image bitmapFromFile = System.Drawing.Image.FromFile("test2.png"); AnyBitmap barcode2 = bitmapFromFile; barcodes.Add(barcode2); foreach (var barcode in barcodes) { // Read the barcode var results = BarcodeReader.Read(barcode); foreach (var result in results) { // Output the detected barcode value Console.WriteLine(result.Value); } } Imports IronBarCode Imports IronSoftware.Drawing Imports System Imports System.Collections.Generic Private barcodes As New List(Of AnyBitmap)() Private bitmapFromBitmap As New System.Drawing.Bitmap("test1.jpg") Private barcode1 As AnyBitmap = bitmapFromBitmap barcodes.Add(barcode1) Dim bitmapFromFile As System.Drawing.Image = System.Drawing.Image.FromFile("test2.png") Dim barcode2 As AnyBitmap = bitmapFromFile barcodes.Add(barcode2) For Each barcode In barcodes ' Read the barcode Dim results = BarcodeReader.Read(barcode) For Each result In results ' Output the detected barcode value Console.WriteLine(result.Value) Next result Next barcode $vbLabelText $csharpLabel 上面的代碼片段是之前代碼片段的擴展。 一旦我們填充了 AnyBitmap 清單,就能逐一遍歷清單並在每個 AnyBitmap 物件上呼叫Read方法作為參數,然後返回IronBarcode.BarcodeResults。 然後,我們遍歷返回的物件以將條碼值打印到控制台。 在IronSoftware.Drawing中的功能區域不僅僅限於影像的轉換。 它還被大量用於其他影像處理方面,如顏色和字體,它們在樣式化條碼和 QR 碼方面很有用。 用戶可以探索我們如何利用 IronDrawing 自訂和添加徽標到 QR 碼。 常見問題解答 我如何在 .NET C# 中從 System.Drawing 對象中讀取條碼? 您可以通過將 IronBarcode 與 IronDrawing 結合使用來從 System.Drawing 對象中讀取條碼。首先使用 IronDrawing 將 System.Drawing 對象轉換為 AnyBitmap,然後使用 IronBarcode 的 Read 方法來讀取條碼。 什麼是 IronDrawing,它如何幫助條碼讀取? IronDrawing 是由 IronSoftware 提供的免費開源庫,允許將 System.Drawing 對象隱式轉換為 AnyBitmap。通過使這些對象與 IronBarcode 兼容,促進了在非 Windows 操作系統上的條碼讀取。 我能在 MacOS 和 Linux 上使用 IronBarcode 來讀取條碼嗎? 是的,通過使用 IronDrawing,您可以將 System.Drawing 對象轉化為 AnyBitmap,這使得 IronBarcode 能夠在 MacOS 和 Linux 上讀取條碼,克服 System.Drawing 僅支持 Windows 的限制。 哪些圖像對象類型可以轉換為 AnyBitmap 用於條碼讀取? 除了 System.Drawing 對象之外,您還可以將 System.Drawing.Bitmap、System.Drawing.Image、SkiaSharp.SKBitmap、SkiaSharp.SKImage 和 SixLabors.ImageSharp 對象轉換為 AnyBitmap,以便使用 IronBarcode 進行條碼讀取。 我如何使用 IronBarcode 顯示檢測到的條碼值? 在使用 IronBarcode 的 Read 方法讀取條碼後,遍歷 BarcodeResult 數組並將每個條碼值打印到控制台。 安裝條碼讀取庫時,是否會包含 IronDrawing? 是的,當您從 NuGet 安裝 IronBarcode 時,IronDrawing 會自動包含到您的項目中,提供條碼讀取的無縫集成。 圖像對象的隱式轉換如何幫助條碼處理? 使用 IronDrawing 將圖像對象隱式轉換為 AnyBitmap 簡化了使 System.Drawing 對象與 IronBarcode 兼容的過程,從而增強了各種操作系統上的條碼處理。 Hairil Hasyimi Bin Omar 立即與工程團隊聊天 軟體工程師 和所有优秀的工程师一样,Hairil 是个努力学习者。他正在细化自己的 C# 、Python 和 Java 知识,将这些知识应用于 Iron Software 各个团队成员以增加价值。Hairil 自马来西亚 Universiti Teknologi MARA 加入 Iron Software 团队,并以化学与工艺工程学士学位毕业。 準備好開始了嗎? Nuget 下載 1,935,276 | 版本: 2025.11 剛剛發布 免費 NuGet 下載 總下載量:1,935,276 查看許可證