C#使用ZXing.Net實現(xiàn)生成二維碼和條碼
寫在前面
條碼生成是一個經(jīng)常需要處理的功能,本文介紹一個條碼處理類庫,ZXing用Java實現(xiàn)的多種格式的一維二維條碼圖像處理庫,而ZXing.Net是其.Net版本的實現(xiàn)。
在WinForm下使用該類庫需要從NuGet安裝兩個組件:
ZXing.Net
ZXing.Net.Bindings.Windows.Compatibility
代碼實現(xiàn)
using ZXing; using ZXing.Common; using ZXing.OneD; using ZXing.QrCode; using ZXing.Windows.Compatibility; namespace QrCodeGen { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { var writer = new BarcodeWriter<Bitmap>(); writer.Format = BarcodeFormat.QR_CODE; QrCodeEncodingOptions options = new QrCodeEncodingOptions() { DisableECI = true, //設(shè)置內(nèi)容編碼 CharacterSet = "UTF-8", //設(shè)置二維碼的寬度和高度 Width = 200, Height = 200, Margin = 1 //設(shè)置二維碼的邊距,單位不是固定像素 }; var render = new AlternateBitmapRenderer(); writer.Renderer = render; writer.Options = options; Bitmap map = writer.Write("Hello world"); pictureBox1.Image = map; } private void button2_Click(object sender, EventArgs e) { var w = new EAN13Writer(); var render = new AlternateBitmapRenderer(); render.TextFont = new Font("Segoe UI", 25); var content = "1234567890123"; // EAN-13 商品條碼的標準尺寸是 37.29mm x 26.26 mm ,按照 300 DPI 換算像素大小是 440 x 310 var m = w.encode(content, BarcodeFormat.EAN_13, 440, 310); //渲染得到的圖片 var bmp = render.Render(m, BarcodeFormat.EAN_13, content, new EncodingOptions { Width = 440, Height = 310 }); pictureBox2.Image = bmp; } } }
EAN-13商品條碼是表示EAN/UCC-13商品標識代碼的條碼符號,由左側(cè)空白區(qū)、起始符、左側(cè)數(shù)據(jù)符、中間分隔符、右側(cè)數(shù)據(jù)符、校驗符、終止符、右側(cè)空白區(qū)及供人識別字符組成。
調(diào)用示例
到此這篇關(guān)于C#使用ZXing.Net實現(xiàn)生成二維碼和條碼的文章就介紹到這了,更多相關(guān)C#生成二維碼條碼內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C#/VB.NET實現(xiàn)在Word中插入或刪除腳注
腳注,是可以附在文章頁面的最底端的,對某些東西加以說明,印在書頁下端的注文。這篇文章將為您展示如何通過C#/VB.NET代碼,以編程方式在Word中插入或刪除腳注,需要的可以參考一下2023-03-03c#求范圍內(nèi)素數(shù)的示例分享(c#求素數(shù))
問題是判斷101-200之間有多少個素數(shù),并輸出所有素數(shù)。下面是使用C#解決這個問題的方法 ,需要的朋友可以參考下2014-03-03