在好例子网,分享、交流、成长!
您当前所在位置:首页C# 开发实例桌面应用界面/GUI → C# 生成二维码名片 实例源码下载

C# 生成二维码名片 实例源码下载

桌面应用界面/GUI

下载此实例
  • 开发语言:C#
  • 实例大小:2.44M
  • 下载次数:94
  • 浏览次数:1274
  • 发布时间:2016-03-28
  • 实例类别:桌面应用界面/GUI
  • 发 布 人:jim197911
  • 文件格式:.zip
  • 所需积分:2
 相关标签: 二维码 名片

实例介绍

【实例简介】

產生二維條碼

【实例截图】


【核心代码】


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace TwoDimensionCodeNameCard
{
    public partial class Form1 : Form
    {
        private string appPath = System.Windows.Forms.Application.StartupPath   "\\";

        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            this.tsInfo.Text = "右键可将二维码名片另存为图片";
            this.pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage;
            #region init
            this.tbCompany.Text = "青岛**软件有限公司";
            this.tbAddr.Text = "青岛市市南区香港路100号(266500)";
            this.tbUrl.Text = "www.huiyaosoft.com";
            this.tbFax.Text = " 86 0532 86887777";
            this.tbDepa.Text = "ERP事业部";
            this.tbTitle.Text = "技术总监";
            this.tbMobile.Text = " 86 18605327777";
            this.tbPhone.Text = " 86 0532 86887778";
            this.tbMail.Text = "admin@huiyaosoft.com";
            this.tbName.Text = "张三";
            #endregion
        }

        private void btnBuild_Click(object sender, EventArgs e)
        {
            buildCode();
            //挪车二维码
            //Bitmap b = GetTwoDimensionCode("车主:戴先生\r\n联系电话:18511111111\r\n临时停车给您带来的不变敬请谅解!", "扫一扫获取挪车电话", this.pictureBox1.Width, this.pictureBox1.Height, "微软雅黑");
            //this.pictureBox1.Image = b;
        }

        private void buildCode()
        {
            try
            {
                StringBuilder card = new StringBuilder();
                card.Append("BEGIN:VCARD");
                card.Append("\r\nFN:"   this.tbName.Text);
                card.Append("\r\nTITLE:"   this.tbTitle.Text);
                card.Append("\r\nORG:"   this.tbCompany.Text   ";"   this.tbDepa.Text);
                card.Append("\r\nTEL;CELL:"   this.tbMobile.Text);
                card.Append("\r\nTEL;WORK:"   this.tbPhone.Text);
                card.Append("\r\nTEL;WORK;FAX:"   this.tbFax.Text);
                card.Append("\r\nADR;WORK:"   this.tbAddr.Text);
                card.Append("\r\nURL:"   this.tbUrl.Text);
                card.Append("\r\nEMAIL;WORK:"   this.tbMail.Text);
                card.Append("\r\nNOTE:");
                card.Append("\r\nX-QQ:");
                card.Append("\r\nPHOTO;ENCODING=b;TYPE=JPEG:");
                card.Append("\r\nEND:VCARD\r\n");
                //card.ToString()
                Bitmap b = GetTwoDimensionCode(card.ToString(), string.Empty, 
                    this.pictureBox1.Width, this.pictureBox1.Height, "微软雅黑");
                this.pictureBox1.Image = b;
            }
            catch (Exception ex)
            {
                this.tsInfo.Text = ex.Message;
            }
        }

        public static Bitmap GetTwoDimensionCode(string strSource,
            string text, int width, int height, string fontName)
        {
            // 创建Bitmap对象
            Bitmap bmp = new Bitmap(width, height);
            // 从image创建 Graphics对象
            Graphics objGraphics = Graphics.FromImage(bmp);
            // 填上背景色
            objGraphics.FillRectangle(Brushes.White, 0, 0, bmp.Width, bmp.Height);
            // 
            ThoughtWorks.QRCode.Codec.QRCodeEncoder qrCodeEncoder = 
                new ThoughtWorks.QRCode.Codec.QRCodeEncoder();
            // 设置编码方法
            qrCodeEncoder.QRCodeEncodeMode = 
                ThoughtWorks.QRCode.Codec.QRCodeEncoder.ENCODE_MODE.BYTE;
            // 设置大小
            qrCodeEncoder.QRCodeScale = 3;
            // 适用于信息量较少的情形,图像越小保存的信息量越少
            // qrCodeEncoder.QRCodeScale = 4;
            // 设置版本
            qrCodeEncoder.QRCodeVersion = 0;
            // 设置错误校验的级别,正因为二维码有纠错能力,才能够加入logo
            qrCodeEncoder.QRCodeErrorCorrect = 
                ThoughtWorks.QRCode.Codec.QRCodeEncoder.ERROR_CORRECTION.M;
            Image image = qrCodeEncoder.Encode(strSource, Encoding.GetEncoding("utf-8"));
            // 写入二维码
            int x = (int)(width - image.Width) / 2;
            int y = (int)(height - image.Height) / 2;
            objGraphics.DrawImage(image, new Point(x, y));
            // 添加Logo图标
            image = TwoDimensionCodeNameCard.Properties.Resources.Apps_tux_icon;
            x = (int)(width - image.Width) / 2;
            y = (int)(height - image.Height) / 2;
            objGraphics.DrawImage(image, new Point(x, y));
            // 写入字符串
            //objGraphics.DrawString(text, new Font(fontName, 13, FontStyle.Bold), 
            //    Brushes.Black, new PointF(43, 15));
            return bmp;
        }

        private void tsmiSave_Click(object sender, EventArgs e)
        {
            this.saveFileDialog1.Title = "将二维码名片另存为:";
            this.saveFileDialog1.DefaultExt = ".jpg";
            this.saveFileDialog1.Filter = "*.jpg|*.jpg";
            this.saveFileDialog1.FileName = this.tbName.Text     ".jpg";
            if (this.saveFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                this.pictureBox1.Image.Save(this.saveFileDialog1.FileName);
            }
        }
    }
}


标签: 二维码 名片

实例下载地址

C# 生成二维码名片 实例源码下载

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

第 1 楼 娴静雅居 发表于: 2016-04-26 14:26 52
挺好

支持(0) 盖楼(回复)

发表评论

(您的评论需要经过审核才能显示)

查看所有1条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警