龙空技术网

.NET C#利用ZXing生成、识别二维码/条形码

大胜慌慌2022 608

前言:

此刻小伙伴们对“zxingnet说明书”大概比较珍视,各位老铁们都需要学习一些“zxingnet说明书”的相关资讯。那么小编在网络上收集了一些关于“zxingnet说明书””的相关内容,希望小伙伴们能喜欢,咱们快快来了解一下吧!

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;		}
L - 约 7% 纠错能力。M - 约 15% 纠错能力。Q - 约 25% 纠错能力。H - 约 30% 纠错能力。

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("识别失败");            }        }

觉得有用的朋友可以点赞收藏转发,说不定在哪个项目上就用上了

学习之路一点点前进加油

标签: #zxingnet说明书