有人知道如何将 UIImage
转换为 Base64 字符串,然后再反转回来吗?
我有以下代码;编码前的原始图像很好,但编码和解码后我只得到了一张空白图像。
NSData *imageData = UIImagePNGRepresentation(viewImage);
NSString *b64EncStr = [self encode: imageData];
NSString *base64String = [self encodeBase64:imageData];
有人知道如何将 UIImage
转换为 Base64 字符串,然后再反转回来吗?
我有以下代码;编码前的原始图像很好,但编码和解码后我只得到了一张空白图像。
NSData *imageData = UIImagePNGRepresentation(viewImage);
NSString *b64EncStr = [self encode: imageData];
NSString *base64String = [self encodeBase64:imageData];
Swift 5,Xcode 10。
let imageData = UIImage(named:"imagename").pngData()?.base64EncodedString(options: .lineLength64Characters)
print(imageData)
//convert Image to Base64 (Encoding)
let strBase64 = imageData.base64EncodedString(options: .lineLength64Characters)
print(strBase64)
// convert Base64 to Image (Decoding)
let dataDecoded:NSData = NSData(base64EncodedString: strBase64, options: NSDataBase64DecodingOptions(rawValue: 0))!
let decodedimage:UIImage = UIImage(data: dataDecoded)!
print(decodedimage)
yourImageView.image = decodedimage
对于 iOS 7+,Objective-C,以下是如何从图像 URL 开始进行转换的方法:
NSURL *url = [NSURL URLWithString:self.groove.thumbnailURL];
UIImage *image = [UIImage imageWithData:[NSData dataWithContentsOfURL:url]];
NSString *base64String = [UIImagePNGRepresentation(image)
base64EncodedStringWithOptions:NSDataBase64Encoding64CharacterLineLength];
Swift 3.0 和 Xcode 8.0
let imageData = UIImageJPEGRepresentation(imageView.image!, 1)
let base64String = (imageData! as Data).base64EncodedString(options: NSData.Base64EncodingOptions(rawValue: 0))
print(base64String)