在生活中有一種東西幾乎已經(jīng)快要成為我們的另一個電子”身份證“,那就是二維碼。無論是在軟件開發(fā)的過程中,還是在普通用戶的日常中,幾乎都離不開二維碼。二維碼 (dimensional barcode) ,又稱二維條碼,是在一維條碼的基礎(chǔ)上擴展出的一種具有可讀性的條碼。設備掃描二維條碼,通過識別條碼的長度和寬度中所記載的二進制數(shù)據(jù),可獲取其中所包含的信息。相比一維條碼,二維碼記載更復雜的數(shù)據(jù),比如圖片、網(wǎng)絡鏈接等。

   今天介紹一種免費開源的二維碼操作組件,ThoughtWorks.QRCode組件可以高效而穩(wěn)定的生成我們需要的二維碼,接下來我們詳細的了解一下這個組件。

一.ThoughtWorks.QRCode組件概述:

     QRCode庫是一個.NET組件,可用于編碼和解碼QRCode。 QRCode是源自日本的二維條形碼。 現(xiàn)在,它廣泛應用于廣泛的工業(yè)領(lǐng)域。 用于車輛部件跟蹤和庫存管理。QR代表“快速反應”。 它是日本公司Denso-Wave在1994年創(chuàng)建的,目的是高速解碼內(nèi)容。 如今,QR碼被用于手機中以緩解數(shù)據(jù)輸入。QRCode還可以打印在名片上或顯示在任何顯示器上,然后可以由移動電話捕獲,只要移動電話具有讀取QRCode的軟件。QRCode庫提供的功能包括:將內(nèi)容編碼為QR碼圖像,可以保存為JPEG,GIF,PNG或位圖格式;解碼QR碼圖像。

    該庫可用于任何.NET 2.0 Windows應用程序,ASP.NET Web應用程序或Windows Mobile設備應用程序。以下是該組件的聲明”本文以及任何相關(guān)的源代碼和文件均已獲得代碼項目開放許可證(CPOL)許可“。

二.ThoughtWorks.QRCode相關(guān)核心對象和方法解析:

    有關(guān)ThoughtWorks.QRCode的主要類如下:

移動開發(fā)培訓,Android培訓,安卓培訓,手機開發(fā)培訓,手機維修培訓,手機軟件培訓

     以上是采用.NET Reflector對DLL文件進行反編譯,以此查看源代碼。由于我只是下載了DLL文件,沒有下載源碼,所以直接利用.NET Reflector查看源碼,接下來具體介紹一下組件的一些類和方法:

   1.QRCodeEncoder:二維碼編碼類。

移動開發(fā)培訓,Android培訓,安卓培訓,手機開發(fā)培訓,手機維修培訓,手機軟件培訓

public enum ENCODE_MODE
{
    ALPHA_NUMERIC,
    NUMERIC,
    BYTE
}public enum ERROR_CORRECTION
{
    L,
    M,
    Q,
    H
}public virtual Bitmap Encode(string content, Encoding encoding)