生成的二維碼很小呻此,需要放大成高清圖
//字符串轉(zhuǎn)二維碼
- (NSImage *)stringTransformToQRCodeWithSize:(CGSize)size
{
? ? NSData *stringData = [self dataUsingEncoding:NSUTF8StringEncoding];
? ? //生產(chǎn)原始二維碼圖片
? ? CIFilter *qrFilter = [CIFilter filterWithName:@"CIQRCodeGenerator"];
? ? [qrFilter setValue:stringData forKey:@"inputMessage"];
? ? [qrFilter setValue:@"L" forKey:@"inputCorrectionLevel"];
? ? //生成高清大圖
? ? CIImage *originImage = qrFilter.outputImage;
? ? CIImage *bigImage = [originImage imageByApplyingTransform:CGAffineTransformMakeScale(size.width/originImage.extent.size.width, size.height/originImage.extent.size.height)];
? ? CGImageRef sourceImageRef = [[CIContext context] createCGImage:bigImage fromRect:bigImage.extent];
? ? NSImage *sourceImage = [[NSImage alloc] initWithCGImage:sourceImageRef size:size];
? ? return sourceImage;
}