當前位置:首頁 » 操作系統 » 生成二維碼源碼

生成二維碼源碼

發布時間: 2023-03-27 15:38:06

A. Android二維碼識別源碼,可有多種實現方式

這里簡單介紹一下ZXing庫。ZXing是一個開放源碼的,用Java實現的多種格式的1D/2D條碼圖像處理庫,它包含了聯繫到其他語言的埠。Zxing可以實現使用手機的內置的攝像頭完成條形碼的掃描及解碼。該項目可實現的條形碼編碼和解碼。目前支持以下格式:UPC-A,UPC-E、EAN-8,EAN-13、39碼、93碼。ZXing是個很經典的條碼/二維碼識別的開源類庫,以前在功能機上,就有開發者使用J2ME運用ZXing了,不過要支持JSR-234規范(自動對焦)的手機才能發揮其威力。
下面是ZXing的demo運行,我這里創建了一個二維碼,內容是我博客的網址,大夥可以用微信的掃一掃功能,試一下。就可以直接打開我博客。

2、ZXing庫主要類
下面給大家介紹一下,ZXing庫裡面主要的類以及這些類的作用:
CaptureActivity。這個是啟動Activity 也就是掃描器。
CaptureActivityHandler 解碼處理類,負責調用另外的線程進行解碼。
DecodeThread 解碼的線程。
com.google.zxing.client.android.camera 包,攝像頭控制包。
ViewfinderView 自定義的View,就是我們看見的拍攝時中間的框框了。

3、使用ZXing生成二維碼
下面針對二維碼生成和解析做個簡單介紹,至於詳細的使用方法,建議大家還是自己看看源碼,使用起來很簡單,不過這個開源項目的代碼,值得好好看看。首先給出二維碼生成的方法:
View Code
上面就是二維碼生成的方法介面,如果你只是使用者方法,很簡單,只要傳入一個URL即可,就像我截圖裡面一樣,傳入一個合法的網址即可。或者像現在一些移動APP的推廣,把APP下載地址轉為二維碼,只要掃一下就可以下載相應的APP。這個也是目前比較流行的APP的推廣方式。
上面代碼做的事情不多,主要是調用ZXing庫裡面QRCodeWriter().encode的方法對我們傳進去的URL進行編碼,具體如何編碼,這個我這里就不詳細說,有興趣可以看ZXing的源碼。文章最後會給出ZXing的源碼和例子代碼。

4、掃描二維碼獲取信息
掃描獲取二維碼信息的工作稍微復雜一些,主要是需要編寫Camera的使用,這個跟我們一般使用Camera一樣,需要使用Surfaceview作為預覽,這一部我這里就不說了,這個應該不是太復雜。對於使用過Camera做預覽的朋友,應該是挺簡單的事情。獲取二維碼數據的關鍵處理是在Camera的自動對焦回調函數哪裡,調用ZXing的解碼介面。
View Code
這里稍微多說一句,由於解碼需要一定時間,所以ZXing的解碼調用,都是使用了Handler作為線程通信機制,解碼的工作都是放在獨立線程裡面使用的,如果你直接在主線程解碼,恐怕ANR問題是避免不了。
View Code
上面是解碼的線程處理不同狀態的時候需要注意的地方,我們這里只看獲取圖像成功的地方,成功獲取圖片解碼的實在DecodeThread裡面實現,DecodeThread裡面解碼成功後,會把數據序列化,然後保存到Bundle裡面,我們可以直接通過Bundle的序列化,獲取到圖片數據。同時會把解碼後的結果保存到MSG裡面,然後就可以根據實際情況進行處理,例如上面代碼,解碼成功後,會調用一個處理函數:
View Code
上面就是整個二維碼的解碼流程,裡面因為涉及很多Camera的使用,所以你如果需要使用二維碼識別,需要注意一下你的程序需要申請下面的許可權,一般的Camera使用以及Camera的自動對焦等。
View Code
5、結語
上面就是生成和識別二維碼的關鍵流程和代碼,有興趣的朋友可以自己查看ZXing的源碼,裡面有很多圖像分析的知識可以學習。具體使用也可以參考我下面給出的Demo。二維碼對於現在移動開發來說很是很常用的技術,所以有空可以了解一下,說不定什麼時候就用上了。另外,ZXing庫除了二維碼外,其實對於條形碼也是支持的,只是我這里沒有介紹。有需要的自己去看看源碼即可。

B. 求:asp生成二維碼的源碼。

其實是一個誤會,二維碼本身存什麼無所謂,只不過編碼規則不一樣而已。軟能動力的網站上好像有免費用控制項,可以用任何一種語言調用。他培扮慶們缺襲家是專業做二維碼的,號稱從2005年就開始研發了。如果你不知道怎麼樣編碼,你就給他們配握的技術打電話好了

C. C語言或C++編寫二維碼的解碼部分詳細的源代碼及說明

1、二維碼有很多種標准,可謹輪以控制存儲數據的信息量,也可以控制容錯的數據量[使得部分污損的二維碼可以被正常讀取。通常的做法是調用二維碼設計方提供的組件,如果是自己生成二維碼,應該可以生成可以看起來很像的東西。

2、常式:

<pre name="code" class="cpp">int Fb_QrDisp(int iPenX,int iPenY,QRcode*pQRcode)

{

T_PixelDatasg_tOriginPixelDatas;

T_PixelDatasg_tZoomPixelDatas;

//intiZoom;

inti;

g_tOriginPixelDatas.iWidth= pQRcode->width;

g_tOriginPixelDatas.iHeight=pQRcode->width;

g_tOriginPixelDatas.iLineBytes=g_tOriginPixelDatas.iWidth;

g_tOriginPixelDatas.aucPixelDatas= pQRcode->data;

/*

if(pQRcode->version< = 1)

{

iZoom= 2;

}

else

{

iZoom= 2;

}

g_tZoomPixelDatas.iWidth = pQRcode->width*iZoom;

g_tZoomPixelDatas.iHeight=pQRcode->width*iZoom;

g_tZoomPixelDatas.iLineBytes=g_tZoomPixelDatas.iWidth;

g_tZoomPixelDatas.aucPixelDatas= malloc(g_tZoomPixelDatas.iWidth* g_tZoomPixelDatas.iHeight);

if(g_tZoomPixelDatas.aucPixelDatas== NULL)

{

printf("g_tZoomPixelDatas->aucPixelDatasmalloc failed "神嘩);

return-1;

}

PicZoom(&g_tOriginPixelDatas,&g_tZoomPixelDatas);

#if 0

printf("g_tZoomPixelDatas.iWidth=%d,g_tZoomPixelDatas.iHeight=%d ", g_tZoomPixelDatas.iWidth,g_tZoomPixelDatas.iHeight);

for(i=0;i<(g_tZoomPixelDatas.iWidth*g_tZoomPixelDatas.iHeight);i++)

{

printf("0x%x,",g_tZoomPixelDatas.aucPixelDatas[i]);

}

printf(" ");

#endif

*/

Disp_FixelPic(iPenX,iPenY,&g_tZoomPixelDatas);

return 0;

}

因為stmf429運行起來後內存祥瞎信不夠,這里不用申請內存再擴充放大二維碼數據的方法,而是直接描點。所以這里注釋掉了放大部分。

D. 求:asp生成二維碼的源碼。

其實是一個誤會,二維碼本身存什麼無所謂,只不過編碼規則不一樣而已。軟能動力的網站上好像有免費用控制項,可以用任何一種語言調用。他們家是專業做二維碼的,號稱從2005年就開始研發了。如果你不知道怎麼樣編碼,你就給他們的技術打電話好了

E. C#生成二維碼(QR碼)

C# 二維碼的代碼:

using Spire.Barcode;

using System.Drawing;

namespace CreateQRCode

{

class Program

{

static void Main(string[] args)

{

//創建BarcodeSettings對象

BarcodeSettings settings = new BarcodeSettings();

//應用Key,去logo

BarcodeSettings.ApplyKey("4KRJD-1K294-JJG9Z-SNR36-3P7IU");

settings.Type = BarCodeType.QRCode;//設置條碼類型為二維碼

settings.Data = "123456789";//設置二維碼數據

settings.Data2D = "123456789";//設置顯示文本

settings.ShowText = false;//設置二維碼數據文本不顯示

/*settings.ShowText = true;//顯示數據文本

settings.ShowTextOnBottom = true;//數據文本顯示在二維碼底部*/

settings.QRCodeDataMode = QRCodeDataMode.Numeric;//設置數據類型為數字

settings.QRCodeECL = QRCodeECL.H;//設置二維碼錯誤修正級別

settings.X = 3.0f;//設置寬度

BarCodeGenerator generator = new BarCodeGenerator(settings);//實例化BarCodeGenerator類的對象

//生成二維碼圖片並保存為PNG格式

Image image = generator.GenerateImage();

image.Save("QRCode.png");

}

}

}

這里的實現方法藉助專門的barcode生成根據spire.barcode for .net提供的類以及方法,解析二維碼可以參考如下代碼:

using System;

using System.Drawing;

using System.Text;

using System.Windows.Forms;

using Spire.Barcode;

namespace ScanBarcode{
public partial class Form1 : Form {
public Form1()
{
InitializeComponent();
}

private void btnLoadImage_Click(object sender, EventArgs e)
{
//載入條形碼圖片
Image image = Image.FromFile("Code128.png");
pictureBox1.Image = image;
}

private void btnReadData_Click(object sender, EventArgs e)
{
Bitmap bitmap = new Bitmap(pictureBox1.Image);

//識別條形碼圖片中的數據(BarcodeScanner類包含多個Scan重載方法,可根據自己的需求選擇相應的方法)
string[] data = BarcodeScanner.Scan(bitmap, BarCodeType.Code128);

for (int i = 0; i < data.Length; i++)
{
this.textBox1.Text += data[i].ToString();
}
}
}

}


—End—

F. 二維碼生成程序C語言源代碼

1、二維碼有很多種標准,可以控制存儲數據的信息量,也可以控制容錯的數據量[使得部分污損的二維碼可以被正常讀齲通常的做法是調用二維碼設計方提供的組件,如果是自己生成二維碼,應該可以生成可以看起來很像的東西。

G. 高分求 ASP網站二維碼生成插件,或適用於ASP的二維碼在線生成源碼!! 謝謝!

php的,只要你的空間支持php,就可以上傳使用,頁面排版時可以加入超鏈接,直接跳轉至二維碼生成頁面,要的留下郵箱

H. 怎麼把通達信公式製作成二維碼

可以把通達信公式的源碼復悉改咐制,粘貼到草料二維睜純碼上面,可以自動生成通達信公式的二維碼。殲飢也可以在Excel上面生成二維碼。

I. 二維碼怎麼生成

製作二維碼需要一種叫做「二維碼生成器」的工具,也就是一種二維碼生成的軟體。二維碼的機制就是用特定的幾何圖形在二維平面上分布的黑白相間的圖形。它的實質就是計算機的邏輯基礎語言,0和1進行的排列組合,使用若干個與二進制相對應的幾何形體來表示文字數值信息。

從字面上就可以看出,二維碼是一種比一維碼更為先進的條碼格式。一維碼只能在一個方向,且大多是水平方向上表達信息,但是二維碼在水平、垂直方向上都能儲存信息。另外,一維碼是由數字、字母構成,但是二維碼可以儲存漢字、數字和圖片等等。

碼上游二維碼的基本功能是用戶可通過上傳的方式將圖片語音視頻等信息通過簡單的在線編輯排版後轉換成二維碼。而且通過碼上游二維碼的文檔在線轉換功能,可以把PPT,Word,PDF,Excel等48種辦公文檔格式自動轉換成可以通過手機在線查看的格式,方便用戶掃碼查看各種文檔。進入碼上游網站了解更多

熱點內容
什麼是空調的配置 發布:2024-04-18 09:20:30 瀏覽:670
幾百人訪問需要什麼級別伺服器 發布:2024-04-18 09:20:18 瀏覽:489
17款傳奇什麼配置 發布:2024-04-18 09:06:43 瀏覽:698
圖層php 發布:2024-04-18 08:54:30 瀏覽:503
江西省資料庫 發布:2024-04-18 08:17:42 瀏覽:904
文件加密知乎 發布:2024-04-18 08:15:27 瀏覽:119
頭條演算法頁面 發布:2024-04-18 07:10:46 瀏覽:435
寶馬4系簡配了哪些配置 發布:2024-04-18 07:05:41 瀏覽:789
迅雷最小緩存 發布:2024-04-18 06:56:05 瀏覽:214
編程Mu 發布:2024-04-18 06:38:23 瀏覽:594