iOS生成二维码和条形码

很简单,就是几句代码。

 // 创建一个uiimageView装生成的二维码图片
    UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(20, 40, 100, 100)];
    imageView.backgroundColor = [UIColor redColor];
    [self.view addSubview:imageView];
    
    
    // 生成二维码图片
    NSString *url = @"http://www.jianshu.com/u/40ab6b5c782a";
    CIImage *barcodeImage;
    NSData *data = [url dataUsingEncoding:NSISOLatin1StringEncoding allowLossyConversion:false];
    CIFilter *filter = [CIFilter filterWithName:@"CIQRCodeGenerator"];
    
    [filter setValue:data forKey:@"inputMessage"];// 得到二维码图片
    [filter setValue:@"H" forKey:@"inputCorrectionLevel"];//设置二维码的纠错水平,越高纠错水平越高,可以污损的范围越大
    barcodeImage = [filter outputImage];
    
    // 消除模糊
    CGFloat scaleX = imageView.frame.size.width / barcodeImage.extent.size.width; // extent 返回图片的frame
    CGFloat scaleY = imageView.frame.size.height / barcodeImage.extent.size.height;
    CIImage *transformedImage = [barcodeImage imageByApplyingTransform:CGAffineTransformScale(CGAffineTransformIdentity, scaleX, scaleY)];
    
   imageView.image = [UIImage imageWithCIImage:transformedImage];

生成条形码就是将里面的@"CIQRCodeGenerator"换成@"CICode128BarcodeGenerator"并且将 [filter setValue:@"H" forKey:@"inputCorrectionLevel"];注释掉,其他的都是一样的。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 代码基本很固定,做个笔记,留着以后需要。 生成条形码 生成二维码 最后 附上扫描的三方库: LBXScan
    zhiyuehl阅读 2,155评论 0 1
  • 一、扫描 1、 ZBar ZBar在扫描的灵敏度上,和内存的使用上相对于ZXing上都是较优的,但是对于 “圆角二...
    空白Null阅读 1,094评论 0 2
  • *************************具体方法*************************** ...
    _源计划阅读 2,778评论 2 2
  • 以前对iOS关于二维码方面的知识掌握的比较零碎, 直到自己的一个关于支付方面iOS项目中有二维码扫描界面、二维码生...
    献国阅读 1,066评论 0 2
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,115评论 19 139