当前位置:首页>生活>条形码和二维码的选择.NETC利用ZXing生成
发布时间:2026-04-26阅读(0)
ZXing是一个开放源码的,用Java实现的多种格式的1D/2D条码图像处理库,它包含了联系到其他语言的端口。这篇文章主要给大家介绍了.NET C#利用ZXing生成、识别二维码/条形码的方法,文中给出了详细的示例代码,有需要的朋友们可以参考借鉴

private Bitmap zxing_Qrcode(string str,int heigth,int width,int margin){Bitmap pic = null;BarcodeWriter barwriter=new BarcodeWriter();barwriter.Format=BarcodeFormat.QR_CODE ;barwriter.Options.Hints.Add (EncodeHintType.CHARACTER_SET,"UTF-8");//编码格式barwriter .Options.Hints.Add (EncodeHintType.ERROR_CORRECTION,ZXing.QrCode.Internal.ErrorCorrectionLevel.H);//容错等级 barwriter.Options.Width=width;barwriter.Options.Height=heigth;barwriter.Options.Margin=margin; if (str ==string.Empty)private string zxing_解码_二维码(Bitmap 图片){BarcodeReader reader = new BarcodeReader();var result =reader.Decode(图片);return(result.Text);} {return null ;}ZXing.Common.BitMatrix bm=barwriter.Encode(str);pic =barwriter.Write(bm);return pic;}
2.二维码识别
private string zxing_IdentifyQrcode(Bitmap img){BarcodeReader reader = new BarcodeReader();var result =reader.Decode(img);return(result.Text);}

3.条形码生成
private Bitmap Out1DImg(string str) { // 1.设置条形码规格 EncodingOptions encodeOption = new EncodingOptions(); encodeOption.Height = 68; // 必须制定高度、宽度 encodeOption.Width = 140; // 2.生成条形码图片并保存 ZXing.BarcodeWriter wr = new BarcodeWriter(); wr.Options = encodeOption; wr.Format = BarcodeFormat.CODE_128; // 条形码规格:EAN13规格:12(无校验位)或13位数字 //把Barcode128 字体设置成null,就没有下面的文字了。 encodeOption.PureBarcode = false; // 是否是纯码,如果为 false,则会在图片下方显示数字 System.Threading.Thread.Sleep(100); //间隔 string data = DateTime.Now.ToString(str); Bitmap img = wr.Write(data); // 生成图片 return img; }
4.条形码识别
private void button6_Click(object sender, EventArgs e) { pictureBox4.Image = pictureBox3.Image; BarcodeReader reader = new BarcodeReader(); Bitmap bmp = (Bitmap)pictureBox4.Image; if (bmp != null) { Result result = reader.Decode(bmp); textBox4.Text = result.Text; } else { MessageBox.Show("识别失败"); } }
觉得有用的朋友可以点赞收藏转发,说不定在哪个项目上就用上了
学习之路一点点前进加油
Copyright © 2024 有趣生活 All Rights Reserve吉ICP备19000289号-5 TXT地图HTML地图XML地图