add
This commit is contained in:
@@ -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
|
||||
@@ -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
|
||||
@@ -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
|
||||
@@ -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
|
||||
Reference in New Issue
Block a user