iOS js與原生交互圖片base64解碼問題 解決思路 問題分析

解決思路

  • 正常解碼思路
/// base64字符串轉圖片
/// @param base64String 圖片base64字符串
- (UIImage *)imageWithBase64String:(NSString *)base64String {    
 NSData *imageData = [[NSData alloc] initWithBase64EncodedString:base64String options:NSDataBase64DecodingIgnoreUnknownCharacters];
 UIImage *image = [UIImage imageWithData:imageData];
 return image;
}
  • DataURL解碼思路
/// base64字符串轉圖片
/// @param base64String 圖片base64字符串
- (UIImage *)imageWithBase64String:(NSString *)base64String {
 NSURL *URL = [NSURL URLWithString:base64String];
 NSData *imageData = [NSData dataWithContentsOfURL:URL];
 UIImage *image = [UIImage imageWithData:imageData];
 return image;
}

問題分析

h5端對圖片進行Base64編碼,如果利用的是canvas.toDataURL()函數轉換的:

dataURL = canvas.toDataURL('image/png'); //轉換圖片爲dataURL,轉換後爲Base64格式

我們解碼時,也應該DataURL解碼思路

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章