国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

基于C#生成條形碼操作知識匯總附源碼下載

2019-10-29 21:34:09
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了基于C#生成條形碼操作知識匯總的相關資料,需要的朋友可以參考下
 

1. 介紹

1.1 條形碼

條形碼(barcode):是將寬度不等的多個黑條和空白,按照一定的編碼規則排列,用以表達一組信息的圖形標識符。

1.2 條形碼分類

可分為一維條形碼和二維條形碼:

一維條形碼:只是在一個方向(一般是水平方向)表達信息,而在垂直方向則不表達任何信息。

二維條形碼:在水平和垂直方向的二維空間存儲信息的條形碼。

1.3 第三方類庫:ZXing.Net

1.3.1 說明

ZXing 是一個可生成和讀取 1D/2D(1維/2維) 條形碼的開源類庫。原先是Java版本,后由第三方衍生了支持QT、C++、.Net等版本。

.Net版本支持的平臺:.Net 2.0, 3.5 and 4.0、Silverlight 4 and 5、Windows Phone 7.0, 7.1 and 8.0、Windows CE、Unity3D、Xamarin.Android 等等。

1.3.2 下載地址

Java 版本:https://github.com/zxing/zxing

ZXing.Net 版本:http://zxingnet.codeplex.com/

2. 一維碼操作

2.1 介紹

一維條形碼:只是在一個方向(一般是水平方向)表達信息,而在垂直方向則不表達任何信息。

常用碼制:EAN碼、39碼、交叉25碼、UPC碼、128碼、93碼,ISBN碼及Codabar(庫德巴碼)等。

國內推行使用的是EAN商品條形碼,可分為EAN-13(標準版)和EAN-8(縮短版)兩種。

例圖:

基于C#生成條形碼操作知識匯總附源碼下載

2.2 生成一維碼

以生成EAN-13碼制為例:

// 1.設置條形碼規格EncodingOptions encodeOption = new EncodingOptions();encodeOption.Height = 130; // 必須制定高度、寬度encodeOption.Width = 240; // 2.生成條形碼圖片并保存ZXing.BarcodeWriter wr = new BarcodeWriter();wr.Options = encodeOption;wr.Format = BarcodeFormat.EAN_13; // 條形碼規格:EAN13規格:12(無校驗位)或13位數字Bitmap img = wr.Write(this.ContentTxt.Text); // 生成圖片string filePath = System.AppDomain.CurrentDomain.BaseDirectory + "//EAN_13-" + this.ContentTxt.Text + ".jpg";img.Save(filePath, System.Drawing.Imaging.ImageFormat.Jpeg); 

2.3 讀取一維碼

以讀取EAN-13碼制的圖片為例:

// 1.設置讀取條形碼規格DecodingOptions decodeOption = new DecodingOptions();decodeOption.PossibleFormats = new List<BarcodeFormat>() {  BarcodeFormat.EAN_13,};// 2.進行讀取操作ZXing.BarcodeReader br = new BarcodeReader();br.Options = decodeOption;ZXing.Result rs = br.Decode(this.barCodeImg.Image as Bitmap);if (rs == null){ this.ContentTxt.Text = "讀取失敗"; MessageBox.Show("讀取失敗");}else{ this.ContentTxt.Text = rs.Text; MessageBox.Show("讀取成功,內容:" + rs.Text);} 

3. 二維碼操作

3.1 介紹

二維碼:在水平和垂直方向的二維空間存儲信息的條形碼。

常用碼制:PDF417、QR Code、Code 49、Code 16K、Code One等。

例圖:

 基于C#生成條形碼操作知識匯總附源碼下載

3.2 生成二維碼

以生成QR碼制為例:

// 1.設置QR二維碼的規格ZXing.QrCode.QrCodeEncodingOptions qrEncodeOption = new ZXing.QrCode.QrCodeEncodingOptions();qrEncodeOption.CharacterSet = "UTF-8"; // 設置編碼格式,否則讀取'中文'亂碼qrEncodeOption.Height = 200;qrEncodeOption.Width = 200;qrEncodeOption.Margin = 1; // 設置周圍空白邊距// 2.生成條形碼圖片并保存ZXing.BarcodeWriter wr = new BarcodeWriter();wr.Format = BarcodeFormat.QR_CODE; // 二維碼wr.Options = qrEncodeOption;Bitmap img = wr.Write(this.ContentTxt.Text);string filePath = System.AppDomain.CurrentDomain.BaseDirectory + "//QR-" + this.ContentTxt.Text + ".jpg";img.Save(filePath, System.Drawing.Imaging.ImageFormat.Jpeg); 

3.3 讀取二維碼

以讀取QR碼制的圖片為例:

// 1.設置讀取條形碼規格DecodingOptions decodeOption = new DecodingOptions();decodeOption.PossibleFormats = new List<BarcodeFormat>() {  BarcodeFormat.QR_CODE,;// 2.進行讀取操作ZXing.BarcodeReader br = new BarcodeReader();br.Options = decodeOption;ZXing.Result rs = br.Decode(this.barCodeImg.Image as Bitmap);if (rs == null){ this.ContentTxt.Text = "讀取失敗"; MessageBox.Show("讀取失敗");}else{ this.ContentTxt.Text = rs.Text; MessageBox.Show("讀取成功,內容:" + rs.Text);} 

3.4 生成帶Logo的二維碼

二維碼帶有校驗功能,故可以在中間區域展示一定尺寸的圖片。

例圖:

基于C#生成條形碼操作知識匯總附源碼下載

代碼:

// 1.設置QR二維碼的規格ZXing.QrCode.QrCodeEncodingOptions qrEncodeOption = new ZXing.QrCode.QrCodeEncodingOptions();qrEncodeOption.CharacterSet = "UTF-8"; // 設置編碼格式,否則讀取'中文'亂碼qrEncodeOption.Height = 200;qrEncodeOption.Width = 200;qrEncodeOption.Margin = 1; // 設置周圍空白邊距// 2.生成條形碼圖片ZXing.BarcodeWriter wr = new BarcodeWriter();wr.Format = BarcodeFormat.QR_CODE; // 二維碼wr.Options = qrEncodeOption;Bitmap img = wr.Write(this.ContentTxt.Text);// 3.在二維碼的Bitmap對象上繪制logo圖片Bitmap logoImg = Bitmap.FromFile(System.AppDomain.CurrentDomain.BaseDirectory + "//logo.jpg") as Bitmap;Graphics g = Graphics.FromImage(img);Rectangle logoRec = new Rectangle(); // 設置logo圖片的大小和繪制位置logoRec.Width = img.Width / 6;logoRec.Height = img.Height / 6;logoRec.X = img.Width / 2 - logoRec.Width / 2; // 中心點logoRec.Y = img.Height / 2 - logoRec.Height / 2;g.DrawImage(logoImg, logoRec);// 4.保存繪制后的圖片string filePath = System.AppDomain.CurrentDomain.BaseDirectory + "//QR-" + this.ContentTxt.Text + ".jpg";img.Save(filePath, System.Drawing.Imaging.ImageFormat.Jpeg); 

4. 源碼下載

4.1 運行圖

 基于C#生成條形碼操作知識匯總附源碼下載

4.2 下載地址

百度網盤:http://pan.baidu.com/s/1qWRJMAo

CSDN:http://download.csdn.net/detail/polk6/9383226



注:相關教程知識閱讀請移步到c#教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 临潭县| 辽中县| 铜山县| 鹰潭市| 宜君县| 贺州市| 保亭| 榕江县| 嘉荫县| 富蕴县| 读书| 江北区| 彭泽县| 平湖市| 神池县| 元阳县| 古浪县| 开江县| 都江堰市| 离岛区| 清徐县| 乌鲁木齐县| 灵川县| 新化县| 项城市| 禹州市| 新巴尔虎左旗| 胶南市| 广南县| 清苑县| 太仆寺旗| 东兰县| 潼南县| 荥阳市| 杂多县| 广灵县| 博客| 富民县| 乐东| 灵石县| 宝应县|