在Objective-C中,要获取Base64编码图片的宽高,你需要先将Base64字符串转换为图片数据,然后使用UIImage来获取宽高信息。
定义了一个类目(category)在UIImage类上,提供了一个类方法sizeOfBase64EncodedImage来获取Base64字符串所代表图片的大小。你只需要传入Base64字符串,方法会返回一个CGSize结构包含宽和高。
#import <UIKit/UIKit.h>
@implementation UIImage (Base64Size)
+ (CGSize)sizeOfBase64EncodedImage:(NSString *)base64String {
NSData *imageData = [[NSData alloc] initWithBase64EncodedString:base64String options:0];
UIImage *image = [UIImage imageWithData:imageData];
return image.size;
}
@end
使用
NSString *base64String = @"你的Base64字符串";
CGSize imageSize = [UIImage sizeOfBase64EncodedImage:base64String];
NSLog(@"Width: %f, Height: %f", imageSize.width, imageSize.height);