我們通常使用條形碼以機器可讀的形式表示有關產品或公司的編碼數據或信息。通常,我們使用帶有文本標籤的條形碼。但是,我們也可以在 .NET 應用程序中以編程方式生成帶有公司徽標或圖像的條形碼。在本文中,我們將學習如何使用 C# 生成帶有徽標的條形碼。
文章應涵蓋以下主題:
使用 C# API 生成帶有徽標的條形碼
為了生成帶有徽標或圖像的條形碼,我們將使用 Aspose.BarCode for .NET API。它允許我們生成和識別範圍廣泛的 1D 和 2D 條碼類型。請 下載 API 的 DLL 或使用 NuGet 安裝它。
PM> Install-Package Aspose.BarCode
在 C# 中生成帶有徽標的條形碼
我們可以按照以下步驟生成帶有徽標或圖像的條形碼:
- 首先,使用 EncodeType 和要編碼的文本作為參數創建 BarcodeGenerator 類的實例。
- 或者,以像素為單位設置條形碼大小值。
- 接下來,使用 GenerateBarCodeImage() 方法生成條形碼圖像並將其存儲在位圖中。
- 然後,將徽標圖像加載為位圖。
- 之後,使用徽標的高度和生成的條碼圖像創建一個新的空位圖圖像。
- 接下來,使用 FromImage() 方法初始化 Graphics 類對象。它以一個空位圖對像作為參數。
- 然後,使用 Clear() 方法清除畫布。
- 現在,調用 DrawImage() 方法在畫布上繪製條碼圖像。
- 之後,再次調用 DrawImage() 方法在畫布上繪製徽標圖像。
- 最後,使用 Image.Save() 方法保存輸出。它以輸出文件路徑作為參數。
以下代碼示例演示瞭如何使用 C# 生成帶有徽標圖像的條形碼。
// 此代碼示例演示如何使用圖像而不是代碼文本生成條形碼。
// 創建 BarcodeGenerator 類的實例
// 設置條形碼符號
// 設置條碼文字
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.EAN13, "1234567890");
// 以像素為單位設置 QR 碼大小值
generator.Parameters.Barcode.XDimension.Pixels = 10;
// 生成條碼圖像並將其存儲在位圖中
Bitmap barcode = generator.GenerateBarCodeImage();
// 將徽標或其他圖像加載為位圖
Bitmap picture = (Bitmap)Image.FromFile(@"D:\Files\BarCode\aspose-logo.png");
// 使用新的計算高度和寬度創建一個新的空圖像
Bitmap output = new Bitmap(Math.Max(barcode.Width, picture.Width), barcode.Height + picture.Height);
// 獲取圖形對象
using (Graphics g = Graphics.FromImage(output))
{
// 清除畫布
g.Clear(Color.White);
// 在畫布上繪製主圖像(條形碼圖像)
g.DrawImage(picture, new PointF(30, 0));
// 在條形碼圖像內的畫布上繪製第二個圖像(徽標圖像)
g.DrawImage(barcode, new PointF(0, picture.Height));
}
// 保存輸出圖像
output.Save(@"D:\Files\BarCode\output.jpg");
使用C#生成帶有Logo的二維碼
同樣,我們也可以按照前面提到的步驟生成帶有logo或圖片的二維碼。但是,我們需要在第一步中將 EncodeType 設置為 QR。
以下代碼示例演示瞭如何使用 C# 生成帶有徽標圖像的 QR 碼。
// 此代碼示例演示如何使用圖像而不是代碼文本生成條形碼。
// 創建 BarcodeGenerator 類的實例
// 設置條形碼符號
// 設置條碼文字
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.QR, "1234567890");
// 以像素為單位設置 QR 碼大小值
generator.Parameters.Barcode.XDimension.Pixels = 10
// 生成條碼圖像並將其存儲在位圖中
Bitmap barcode = generator.GenerateBarCodeImage();
// 將徽標或其他圖像加載為位圖
Bitmap picture = (Bitmap)Image.FromFile(@"D:\Files\BarCode\logo.png");
// 使用新的計算高度和寬度創建一個新的空圖像
Bitmap output = new Bitmap(Math.Max(barcode.Width, picture.Width), barcode.Height + picture.Height);
// 獲取圖形對象
using (Graphics g = Graphics.FromImage(output))
{
// 清除畫布
g.Clear(Color.White);
// 在畫布上繪製主圖像(條形碼圖像)
g.DrawImage(picture, new PointF(30, 0));
// 在條形碼圖像內的畫布上繪製第二個圖像(徽標圖像)
g.DrawImage(barcode, new PointF(0, picture.Height));
}
// 保存輸出圖像
output.Save(@"D:\Files\BarCode\qr_output.jpg");
獲得免費許可證
您可以 獲得免費的臨時許可證 來試用該庫,而沒有評估限制。
結論
在本文中,我們學習瞭如何生成帶有徽標圖像的條形碼。我們還了解瞭如何以編程方式生成帶有圖像的 QR 碼。此外,您可以使用文檔了解更多關於 Aspose.BarCode for .NET API 的信息。如有任何歧義,請隨時在論壇上與我們聯繫。