iOS|iOS Base64字符转图片
通过Base64编码可以将图片转换成字符串进行传输,通过这种方式可以很便捷的使图片在前后端传递,但是这通常只适用于小图片,否则转换后的Base64字符将很大,并不利于传输。
在iOS端可以通过以下方法进行转换。
Base64字符转图片
NSData *imageData = https://www.it610.com/article/[[NSData alloc] initWithBase64EncodedString:@"your base64 string" options:NSDataBase64DecodingIgnoreUnknownCharacters];
YourImageView.image = [UIImage imageWithData:imageData]
图片转Base64字符
NSData *imageData = https://www.it610.com/article/UIImageJPEGRepresentation(yourImage, 1.0f);
NSString *base64ImageStr = [imageData base64EncodedStringWithOptions:NSDataBase64Encoding64CharacterLineLength];
Note
关于NSDataBase64EncodingOptions
NSDataBase64Encoding64CharacterLineLength//将生成的Base64字符串按照64个字符长度进行等分换行
NSDataBase64Encoding76CharacterLineLength//将生成的Base64字符串按照76个字符长度进行等分换行
NSDataBase64EncodingEndLineWithCarriageReturn //将生成的Base64字符串以回车结束
NSDataBase64EncodingEndLineWithLineFeed//将生成的Base64字符串以换行结束
Solution
有时候,后台传回的Base64字符是这种格式的:data:image/png; base64,iVBORw0K.............""
【iOS|iOS Base64字符转图片】这个时候直接进行转换会失败,解决方法是去掉前缀:"data:image/png; base64,"
推荐阅读
- 2020-04-07vue中Axios的封装和API接口的管理
- 一起来学习C语言的字符串转换函数
- C语言字符函数中的isalnum()和iscntrl()你都知道吗
- iOS中的Block
- 记录iOS生成分享图片的一些问题,根据UIView生成固定尺寸的分享图片
- 字符串拼接成段落,换行符(\n)如何只执行n-1次
- 爬虫数据处理HTML转义字符
- 2019-08-29|2019-08-29 iOS13适配那点事
- Hacking|Hacking with iOS: SwiftUI Edition - SnowSeeker 项目(一)
- iOS面试题--基础