C# zxing二维码写入的实例代码

 更新时间:2013年03月21日 14:21:02   作者:  
C# zxing二维码写入的实例代码,需要的朋友可以参考一下

复制代码 代码如下:

private void button1_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(this.textBox1.Text.Trim()))
            {
                MessageBox.Show("请输入需要转换的信息!");
                return;
            }

            string content = textBox1.Text;

            Hashtable hints= new Hashtable();  
            hints.Add(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.L);//纠错级别
            hints.Add(EncodeHintType.CHARACTER_SET, "UTF-8");//编码格式

            ByteMatrix byteMatrix = new MultiFormatWriter().encode(content, BarcodeFormat.QR_CODE, 300, 300, hints);
            Bitmap bitmap = toBitmap(byteMatrix);
            pictureBox1.Image = bitmap;

            SaveFileDialog sFD = new SaveFileDialog();
            sFD.Filter = "*.png|*.png";
            sFD.AddExtension = true;
            try
            {
                if (sFD.ShowDialog() == DialogResult.OK)
                {
                    writeToFile(byteMatrix, System.Drawing.Imaging.ImageFormat.Png, sFD.FileName);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }

        }


        public static void writeToFile(ByteMatrix matrix, System.Drawing.Imaging.ImageFormat format, string file)
        {
            System.Drawing.Imaging.EncoderParameters eps = new System.Drawing.Imaging.EncoderParameters();
            eps.Param[0] = new System.Drawing.Imaging.EncoderParameter(System.Drawing.Imaging.Encoder.Quality, 100L);
            Bitmap bmap = toBitmap(matrix);
            bmap.Save(file, format);
        }
        public static Bitmap toBitmap(ByteMatrix matrix)
        {
            int width = matrix.Width;
            int height = matrix.Height;
            Bitmap bmap = new Bitmap(width, height, System.Drawing.Imaging.PixelFormat.Format32bppArgb);
            for (int x = 0; x < width; x++)
            {
                for (int y = 0; y < height; y++)
                {
                    bmap.SetPixel(x, y, matrix.get_Renamed(x, y) != -1 ? ColorTranslator.FromHtml("Purple") : ColorTranslator.FromHtml("0xFFFFFFFF"));//可以自定义颜色和背景色
                }
            }

            return bmap;    
        }

相关文章

  • C#怎么实现手机短信发送功能

    C#怎么实现手机短信发送功能

    为了个人信息的安全,很多网站都有短信发送的功能,究竟是怎么实现的呢?对于个人站长来说的话,通过使用sms短信通知api接口相对比较简单,下面小编给大家介绍具体实现过程,对c#怎么实现手机短信发送功能感兴趣的朋友一起学习吧
    2015-12-12
  • C#学习笔记之飞行棋项目

    C#学习笔记之飞行棋项目

    这篇文章主要为大家详细介绍了C#控制台实现飞行棋项目,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-07-07
  • C# 绘制实时折线图,波形图

    C# 绘制实时折线图,波形图

    这篇文章主要介绍了C# 绘制实时折线图,波形图的方法,文中示例代码非常详细,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-07-07
  • C#数据结构与算法揭秘五 栈和队列

    C#数据结构与算法揭秘五 栈和队列

    这节我们讨论了两种好玩的数据结构,栈和队列
    2012-11-11
  • C#中String StringBuilder StringBuffer类的用法

    C#中String StringBuilder StringBuffer类的用法

    这篇文章给大家简单介绍下C#中String StringBuilder StringBuffer三个类的用法,需要的的朋友参考下吧
    2017-05-05
  • C#多线程学习之(四)使用线程池进行多线程的自动管理

    C#多线程学习之(四)使用线程池进行多线程的自动管理

    这篇文章主要介绍了C#多线程学习之使用线程池进行多线程的自动管理,实例分析了C#中线程池的概念与相关的使用技巧,非常具有实用价值,需要的朋友可以参考下
    2015-04-04
  • spreadsheetgear插件屏蔽鼠标右键的方法

    spreadsheetgear插件屏蔽鼠标右键的方法

    今天用到spreadsheetGear插件,然后右键有插件自己的菜单。都是英文的,而且还能打开新的窗体。嵌到程序里面,不太合适,所以着手屏蔽
    2014-02-02
  • C#.NET采用HTML模板发送电子邮件完整实例

    C#.NET采用HTML模板发送电子邮件完整实例

    这篇文章主要介绍了C#.NET采用HTML模板发送电子邮件的方法,主要包括了HTML模板、替换函数与邮件函数三部分,是非常实用的功能,需要的朋友可以参考下
    2014-09-09
  • C#字符串使用密钥进行加解密

    C#字符串使用密钥进行加解密

    这篇文章主要为大家详细介绍了C#字符串使用密钥进行加解密的代码,C#字符串加密和解密实现代码,感兴趣的小伙伴们可以参考一下
    2016-08-08
  • C#实现简单俄罗斯方块

    C#实现简单俄罗斯方块

    这篇文章主要为大家详细介绍了C#实现简单俄罗斯方块,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-03-03

最新评论