iOS7之後,已能用iOS SDK內建方法來掃描QR Code和Bar Code。然而似乎還無法產生QR Code和Bar Code。
不過沒關係,總是會有大神製作的第三方套件開源可以拿來使用!
![[iOS] 產生QR Code和Bar Code2](https://cg2010studio.com/wp-content/uploads/2016/08/ios-e794a2e7949fqr-codee5928cbar-code21.jpg?w=540)
- GitHub: ZXingObjC
我用Cocoapod下載,再加上幾行程式碼,就能產生漂亮的QR Code和Bar Code。
它支援的格式有:
- UPC-A and UPC-E
- EAN-8 and EAN-13
- Code 39
- Code 93 (not implemented yet)
- Code 128
- ITF
- Codabar
- RSS-14 (all variants)
- QR Code
- Data Matrix
- Aztec (‘beta’ quality)
- PDF 417 (‘alpha’ quality)
以上編碼(Encode)與解碼(Decode)都可實現!
/**
Theme: Generate QR code and Bar code
IDE: Xcode 7
Language: Objective C
Date: 105/08/11
Author: HappyMan
Blog: https://cg2010studio.wordpress.com/
*/
view.barCodeLabel.text = presenter.cardArr[i][@"number"];
// 產生 Barcode
NSError *error = nil;
ZXMultiFormatWriter *writer = [ZXMultiFormatWriter writer];
ZXBitMatrix *result = [writer encode:presenter.cardArr[i][@"number"]
format:kBarcodeFormatCode39
width:view.barCodeImageView.frame.size.width
height:view.barCodeImageView.frame.size.height
error:&error];
if (result) {
CGImageRef image = [[ZXImage imageWithMatrix:result] cgimage];
[view.barCodeImageView setImage:[UIImage imageWithCGImage:image]];
// This CGImageRef image can be placed in a UIImage, NSImage, or written to a file.
} else {
NSString *errorMessage = [error localizedDescription];
DxLog(@"barcode err: %@", errorMessage);
}
![[iOS] 產生QR Code和Bar Code](https://cg2010studio.com/wp-content/uploads/2016/08/ios-e794a2e7949fqr-codee5928cbar-code1.jpg?w=540)
這下子都可以自己製作像QuickMark這樣的工具App囉~
隨意留個言吧:)~