I have an image in the string (base 64) how I can decode this string for Image() using SwiftUI.
Know I am using this format:
Image(imageFromAppGroup(key: "image0")).resizable().frame(width: 70, height: 70)
.cornerRadius(10)
.background(Color(red: 0.218, green: 0.215, blue: 0.25))
I need a past base 64 images instead of "image0". How I can do this?
You can use a UIImage for this:
let str = "IMAGE"
Image(uiImage: UIImage(data: Data(base64Encoded: str)!)!)
You will not want to force unwrap with ! here, so you should handle that too:
let str = "IMAGE"
if let data = Data(base64Encoded: str), let uiImage = UIImage(data: data) {
Image(uiImage: uiImage)
} else {
let _ = print("FAIL")
}
You could also create an Image extension:
extension Image {
init?(base64String: String) {
guard let data = Data(base64Encoded: base64String) else { return nil }
guard let uiImage = UIImage(data: data) else { return nil }
self = Image(uiImage: uiImage)
}
}
/* ... */
var body: some View {
Image(base64String: str)
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With