国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > iOS > 正文

如何在iphon IOS設(shè)備上使用二維碼

2020-07-26 03:34:26
字體:
供稿:網(wǎng)友

下面給大家介紹下二維碼簡(jiǎn)介

二維碼 (2-dimensional bar code) 是用某種特定的幾何圖形按一定規(guī)律在平面(二維方向上)分布的黑白相間的圖形記錄數(shù)據(jù)符號(hào)信息的;在代碼編制上巧妙地利用構(gòu)成計(jì)算機(jī)內(nèi)部邏輯基礎(chǔ)的“0”、“1”比特流的概念,使用若干個(gè)與二進(jìn)制相對(duì)應(yīng)的幾何形體來表示文字?jǐn)?shù)值信息,通過圖象輸入設(shè)備或光電掃描設(shè)備自動(dòng)識(shí)讀以實(shí)現(xiàn)信息自動(dòng)處理: 二維條碼/二維碼能夠在橫向和縱向兩個(gè)方位同時(shí)表達(dá)信息,因此能在很小的面積內(nèi)表達(dá)大量的信息。

下面介紹下如何在蘋果ios設(shè)備上使用二維碼:

1. 掃描二維碼(解碼)

掃描二維碼的開源庫有很多如 ZBar、ZXing等。在此以ZBar作為例子構(gòu)建二維碼掃碼應(yīng)用。

首先在github上下載ZBar SDK

地址https://github.com/bmorton/ZBarSDK

打開壓縮包,其中有ZBarSDK 文件夾

將ZBarSDK 文件夾包含到項(xiàng)目中來

(Finder)
(XCode)

其中包含一個(gè)libzbar.a的靜態(tài)庫

接著往項(xiàng)目中添加Framework框架及鏈接庫(動(dòng)態(tài)庫、靜態(tài)庫)。

在項(xiàng)目屬性TARGETSSummary 中找到Linked Frameworks and Libraries 添加

AVFoundation.framwork, CoreMedia.framework, CoreVideo.framework, libiconv.dylib 和libzbar.a (如圖)

然后在使用的地方引入頭文件

#import "ZBarSDK.h"

調(diào)用ZBar的類必須實(shí)現(xiàn)ZBarReaderDelegate協(xié)議

如:UIViewController <ZBarReaderDelegate>在- (void) imagePickerController: (UIImagePickerController*) reader

didFinishPickingMediaWithInfo: (NSDictionary*) info

最后在協(xié)議方法中通過info獲取結(jié)果值

id<NSFastEnumeration> results = [info objectForKey: ZBarReaderControllerResults]; ZBarSymbol *symbol = nil; for(symbol in results) // EXAMPLE: just grab the first barcode  break; // EXAMPLE: do something useful with the barcode data  resultText.text = symbol.data; [cpp] view plaincopyid<NSFastEnumeration> results = [info objectForKey: ZBarReaderControllerResults]; ZBarSymbol *symbol = nil; for(symbol in results) // EXAMPLE: just grab the first barcode break;  // EXAMPLE: do something useful with the barcode data resultText.text = symbol.data; 

文檔地址http://zbar.sourceforge.net/iphone/sdkdoc/
二維碼開源庫ZXing的加載過程與此類似,但是ZXing默認(rèn)并不支持一維碼的掃描,而ZBar是支持的。

2. 生成二維碼(編碼)

在生成二維碼的庫中QREncoder 比較好用。ZXing庫的android版本是帶java版的編碼庫的但不知為何沒有C++版的解碼庫,故在ios上也沒法解碼,如果應(yīng)用中既要生成二維碼又要掃描二維碼就有可能要帶兩套不同的庫。

首先同樣是在github 上下載到SDK庫

地址https://github.com/jverkoey/ObjQREncoder

解壓后將源碼庫直接包含到項(xiàng)目中來(如圖)

設(shè)置頭文件路徑,在TARGET中building settings  Search Path

當(dāng)然也可以直接將庫編譯成靜態(tài)庫libQREcoder.a

然后在包含進(jìn)來

接著在Frameworks 中添加靜態(tài)庫的引用

然后在使用該庫的地方包含頭文件

#import <QREncoder/QREncoder.h>

注意:二維碼顯示的時(shí)候有可能會(huì)因?yàn)閳D像的大小而做調(diào)整,所以需要包含系統(tǒng)庫QuartzCore.framework

最后就可以調(diào)用編碼庫了:

UIImage* image = [QREncoder encode:@"http://www.baidu.com/"]; UIImage* image = [QREncoder encode:@"http://www.baidu.com/"]; 

以上內(nèi)容就是教大家如何在iphon IOS設(shè)備上使用二維碼,希望大家喜歡。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 义乌市| 波密县| 罗定市| 招远市| 华坪县| 甘孜县| 中超| 三都| 泰宁县| 微山县| 石嘴山市| 汨罗市| 措勤县| 抚松县| 保康县| 修武县| 永泰县| 济源市| 云梦县| 太保市| 蒙山县| 梁山县| 繁峙县| 仁寿县| 平舆县| 喜德县| 曲靖市| 华坪县| 电白县| 嘉黎县| 耒阳市| 罗城| 云龙县| 民县| 长泰县| 读书| 杭锦旗| 张家港市| 泰宁县| 平果县| 历史|