我正在尝试将UIImage转换为base64字符串Objective c

时间:2019-04-30 16:15:21

标签: objective-c uiimage base64

我尝试使用以下方法给定here的解决方案:

- (NSString *)encodeToBase64String:(UIImage *)image {
    return [UIImagePNGRepresentation(image) base64EncodedStringWithOptions:NSDataBase64Encoding64CharacterLineLength];
}

我得到的编码字符串与通过在网络工具like上载图片获得的编码字符串不同。

只是我的字符串不同于网络,并且无法在网络上解码图像。

我的其他实现是

-(NSString*)base64StringForImage{
    UIImage *originalImage =_image_PreviewImage.image;
    UIGraphicsBeginImageContext(originalImage.size);
    [originalImage drawInRect:CGRectMake(0, 0, 1000, 1000)];
    UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
        NSData *imgData=UIImagePNGRepresentation(newImage);
NSString *base64String = [imgData base64EncodedStringWithOptions:NSDataBase64EncodingEndLineWithLineFeed];
    return base64String;
}

originalImage和newImage都具有图像。测试缩小图像的大小

带有

的选项
  

NSDataBase64EncodingEndLineWithLineFeed

给出的编码字符串,带有如下所示的一半图像

enter image description here

0 个答案:

没有答案