C#中間含圖片的二維碼生成實例_第1頁
C#中間含圖片的二維碼生成實例_第2頁
C#中間含圖片的二維碼生成實例_第3頁
C#中間含圖片的二維碼生成實例_第4頁
C#中間含圖片的二維碼生成實例_第5頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、中間含圖片的二維碼生成實例這是一個簡單的二維碼生成實例,我們就用c#的windows程序來寫吧。1.新建一個windows程序,然后引用ThoughtWorks.QRCode.dll。這個dll沒有可以到網上去copy一個下來。首先畫好這樣一個界面,界面非常簡單,但是太丑一點,我們做好了再放一個皮膚上去。 接下來我們開始寫后臺代碼吧!using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.T

2、ext; using System.Windows.Forms; using ThoughtWorks.QRCode.Codec; using System.IO; using System.Drawing.Imaging; namespace WindowsFormsApplication1 Public partial class Form1:Form public Form1() InitializeComponent(); Private object logoImg; /用于存放logo圖片Private void Form1_Load(object sender, EventArg

3、s e) this.skinEngine1.SkinFile = Calmness.ssk; / /獲取二維碼生成圖片/ / publicBitmap getcode(string writeStr) QRCodeEncoder qRCodeEncoder = new QRCodeEncoder (); qRCodeEncoder.QRCodeEncodeMode = QRCodeEncoder. ENCODE_MODE.BYTE;/設置二維碼編碼格式 qRCodeEncoder.QRCodeScale = 4; /設置編碼測量度 qRCodeEncoder.QRCodeVersion = 7

4、; /設置編碼版本 qRCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder. ERROR_CORRECTION.M; /設置錯誤校驗Bitmap image = qRCodeEncoder.Encode(writeStr); return image; / /獲取logo / / Public Bitmap getlogo() Bitmap newBmp = new Bitmap (logo.jpg);/獲取圖片對象Bitmap bmp = new Bitmap (newBmp, 30, 30); /縮放return bmp; / /二維碼保存/ /

5、/ Private void Save_Btn_Click(object sender, EventArgs e) SaveFileDialog saveFile = new SaveFileDialog ();/創建保存對話框 saveFile.Filter = JPEG|*.jpeg;*.jpg|位圖文件|*.bmp|所有文件|*.*;/設置保存的圖片格式if (pictureBox1.Image != null) if (saveFile.ShowDialog() = DialogResult.OK) string sFilePathName = saveFile.FileName; I

6、mage img = pictureBox1.Image; img.Save(sFilePathName); else MessageBox.Show(請先生成二維碼!); / / 二維碼生成/ / / Private void ShengCheng_Btn_Click(object sender, EventArgs e) if (Str_Tbx.Text.Trim() != ) /驗證輸入的生成內容是否為空 Bitmap bCode = getcode(Str_Tbx.Text); /獲取二維碼圖片 if (logoImg = null) pictureBox1.Image = bCode

7、; else Bitmap bLogo = logoImg as Bitmap; /獲取logo圖片對象bLogo = new Bitmap(bLogo, 30, 30); /改變圖片的大小這里我們設置為30 int Y = bCode.Height; int X = bCode.Width; Point point = new Point(X / 2 - 15, Y / 2 - 15);/logo圖片繪制到二維碼上,這里將簡單計算一下logo所在的坐標 Graphics g = Graphics.FromImage(bCode);/創建一個畫布 g.DrawImage(bLogo, poin

8、t);/將logo圖片繪制到二維碼圖片上 pictureBox1.Image = bCode; else MessageBox.Show(輸入生成內容!); / / logo上傳 / / / Private void UpLogo_Btn_Click(object sender, EventArgs e) OpenFileDialog openFileDialog = new OpenFileDialog();/文件打開對話框 openFileDialog.Filter = JPEG|*.jpeg;*.jpg|位圖文件|*.bmp|所有文件|*.*;/只能打開我們設置的這幾類文件 if (openFileDialog.ShowDialog() = DialogResult.OK) string fileName = openFileDialog.FileName; Bitmap

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論