標籤:
- (void)createLogoImage { NSArray *filter = [CIFilter filterNamesInCategory:kCICategoryBuiltIn]; NSLog(@"%@", filter); // 二維碼過濾器 CIFilter *filterImage = [CIFilter filterWithName:@"CIQRCodeGenerator"]; // 將二位碼過濾器設定為預設屬性 [filterImage setDefaults]; // 將文字轉化為二進位 NSData *dataImage = [@"mafeng" dataUsingEncoding:NSUTF8StringEncoding]; // 列印輸入的屬性 NSLog(@"%@", filterImage.inputKeys); // KVC 賦值 [filterImage setValue:dataImage forKey:@"inputMessage"]; // 取出輸出圖片 CIImage *outputImage = [filterImage outputImage]; outputImage = [outputImage imageByApplyingTransform:CGAffineTransformMakeScale(20, 20)]; // 轉化圖片 UIImage *image = [UIImage imageWithCIImage:outputImage]; // 為二維碼加自訂圖片 // 開啟繪圖, 擷取圖片 上下文<圖片大小> UIGraphicsBeginImageContext(image.size); // 將二維碼圖片畫上去 [image drawInRect:CGRectMake(0, 0, image.size.width, image.size.height)]; // 將小圖片畫上去 UIImage *smallImage = [UIImage imageNamed:@"123.jpg"]; [smallImage drawInRect:CGRectMake((image.size.width - 100) / 2, (image.size.width - 100) / 2, 100, 100)]; // 擷取最終的圖片 UIImage *finalImage = UIGraphicsGetImageFromCurrentImageContext(); // 關閉上下文 UIGraphicsEndImageContext(); // 顯示 self.imageview.image = finalImage; }
iOS -- 產生有logo的二維碼