#swift #xcode #base64 #avfoundation #avcapture
Вопрос:
Я пытаюсь получить представление base64 изображения, которое можно использовать на сервере в формате jpeg или png. текущие данные не могут использоваться сервером и отображаются как «поврежденные» или «нечитаемые», и открытие файла в Windows также приводит к той же ошибке. Я думаю, что эта ошибка вызвана разрывами строк в тексте base64, и она не заканчивается на==, если это имеет какой-либо эффект. Я перепробовал много решений, и все они не сработали. Я новичок в swift и потратил часы на поиски решения. Любая помощь будет оценена по достоинству! Код, который я сейчас использую:
@IBAction func takePhotoButtonPressed(_ sender: Any) {
let settings = AVCapturePhotoSettings()
let previewPixelType = settings.availablePreviewPhotoPixelFormatTypes.first!
let previewFormat = [kCVPixelBufferPixelFormatTypeKey as String: previewPixelType,
kCVPixelBufferWidthKey as String: 160,
kCVPixelBufferHeightKey as String: 160]
settings.previewPhotoFormat = previewFormat
sessionOutput.capturePhoto(with: settings, delegate: self)
}
func photoOutput(_ output: AVCapturePhotoOutput, didFinishProcessingPhoto photo: AVCapturePhoto, error: Swift.Error?) {
let imageData = photo.fileDataRepresentation()
var base64Data = imageData?.base64EncodedString()
print(base64String!)
}