一、條形碼
茶陵網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)建站!從網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、響應(yīng)式網(wǎng)站建設(shè)等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營維護(hù)。創(chuàng)新互聯(lián)建站從2013年開始到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)建站。
一維碼,俗稱條形碼,廣泛的用于電子工業(yè)等行業(yè)。比如我們常見的書籍背面就會有條形碼,通過掃描槍等設(shè)備掃描就可以獲得書籍的ISBN(International standard book number,國際標(biāo)準(zhǔn)書號)。編碼方式也很多,比如Code39和Code128等等,這里選用了code128代碼,摘自于互聯(lián)網(wǎng),稍加修改(比如文字置于條碼的中間位置)。讀者可以直接拷貝自項(xiàng)目中使用,這里簡單演示一下,以Code128為例。
Code128 code = new Code128(); code.ValueFont = new Font("Arial", 7);//聲明條碼下方的字體 Bitmap bitMap = code.GetCodeImage(tf6_PERSONIDNUM.Text.Trim(), Code128.Encode.Code128A);//通過對文本框的文件進(jìn)行Code128編碼獲得位圖 string fileName = Server.MapPath("~") + "Images\\QRImages\\" + tf6_PERSONIDNUM.Text.Trim() + ".jpg";//獲取圖片路徑 bitMap.Save(fileName, ImageFormat.Jpeg);//保存圖片 this.QRCodeImage.ImageUrl = "~/Images/QRImages/" + tf6_PERSONIDNUM.Text.Trim() + ".jpg";//圖片控件顯示
Code39的類使用方法類似。由于Code39編碼使用較為廣泛,網(wǎng)上也有很多封裝好的dll可直接使用,比如BarCode,直接引用dll即可。
引用BarCode方式的代碼:
BarcodeControl barcode = new BarcodeControl(); barcode.BarcodeType = BarcodeType.CODE128C; barcode.CopyRight = ""; // 空字符串就會不顯示標(biāo)題; barcode.Data = tf6_PERSONIDNUM.Text.Trim(); MemoryStream stream = new MemoryStream(); barcode.MakeImage(ImageFormat.Png, 1, 1, true, false, null, stream); Bitmap bitMap = new Bitmap(stream); string fileName = Server.MapPath("~") + "Images\\QRImages\\" + tf6_PERSONIDNUM.Text.Trim() + ".jpg"; bitMap.Save(fileName, ImageFormat.Jpeg); this.QRCodeImage.ImageUrl = "~/Images/QRImages/" + tf6_PERSONIDNUM.Text.Trim() + ".jpg";
最后上個效果圖:
點(diǎn)擊按鈕,我們把文本框中的信息(含數(shù)字、字母、中文、時間等),生成了二維碼圖片,并反過來進(jìn)行了解析。
讀者可以在此基礎(chǔ)之上進(jìn)一步封裝擴(kuò)展,與WCF等技術(shù)結(jié)合,提供一個二維碼生成的web service。