以前作项目时找到的DLL(.net的)我都放在一起了
在需要的请下载
使用方法挺简单的
以前我在优快云上发过一个贴
识别代码
使用方法挺简单的
以前我在优快云上发过一个贴
识别代码
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