This commit is contained in:
lianxiang
2018-09-26 00:33:06 +08:00
parent 69522b22fc
commit d0230f55ed
68 changed files with 1599 additions and 209 deletions
+16
View File
@@ -0,0 +1,16 @@
//
// UIImage+LogoQrCode.h
// GIGA
//
// Created by lianxiang on 2018/9/25.
// Copyright © 2018年 com.giga.ios. All rights reserved.
//
#import <UIKit/UIKit.h>
@interface UIImage (LogoQrCode)
+(UIImage *)createQrImageWith:(UIImage *)logo logoSize:(CGSize )size qrText:(NSString *)text;
@end
+52
View File
@@ -0,0 +1,52 @@
//
// UIImage+LogoQrCode.m
// GIGA
//
// Created by lianxiang on 2018/9/25.
// Copyright © 2018年 com.giga.ios. All rights reserved.
//
#import "UIImage+LogoQrCode.h"
@implementation UIImage (LogoQrCode)
+(UIImage *)createQrImageWith:(UIImage *)logo logoSize:(CGSize )size qrText:(NSString *)text
{
//NSArray *filter = [CIFilter filterNamesInCategory:kCICategoryBuiltIn];
// 二维码过滤器
CIFilter *filterImage = [CIFilter filterWithName:@"CIQRCodeGenerator"];
// 将二位码过滤器设置为默认属性
[filterImage setDefaults];
// 将文字转化为二进制
NSData *dataImage = [text 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 = logo;
[smallImage drawInRect:CGRectMake((image.size.width - 100) / 2, (image.size.width - 100) / 2, 100, 100)];
// 获取最终的图片
UIImage *finalImage = UIGraphicsGetImageFromCurrentImageContext();
// 关闭上下文
UIGraphicsEndImageContext();
return finalImage;
}
@end
+15
View File
@@ -0,0 +1,15 @@
//
// UIImage+ShotImage.h
// GIGA
//
// Created by lianxiang on 2018/9/25.
// Copyright © 2018年 com.giga.ios. All rights reserved.
//
#import <UIKit/UIKit.h>
@interface UIImage (ShotImage)
//截图tableviewi
+(UIImage *)saveLongImage:(UITableView *)table;
@end
+39
View File
@@ -0,0 +1,39 @@
//
// UIImage+ShotImage.m
// GIGA
//
// Created by lianxiang on 2018/9/25.
// Copyright © 2018年 com.giga.ios. All rights reserved.
//
#import "UIImage+ShotImage.h"
@implementation UIImage (ShotImage)
+(UIImage *)saveLongImage:(UITableView *)table {
UIImage* image = nil;
// 下面方法,第一个参数表示区域大小。第二个参数表示是否是非透明的。如果需要显示半透明效果,需要传NO,否则传YES。第三个参数就是屏幕密度了,调整清晰度。
UIGraphicsBeginImageContextWithOptions(table.contentSize, YES, [UIScreen mainScreen].scale);
CGPoint savedContentOffset = table.contentOffset;
CGRect savedFrame = table.frame;
table.contentOffset = CGPointZero;
table.frame = CGRectMake(0, 0, table.contentSize.width, table.contentSize.height);
[table.layer renderInContext: UIGraphicsGetCurrentContext()];
image = UIGraphicsGetImageFromCurrentImageContext();
table.contentOffset = savedContentOffset;
table.frame = savedFrame;
UIGraphicsEndImageContext();
return image;
}
@end