河北建设厅网站设置,网站建设团队哪个最好,flash 企业网站 源码,曼联目前积分榜http://www.cocoachina.com/ios/20160530/16519.html 关于二维码生成#xff0c;网上也是有很多#xff0c;三方库也是有的如zxing#xff0c;也是挺好用#xff0c;这里介绍的是通过CIFilter创建二维码。 iOS7之后#xff0c;可以使用原生的CIFilter创建二维码#xff0…http://www.cocoachina.com/ios/20160530/16519.html 关于二维码生成网上也是有很多三方库也是有的如zxing也是挺好用这里介绍的是通过CIFilter创建二维码。 iOS7之后可以使用原生的CIFilter创建二维码下面是相应的代码 首先是二维码的生成使用CIFilter很简单直接传入生成二维码的字符串即可 - (CIImage *)createQRForString:(NSString *)qrString {NSData *stringData [qrString dataUsingEncoding:NSUTF8StringEncoding];// 创建filterCIFilter *qrFilter [CIFilter filterWithName:CIQRCodeGenerator];// 设置内容和纠错级别[qrFilter setValue:stringData forKey:inputMessage];[qrFilter setValue:M forKey:inputCorrectionLevel];// 返回CIImagereturn qrFilter.outputImage;
} 因为生成的二维码是一个CIImage我们直接转换成UIImage的话大小不好控制所以使用下面方法返回需要大小的UIImage 下面同事添加了水印 - (UIImage *)createNonInterpolatedUIImageFormCIImage:(CIImage *)image withSize:(CGFloat) size {CGRect extent CGRectIntegral(image.extent);CGFloat scale MIN(size/CGRectGetWidth(extent), size/CGRectGetHeight(extent));// 1.创建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);// 2.保存bitmap到图片CGImageRef scaledImage CGBitmapContextCreateImage(bitmapRef);CGContextRelease(bitmapRef);CGImageRelease(bitmapImage);//原图UIImage *outputImage [UIImage imageWithCGImage:scaledImage];UIGraphicsBeginImageContextWithOptions(outputImage.size, NO, [[UIScreen mainScreen] scale]);[outputImage drawInRect:CGRectMake(0,0 , size, size)];//水印图UIImage *waterimage [UIImage imageNamed:icon];[waterimage drawInRect:CGRectMake((size-waterImagesize)/2.0, (size-waterImagesize)/2.0, waterImagesize, waterImagesize)];UIImage *newPic UIGraphicsGetImageFromCurrentImageContext();UIGraphicsEndImageContext();return newPic;
} 以上是代码的一些汇总希望能帮到大家共同努力转载于:https://www.cnblogs.com/itlover2013/p/5543136.html