C#使用ZXing.Net实现生成二维码和条码
作者:rjcql
ZXing用Java实现的多种格式的一维二维条码图像处理库,而ZXing.Net是其.Net版本的实现,下面我们就来看看 C#如何使用ZXing.Net实现生成二维码和条码吧
写在前面
条码生成是一个经常需要处理的功能,本文介绍一个条码处理类库,ZXing用Java实现的多种格式的一维二维条码图像处理库,而ZXing.Net是其.Net版本的实现。
在WinForm下使用该类库需要从NuGet安装两个组件:
ZXing.Net
ZXing.Net.Bindings.Windows.Compatibility
代码实现
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, //设置内容编码 CharacterSet = "UTF-8", //设置二维码的宽度和高度 Width = 200, Height = 200, Margin = 1 //设置二维码的边距,单位不是固定像素 }; 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#使用ZXing.Net实现生成二维码和条码的文章就介绍到这了,更多相关C#生成二维码条码内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!