一、一维码
1.一维条码即指条码条和空的排列规则,常用的一维码的码制包括:EAN码、39码、交叉25码、UPC码、128码、93码,ISBN码,及Codabar(库德巴码)等。
2.一维码用处:可以识别商品的基本信息,例如商品名称、价格等,但并不能提供商品更详细的信息,要调用更多的信息,需要电脑数据库的进一步配合。
代码具体实现:引用spire Barcode程序包,既可以生成一维码,又可以生成二维码,这是一个EAN-13码
使用winform实现:
//创建 BarcodeSettings对象
BarcodeSettings settings = new BarcodeSettings();
//设置条形类型为EAN-13
settings.Type = BarCodeType.EAN13;
//设置条形码数据
settings.Data = this.textBox1.Text;
//使用校检
settings.UseChecksum = CheckSumMode.ForceEnable;
//在底部显示条形码数据
settings.ShowTextOnBottom = true;
//设置宽度
settings.X = 1f;
//初始化 BarcodeSetting对象,传入以上设置
BarCodeGenerator generator = new BarCodeGenerator(settings);
//创建条形码图片并保存为png格式
Image image = generator.GenerateImage();
image.Save("111.png", System.Drawing.Imaging.ImageFormat.Png);
//显示到页面上
pictureBox1.Image = Image.FromFile(@"D:.net 1WebApplication9WindowsFormsApp3inDebug111.png");
效果图:
二、二维码
二维码:二维码又称QR Code,QR全称Quick Response,是一个近几年来移动设备上超流行的一种编码方式,它比传统的Bar Code条形码能存更多的信息,也能表示更多的数据类型。
二维码的特点:
1、高密度编码,信息容量大:可容纳多达l850个大写字母或2710个数字或1108个字节,或500多个汉字,比普通条码信息容量约高几十倍。
2、编码范围广:该条码可以把图片、声音、文字、签字、指纹等可以数字化的信息进行编码,用条码表示出来;可以表示多种语言文字;可表示图像数据。
3、容错能力强,具有纠错功能:这使得二维条码因穿孔、污损等引起局部损坏时,照样可以正确得到识读,损毁面积达50%仍可恢复信息。
4、译码可靠性高:它比普通条码译码错误率百万分之二要低得多,误码率不超过千万分之一。
5、可引入加密措施:保密性、防伪性好。
6、成本低,易制作,持久耐用。
7、条码符号形状、尺寸大小比例可变。
8、二维条码可以使用激光或CCD阅读器识读。
9、二维条码具有储存量大、保密性高、追踪性高、抗损性强、备援性大、成本便宜等特性,这些特性特别适用于表单、安全保密、追踪、证照、存货盘点、资料备援等方面
二维码功能:
1、扫描商品条码、二维码
2、保存和分享二维码信息内容
3、解码二维码图片
4、LBS导航定位
5、商户公共空间检索
6、二维码空间
7、共享生活信息
8、二维码社交娱乐
代码具体实现:
//创建 BarcodeSettings对象
BarcodeSettings settings = new BarcodeSettings();
//设置条形类型为EAN-13
settings.Type = BarCodeType.QRCode;
//设置条形码数据
settings.Data = textBox1.Text;
//数据类型为数据
settings.QRCodeDataMode = QRCodeDataMode.Numeric;
//不显示文本
settings.ShowText = false;
//设置二维码错误修正级别
settings.QRCodeECL = QRCodeECL.H;
//设置宽度
settings.X = 2.0f;
//初始化 BarcodeSetting对象
BarCodeGenerator generator = new BarCodeGenerator(settings);
//创建条形码图片并保存为png格式
Image image = generator.GenerateImage();
image.Save("ErWeiMa.png");
//显示到页面上
pictureBox1.Image = Image.FromFile(@"D:.net 1WebApplication9WindowsFormsApp3inDebugErWeiMa.png");
效果图: