zoukankan      html  css  js  c++  java
  • C# 生成二维码

    在网上下载 ThoughtWorks.QRCode.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 ThoughtWorks.QRCode.Codec;
    using ThoughtWorks.QRCode.Codec.Data;
    
    namespace WindowsFormsApplication1
    {
        //在界面上放二个button, 一个textbox  , 一个picturebox
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }
    
            private void button1_Click(object sender, EventArgs e)
            {
           //生成二维码图片, ThoughtWorks.QRCode.Codec.QRCodeEncoder encoder
    = new QRCodeEncoder(); encoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE;//编码方式(注意:BYTE能支持中文,ALPHA_NUMERIC扫描出来的都是数字) encoder.QRCodeScale = 6;//大小(值越大生成的二维码图片像素越高) encoder.QRCodeVersion = 0;//版本(注意:设置为0主要是防止编码的字符串太长时发生错误) encoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M;//错误效验、错误更正(有4个等级) String qrdata = textBox1.Text; System.Drawing.Bitmap bp = encoder.Encode(qrdata.ToString(), Encoding.GetEncoding("GB2312")); Image image = bp; pictureBox1.Image = bp; //保存二维码图片: SaveFileDialog sf = new SaveFileDialog(); sf.Title = "选择保存文件位置"; sf.Filter = "保存图片(*.jpg) |*.jpg|所有文件(*.*) |*.*"; //设置默认文件类型显示顺序 sf.FilterIndex = 1; //保存对话框是否记忆上次打开的目录 sf.RestoreDirectory = true; if (sf.ShowDialog() == DialogResult.OK) { Image im = this.pictureBox1.Image; //获得文件路径 string localFilePath = sf.FileName.ToString(); if (sf.FileName != "") { string fileNameExt = localFilePath.Substring(localFilePath.LastIndexOf("\\") + 1);//获取文件名,不带路径 // newFileName = fileNameExt+DateTime.Now.ToString("yyyyMMdd") ;//给文件名后加上时间 string FilePath = localFilePath.Substring(0, localFilePath.LastIndexOf(".")); //获取文件路径,带文件名,不带后缀 string fn = sf.FileName; pictureBox1.Image.Save(FilePath + "-" + DateTime.Now.ToString("yyyyMMdd") + ".jpg"); } } } private void button2_Click(object sender, EventArgs e) { //解析二维码信息 QRCodeDecoder decoder = new QRCodeDecoder(); String decodedString = decoder.decode(new QRCodeBitmapImage(new Bitmap(pictureBox1.Image))); this.textBox1.Text = decodedString; } } }
  • 相关阅读:
    第六篇:python高级之网络编程
    第五篇:python高级之面向对象高级
    sublime插件开发教程
    Metatable In Lua 浅尝辄止
    cocos2dx-lua绑定之代码编辑器
    sublime入门文章
    Sublime Text快捷键
    lua中文教程【高级知识】
    lua基本语法
    Lua 不是 C++
  • 原文地址:https://www.cnblogs.com/jerron/p/4312608.html
Copyright © 2011-2022 走看看