3

我正在尝试将Image对象转换为 Base64,然后使用 HTTP 请求将其发送到服务器。

注:ImageUIImage

这是我的代码:

struct MyView: View { 
    @State var image:Image? = nil // I want to convert this Image to Base64 when a button is clicked

    var body: some View {
        Button(action: {
            // ...
        }) {
            Image(systemName: "paperplane.fill")
        }
    }
}
4

3 回答 3

-1
   func convertImageToBase64(image: UIImage) -> String? {
    let imageData = image.jpegData(compressionQuality: 1)
    return imageData?.base64EncodedString(options: 
    Data.Base64EncodingOptions.lineLength64Characters)
   }
于 2019-11-29T07:22:46.773 回答
-2
let image: UIImage   = UIImage(named:"imageName")!
let imageData:NSData = UIImagePNGRepresentation(image)!

// Image to Base64:
let strBase64 = imageData.base64EncodedString(options: .lineLength64Characters)
print(strBase64)

// Base64 to UIImage:
let dataDecoded: NSData  = NSData(base64EncodedString: strBase64, options: NSDataBase64DecodingOptions(rawValue: 0))!
let decodedimage:UIImage = UIImage(data: dataDecoded)!
print(decodedimage)
于 2019-11-29T03:11:28.927 回答
-2
 func convertImageToBase64(_ image: UIImage) -> String {
    let imageData: NSData = UIImageJPEGRepresentation(image, 0.7)! as NSData
    let strBase64 = imageData.base64EncodedString(options: .lineLength64Characters)

    return strBase64
 }

我希望它会帮助你。

于 2019-11-28T21:07:25.930 回答