基本信息
源码名称:C# 生成二维码名片 实例源码下载
源码大小:2.44M
文件格式:.zip
开发语言:C#
更新时间:2016-03-28
友情提示:(无需注册或充值,赞助后即可获取资源下载链接)
嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):78630559
本次赞助数额为: 2 元×
微信扫码支付:2 元
×
请留下您的邮箱,我们将在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);
}
}
}
}