UIImage Category
//UIImage对象转化为base64字符串
- (NSString *)toBase64String:(CGFloat)compressionQuality
{
NSData *data = UIImageJPEGRepresentation(self, compressionQuality);
NSString *encodedImageStr = [data base64EncodedStringWithOptions:NSDataBase64Encoding64CharacterLineLength];
return encodedImageStr;
}
//base64 string 转 UIImage 对象
+ (UIImage *)imageWithBase64String:(NSString *)base64string
{
NSData *decodedImageData = [[NSData alloc]
initWithBase64EncodedString:base64string options:NSDataBase64DecodingIgnoreUnknownCharacters];
UIImage *decodedImage = [UIImage imageWithData:decodedImageData];
return decodedImage;
}
//获取纯色图片
+ (UIImage *)imageWithColor:(UIColor *)color {
CGRect rect = CGRectMake(0.0f, 0.0f, 1.0f, 1.0f);
UIGraphicsBeginImageContext(rect.size);
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetFillColorWithColor(context, [color CGColor]);
CGContextFillRect(context, rect);
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return image;
}
//生成新的放大后的UIImage
- (UIImage *)scale:(float)scaleSize
{
UIGraphicsBeginImageContext(CGSizeMake(self.size.width * scaleSize, self.size.height * scaleSize));
[self drawInRect:CGRectMake(0, 0, self.size.width * scaleSize, self.size.height * scaleSize)];
UIImage *scaledImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return scaledImage;
}