在 swift 中将图像转换为 BASE64 字符串
Converting Image to BASE64 String in swift
我正在尝试转换用户从他的照片或从相机拍摄新照片中挑选的图像。我能够将图像转换为 base64 字符串,但问题是它需要太多时间并打印一个长的无限字符串
这是我得到的 String 的输出
这是我的代码:
// Image picker from Gallery
func imagePickerController(picker: UIImagePickerController, didFinishPickingImage image: UIImage, editingInfo: [String : AnyObject]?) {
imagePicker.dismissViewControllerAnimated(true, completion: nil)
profileImage.image = image
}
// Image Picker from Camera
func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) {
imagePicker.dismissViewControllerAnimated(true, completion: nil)
profileImage.image = info[UIImagePickerControllerOriginalImage] as? UIImage
addPicBtn.setImage(nil, forState: .Normal)
let imageData:NSData = UIImagePNGRepresentation(profileImage.image!)!
let imageStr = imageData.base64EncodedStringWithOptions(NSDataBase64EncodingOptions(rawValue: 0))
print(imageStr)
}
其实转换不会花时间但是打印会比较费时间所以不要打印...
您可以应用此代码
let imageData: Data? = UIImageJPEGRepresentation(getImage(), 0.4)
let imageStr = imageData?.base64EncodedString(options: .lineLength64Characters) ?? ""
print(strBase64)
首先确保您的附加图片。
// .png
guard let imageData = UIImagePNGRepresentation(UIImage) else {
return ""
}
//.JPEG
guard let imageData = UIImageJPEGRepresentation(UIImage, 1) else {
return ""
}
// 基数 64
imageData.base64EncodedString()
Swift 4个版本。这个简单的功能对我来说效果很好。使用此确认解码图像:https://codebeautify.org/base64-to-image-converter
希望这对某人有所帮助。
public static func convertImageToBase64String(image : UIImage ) -> String
{
let strBase64 = image.pngData()?.base64EncodedString()
return strBase64!
}
let imageData: Data? = UIImageJPEGRepresentation(YourImage, 0.4)
let imageStr = imageData?.base64EncodedString(options: .lineLength64Characters) ?? ""
print(imageStr,"imageString")
我正在尝试转换用户从他的照片或从相机拍摄新照片中挑选的图像。我能够将图像转换为 base64 字符串,但问题是它需要太多时间并打印一个长的无限字符串
这是我得到的 String 的输出
这是我的代码:
// Image picker from Gallery
func imagePickerController(picker: UIImagePickerController, didFinishPickingImage image: UIImage, editingInfo: [String : AnyObject]?) {
imagePicker.dismissViewControllerAnimated(true, completion: nil)
profileImage.image = image
}
// Image Picker from Camera
func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) {
imagePicker.dismissViewControllerAnimated(true, completion: nil)
profileImage.image = info[UIImagePickerControllerOriginalImage] as? UIImage
addPicBtn.setImage(nil, forState: .Normal)
let imageData:NSData = UIImagePNGRepresentation(profileImage.image!)!
let imageStr = imageData.base64EncodedStringWithOptions(NSDataBase64EncodingOptions(rawValue: 0))
print(imageStr)
}
其实转换不会花时间但是打印会比较费时间所以不要打印...
您可以应用此代码
let imageData: Data? = UIImageJPEGRepresentation(getImage(), 0.4)
let imageStr = imageData?.base64EncodedString(options: .lineLength64Characters) ?? ""
print(strBase64)
首先确保您的附加图片。
// .png
guard let imageData = UIImagePNGRepresentation(UIImage) else {
return ""
}
//.JPEG
guard let imageData = UIImageJPEGRepresentation(UIImage, 1) else {
return ""
}
// 基数 64
imageData.base64EncodedString()
Swift 4个版本。这个简单的功能对我来说效果很好。使用此确认解码图像:https://codebeautify.org/base64-to-image-converter 希望这对某人有所帮助。
public static func convertImageToBase64String(image : UIImage ) -> String
{
let strBase64 = image.pngData()?.base64EncodedString()
return strBase64!
}
let imageData: Data? = UIImageJPEGRepresentation(YourImage, 0.4)
let imageStr = imageData?.base64EncodedString(options: .lineLength64Characters) ?? ""
print(imageStr,"imageString")