码迷,mamicode.com
首页 > 移动开发 > 详细

iOS qrcode 默认尺寸与修改

时间:2016-10-25 01:52:43      阅读:253      评论:0      收藏:0      [点我收藏+]

标签:release   apr   gray   with   option   ref   one   getwidth   cgimage   

四种容错格式的尺寸:27、31、31、35.

// 5、将CIImage转换成UIImage,并放大显示

    UIImage *imagex = [UIImage imageWithCIImage:outputImage];

    NSLog(@"%f", imagex.size.height);

 

因为生成的二维码是一个CIImage,我们直接转换成UIImage的话大小不好控制,所以使用下面方法返回需要大小的UIImage

- (UIImage *)createNonInterpolatedUIImageFormCIImage:(CIImage *)image withSize:(CGFloat) size {
    CGRect extent = CGRectIntegral(image.extent);
    CGFloat scale = MIN(size/CGRectGetWidth(extent), size/CGRectGetHeight(extent));
    // 创建bitmap;
    size_t width = CGRectGetWidth(extent) * scale;
    size_t height = CGRectGetHeight(extent) * scale;
    CGColorSpaceRef cs = CGColorSpaceCreateDeviceGray();
    CGContextRef bitmapRef = CGBitmapContextCreate(nil, width, height, 8, 0, cs, (CGBitmapInfo)kCGImageAlphaNone);
    CIContext *context = [CIContext contextWithOptions:nil];
    CGImageRef bitmapImage = [context createCGImage:image fromRect:extent];
    CGContextSetInterpolationQuality(bitmapRef, kCGInterpolationNone);
    CGContextScaleCTM(bitmapRef, scale, scale);
    CGContextDrawImage(bitmapRef, extent, bitmapImage);
    // 保存bitmap到图片
    CGImageRef scaledImage = CGBitmapContextCreateImage(bitmapRef);
    CGContextRelease(bitmapRef);
    CGImageRelease(bitmapImage);
    return [UIImage imageWithCGImage:scaledImage];
}

iOS qrcode 默认尺寸与修改

标签:release   apr   gray   with   option   ref   one   getwidth   cgimage   

原文地址:http://www.cnblogs.com/feng9exe/p/5995072.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!