二唯码生成识别工具QRcode DLL
以前作项目时找到的DLL(.net的)我都放在一起了
在需要的请下载
使用方法挺简单的
以前我在CSDN上发过一个贴
识别代码
使用方法挺简单的
以前我在CSDN上发过一个贴
识别代码
private void btnDecode_Click_1(object sender, EventArgs e)
{
try
{
string decodedString = new QRCodeDecoder().decode(new QRCodeBitmapImage(new Bitmap(this.picDecode.Image)));
this.txtDecodedData.Text = decodedString;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
{
try
{
string decodedString = new QRCodeDecoder().decode(new QRCodeBitmapImage(new Bitmap(this.picDecode.Image)));
this.txtDecodedData.Text = decodedString;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
生成代码
private void btnEncode_Click_1(object sender, EventArgs e)
{
if (this.txtEncodeData.Text.Trim() == string.Empty)
{
MessageBox.Show("Data must not be empty.");
}
else
{
QRCodeEncoder qrCodeEncoder = new QRCodeEncoder();
switch (this.cboEncoding.Text)
{
case "Byte":
qrCodeEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE;
break;
case "AlphaNumeric":
qrCodeEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.ALPHA_NUMERIC;
break;
case "Numeric":
qrCodeEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.NUMERIC;
break;
}
try
{
int scale = Convert.ToInt16(this.txtSize.Text);
qrCodeEncoder.QRCodeScale = scale;
}
catch (Exception)
{
MessageBox.Show("Invalid size!");
return;
}
try
{
int version = Convert.ToInt16(this.cboVersion.Text);
qrCodeEncoder.QRCodeVersion = version;
}
catch (Exception)
{
MessageBox.Show("Invalid version !");
}
string errorCorrect = this.cboCorrectionLevel.Text;
if (errorCorrect == "L")
{
qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.L;
}
else if (errorCorrect == "M")
{
qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M;
}
else if (errorCorrect == "Q")
{
qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.Q;
}
else if (errorCorrect == "H")
{
qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.H;
}
string data = this.txtEncodeData.Text;
Image image = qrCodeEncoder.Encode(data);
this.picEncode.Image = image;
}
{
if (this.txtEncodeData.Text.Trim() == string.Empty)
{
MessageBox.Show("Data must not be empty.");
}
else
{
QRCodeEncoder qrCodeEncoder = new QRCodeEncoder();
switch (this.cboEncoding.Text)
{
case "Byte":
qrCodeEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE;
break;
case "AlphaNumeric":
qrCodeEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.ALPHA_NUMERIC;
break;
case "Numeric":
qrCodeEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.NUMERIC;
break;
}
try
{
int scale = Convert.ToInt16(this.txtSize.Text);
qrCodeEncoder.QRCodeScale = scale;
}
catch (Exception)
{
MessageBox.Show("Invalid size!");
return;
}
try
{
int version = Convert.ToInt16(this.cboVersion.Text);
qrCodeEncoder.QRCodeVersion = version;
}
catch (Exception)
{
MessageBox.Show("Invalid version !");
}
string errorCorrect = this.cboCorrectionLevel.Text;
if (errorCorrect == "L")
{
qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.L;
}
else if (errorCorrect == "M")
{
qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M;
}
else if (errorCorrect == "Q")
{
qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.Q;
}
else if (errorCorrect == "H")
{
qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.H;
}
string data = this.txtEncodeData.Text;
Image image = qrCodeEncoder.Encode(data);
this.picEncode.Image = image;
}
}
不好意思,对于大家的留言没有及时回复
上面提供下载的DLL只能是存日文
下面这个地址
http://www.twit88.com/home/opensource/qrcode
我也是最近才找到的
是一个开源的qrcode类库,下载类库要注册(还没有试)
另外在codeproject.com上有一篇关于twit88.com里的qrcode使用的文章
用关键字"qrcode"可以搜索到
有需要的可以自己试一下
如果可能我也会写一个关于QRCODE使用的随笔
代码文件下载地址:/Files/wenanry/QRCodeSample.rar