解决方案 »

  1.   

    1\首先下载一个C#生成二维码的东东,可以在这边下载
    http://download.csdn.net/detail/liuruxin/44045162\二维码这个东东被识别率很高,就算少了50%也能识别,所以可以做个小点logo之类的放在上边没有问题(这样就只用考虑将两个图片合成的问题了)
      

  2.   


    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    /// <summary>
    /// 调用外网API 生成二维码  周祥 2013年11月12日10:54:38
    /// </summary>
    public class Qr
    {
        public Qr()
        {
            //
            //TODO: 在此处添加构造函数逻辑
            //
        }
        /*
        bg 背景颜色 bg=颜色代码,例如:bg=ffffff
        fg 前景颜色 fg=颜色代码,例如:fg=cc0000
        gc 渐变颜色 gc=颜色代码,例如:gc=cc00000
        el 纠错等级 el可用值:h\q\m\l,例如:el=h
        w 尺寸大小 w=数值(像素),例如:w=300
        m 静区(外边距) m=数值(像素),例如:m=30
        pt 定位点颜色(外框) pt=颜色代码,例如:pt=00ff00
        inpt 定位点颜色(内点) inpt=颜色代码,例如:inpt=000000
        logo logo图片 logo=图片地址,例如:logo=http://www.xxx.cn/logo.png
        */
        public const string api = "http://qr.liantu.com/api.php";
        /// <summary>
        /// 根据URL和参数 返回地址
        /// </summary>
        /// <param name="name"></param>
        /// <param name="tel"></param>
        /// <param name="email"></param>
        /// <param name="logo"></param>
        /// <returns></returns>
        public static string GenerationCard(string name, string tel, string email, string logo = "")
        {
            string RequestUrl = api;
            string mecard = "MECARD:N:" + name + ";TEL:" + tel + ";EMAIL:" + email + ";";
            RequestUrl += "?text=" + mecard;
            if (logo != "")
            {
                RequestUrl += "&logo=" + logo;
            }
            return RequestUrl;
        }
    }