iOS 生成二维码
作者:
和谐共处 | 来源:发表于
2018-03-01 15:14 被阅读14次
使用CIFilter来生成二维码图像
/**
* 生成一张普通的二维码
* @param data 传入你要生成二维码的数据
*/
+ (UIImage *)generateWithDefaultQRCodeData:(NSString *)data {
// 1、创建滤镜对象
CIFilter *filter = [CIFilter filterWithName:@"CIQRCodeGenerator"];
// 恢复滤镜的默认属性
[filter setDefaults];
// 2、设置数据
NSString *info = data;
// 将字符串转换成
NSData *infoData = [info dataUsingEncoding:NSUTF8StringEncoding];
// 通过KVC设置滤镜inputMessage数据
//key打印filter.inputKeys可以获取
[filter setValue:infoData forKeyPath:@"inputMessage"];
// 3、获得滤镜输出的图像
CIImage *outputImage = [filter outputImage];
// 4、放大20倍,因为CIFilter生成的CIImage的大小位27x27可打印
//outputImage.extent查看大小
outputImage = [outputImage imageByApplyingTransform:CGAffineTransformMakeScale(20, 20)];
return [UIImage imageWithCIImage:outputImage];
}
iOS常用滤镜参考
https://developer.apple.com/library/content/documentation/GraphicsImaging/Reference/CoreImageFilterReference/index.html#//apple_ref/doc/filter/ci/CIQRCodeGenerator
本文标题:iOS 生成二维码
本文链接:https://www.haomeiwen.com/subject/rxggxftx.html
网友评论