C#使用ZXing.Net實(shí)現(xiàn)生成二維碼和條碼
寫在前面
條碼生成是一個(gè)經(jīng)常需要處理的功能,本文介紹一個(gè)條碼處理類庫(kù),ZXing用Java實(shí)現(xiàn)的多種格式的一維二維條碼圖像處理庫(kù),而ZXing.Net是其.Net版本的實(shí)現(xiàn)。
在WinForm下使用該類庫(kù)需要從NuGet安裝兩個(gè)組件:
ZXing.Net

ZXing.Net.Bindings.Windows.Compatibility

代碼實(shí)現(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 商品條碼的標(biāo)準(zhǔn)尺寸是 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商品標(biāo)識(shí)代碼的條碼符號(hào),由左側(cè)空白區(qū)、起始符、左側(cè)數(shù)據(jù)符、中間分隔符、右側(cè)數(shù)據(jù)符、校驗(yàn)符、終止符、右側(cè)空白區(qū)及供人識(shí)別字符組成。
調(diào)用示例

到此這篇關(guān)于C#使用ZXing.Net實(shí)現(xiàn)生成二維碼和條碼的文章就介紹到這了,更多相關(guān)C#生成二維碼條碼內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C#基于正則表達(dá)式抓取a標(biāo)簽鏈接和innerhtml的方法
這篇文章主要介紹了C#基于正則表達(dá)式抓取a標(biāo)簽鏈接和innerhtml的方法,結(jié)合實(shí)例形式分析了C#使用正則表達(dá)式進(jìn)行頁(yè)面元素的匹配與抓取相關(guān)操作技巧,需要的朋友可以參考下2017-06-06
C#/VB.NET實(shí)現(xiàn)在Word中插入或刪除腳注
腳注,是可以附在文章頁(yè)面的最底端的,對(duì)某些東西加以說明,印在書頁(yè)下端的注文。這篇文章將為您展示如何通過C#/VB.NET代碼,以編程方式在Word中插入或刪除腳注,需要的可以參考一下2023-03-03
c#求范圍內(nèi)素?cái)?shù)的示例分享(c#求素?cái)?shù))
問題是判斷101-200之間有多少個(gè)素?cái)?shù),并輸出所有素?cái)?shù)。下面是使用C#解決這個(gè)問題的方法 ,需要的朋友可以參考下2014-03-03
C# 調(diào)用WebApi的實(shí)現(xiàn)
這篇文章主要介紹了C# 調(diào)用WebApi的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04
C#遍歷操作系統(tǒng)下所有驅(qū)動(dòng)器的方法
這篇文章主要介紹了C#遍歷操作系統(tǒng)下所有驅(qū)動(dòng)器的方法,涉及C#中DriveInfo類GetDrivers方法的使用技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-04-04

