赞
踩
主要是记录一下,可能以后自己能再次通过自己写的这篇东西温故而知新;
通过vs2013用C#简单了实现二维码的生成与保存的
其中参考了几篇其他大神写的实现c#二维码之代码。
首先c#要想实现二维码的相关操作需要ZXing.dll这个文件。
设计窗体如图:
开头:
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Windows.Forms;
- using ZXing.Common;
- using ZXing;
核心代码(就是单击“生成二维码”button控件)如下:
- private void button1_Click(object sender, System.EventArgs e)
- {
- // 创建保存对话框
- SaveFileDialog saveDataSend = new SaveFileDialog();
- string fb;
-
- // 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 Qr = new BarcodeWriter();
- Qr.Format = BarcodeFormat.QR_CODE; // 二维码
- Qr.Options = qrEncodeOption;
- Bitmap img = Qr.Write(this.textBox1.Text);//"textBox1"就是用来输入数据内容的控件
-
- //3.保存二维码
- saveDataSend.Filter = "*.jpg|jpg file"; // 设置文件类型为图片
- saveDataSend.DefaultExt = ".jpg"; // 默认文件的拓展名
- saveDataSend.FileName = "Data.jpg"; // 文件默认名
- if (saveDataSend.ShowDialog() == DialogResult.OK) // 显示文件框,并且另存为操作完成
- {
- string localFilePath = saveDataSend.FileName.ToString();//获得文件路径
- img.Save(localFilePath, System.Drawing.Imaging.ImageFormat.Jpeg);
- }
- fb = saveDataSend.FileName.ToString();
- // 4.读取保存的图片看是否保存成功
- this.label2.Text = fb; //该"label2"用来显示二维码保存后的路径
- this.pictureBox1.Image = img; //"pictureBox1"显示生成后的二维码的图片控件
- MessageBox.Show("保存成功:" + fb);
- }
具体实现的效果:
多嘴提一句,要在窗体中添加用来显示图片的控件:pictureBox 、以及用来得到保存文件路径的saveFileDialog控件
同时希望能帮助到正在研究学习、或者对二维码生成感兴趣的童鞋~
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。