c#简单实现二维码

在当下,二维码的使用越来越加普遍,下面就用winform来实现二维码的生成:

首先需要下载一个ThoughtWorks.QRCode.dll,然后在项目添加引用ThoughtWorks.QRCode.dll

using ThoughtWorks.QRCode.Codec;

新建一个winfrom程序,使用pictureBox来展示将要生成的二维码

生成二维码方法

public Bitmap CodeImage(string str)
        {
            //实例化一个生成二维码的对象
            QRCodeEncoder qrEncoder = new QRCodeEncoder();
            //设置二维码的编码模式
            qrEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE;
            //二维码像素宽度
            qrEncoder.QRCodeScale = 4;
            //设置版本
            qrEncoder.QRCodeVersion = 0;
            //根据内容生成二维码图像
            Bitmap image = qrEncoder.Encode(str, Encoding.UTF8);
            return image;
        }

编码格式有三种,自己动手试了下得出下面信息

1.QRCodeEncoder.ENCODE_MODE.BYTE  可以识别文字字母和数字

2.QRCodeEncoder.ENCODE_MODE.NUMERIC  可以识别数字,无法识别文字和字母

3.QRCodeEncoder.ENCODE_MODE.ALPHA_NUMERIC 可以识别文字字母数字,但是有数字可以正确识别

像素宽度QRCodeVersion控制的是图像大小,数值越大生成二维码图像就越大。

当错误提示是索引超出界限的时候,通常把版本QRCodeVersion的值设置为0即可。

当输入汉字二维码识别出来乱码的时候可以在生成图像的时候加上编码格式UTF8。

效果如下:

我们可以在二维码中加入自己想添加的logo

        /// <summary>
        /// 要插入的logo图像
        /// </summary>
        /// <returns></returns>
        public Bitmap GetLogo()
        {
            //获得logo图像
            Bitmap bmp = new Bitmap("Koala.jpg");
            //设置大小
            Bitmap newBmp = new Bitmap(bmp, 30, 30);
            return newBmp;
        }        

在二维码处设置图像显示的位置

public Bitmap CodeImage(string str)
        {
            ...
            Bitmap image = qrEncoder.Encode(str, Encoding.UTF8);
            Bitmap logo = GetLogo();
            int x = image.Width;
            int y = image.Height;
            //设置logo图像位置
            Point point = new Point(x / 2 - 15, y / 2 - 15);
            //以二维码图像为背景绘制图像
            Graphics g = Graphics.FromImage(image);
            g.DrawImage(logo, point);
            return image;
        }

实现效果:

简单的实现二维码完成了。

时间: 2024-08-05 04:09:42

c#简单实现二维码的相关文章

swift编程语言简单开发二维码扫描

最近在学习swift编程语言(http://www.maiziedu.com/course/ios/16-161/), 在看视频学习swift编程语言时,发现有个二维码扫面案例的教程,非常的不错,其中还有一些动画的实现 ,今天就先记录一下二维码扫描的简单实现  不太好记手写一遍 学习的基础在于模仿嘛 创建一个实现二维码扫描的步骤 1.首先是懒加载创建 会话 输入设备  输出设备 // 先倒入框架 AVFoundation 2.    import AVFoundation 3.    //通过懒

Java简单生成二维码

二维码简介 二维条码/二维码(2-dimensional bar code,QRCode)是用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息的:在代码编制上巧妙地利用构成计算机内部逻辑基础的"0"."1"比特流的概念,使用若干个与二进制相对应的几何形体来表示文字数值信息,通过图象输入设备或光电扫描设备自动识读以实现信息自动处理:它具有条码技术的一些共性:每种码制有其特定的字符集:每个字符占有一定的宽度:具有一定的校验功能等.同时

使用QRCode简单生成二维码

// //  ViewController.m //  二维码 // //  Created by 123 on 16/9/4. //  Copyright © 2016年 彭洪. All rights reserved. // #import "ViewController.h" #import "QRCodeGenerator.h"//引入库 @interface ViewController () @end @implementation ViewContro

如何在PPT中完成简单的二维码背景抠图操作

加入我们有这样一张PPT: 可以看到背景是灰色的,但是二维码有一个白色的背景,我们可以直接在PPT里将白色的背景给去掉.具体操作方法是: 1 双击二维码图片,选择隐藏菜单栏中的格式选项 2 选择颜色-设置透明色 3 点击二维码中的白色背景部分,就大功告成了.效果: Enjoy It! 原文地址:https://www.cnblogs.com/Irvingcode/p/12275305.html

python应用:生成简单二维码

概述 \(\quad\)第一篇python的应用就打算写一写用python生成简单的二维码啦.因为二维码在日常生活中越来越常用了,部分博客也用二维码来用作打赏的工具.但是要提醒大家的是,千万不要乱扫街上的二维码,很多都是包含了恶意软件,或者把你重定向到别的网页去了. \(\quad\)那么闲话不多说,开始干活~.默认大家会用python且会下载第三方库咯,生成二维码我们使用的是python的第三方库MyQR,调用方式也是极其简单,上代码: from MyQR import myqr words

iOS二维码扫描的实现(Swift)

随着二维码的普遍使用,二维码扫描也成为了很多app的一个基本功能,本篇主要来介绍一下如何实现一个简单的二维码扫描功能.本文使用了XCode自带的AVFoundation 库,利用Swfit语言实现. 实现的步骤如下: 1.获取视频设备(Video) 在二维码扫描中,我们的输入流是视频.我们需要enable视频设备来获取相应的元数据. 2. 创建Session来处理视频的输入输出流 3. 创建输入输出流,并添加至Session中 4. 处理二维码数据 该方法是AVCaptureMetadataOu

安卓实现个性彩色好看的二维码

前言 二维码以前也写过好几篇,今天姑且是对以前知识的总结,顺便复习一下,圣人说过:温故知新. 还是和以前一样先看下效果,再来对着代码讲解. 看效果图: 之前呢,也写过用安卓实现二维码生成彩色的二维码和带logo的二维码,也知道可以使用QRCode和ZXing两种方式,然后这一篇呢也是写二维码使用BarcodeFormat.QR_CODE,主要也是看见很多的非常漂亮的二维码,这里呢主要模仿qq的二维码,并且也高仿实现了长按发送给朋友和保存到图库的功能,觉得不错呢就请多支持下,哪里不好呢也可以说出来

玩转Android之二维码生成与识别

二维码,我们也称作QRCode,QR表示quick response即快速响应,在很多App中我们都能见到二维码的身影,最常见的莫过于微信了.那么今天我们就来看看怎么样在我们自己的App中集成二维码的扫描与生成功能.OK,废话不多说,我们就开始做吧. 二维码的使用我主要想分为两部分来给大家介绍,一部分就是二维码的生成,这里的知识点都很简单,还有一部分是二维码的识别,这里稍微麻烦一些,不过细心来做其实也很简单.二维码的开发使用我们大多都是使用Google提供的zxing这个类库,使用这个类库我们需

二维码支付原理分析及安全性的探究

“二维码支付”安全么? 1   引言 随时支付宝和微信的线下不断推广,目前使用手机进行二维码支付已经逐渐成为一种时尚了. 但是大家有没有思考过:这种便捷的支付方式到底安不安全呢?今天我们就针对这个话题来进行一些探讨吧. 2   二维码简介 先来简单说说二维码:二维码是用一定规则排布的点阵的图像来编码信息的方式.与二维码对应的是传统的“条码”(一维码). 和“条码”一样,二维码具有如下特点: 容易生成 容易被机器识别 但是“二维码”具有更多的优点: 高容错性 搞污损能力 高密度的信息承载能力 二维