Что эквивалентно iOS UIImagePNGRepresentation() для OS X?

Я пытаюсь загрузить файл изображения на Parse.com из OS X с помощью Swift. Поиск документации Parse.com (для OS X) я нашел следующий код:

let imageData = UIImagePNGRepresentation(image)
let imageFile = PFFile(name:"image.png", data:imageData)

var userPhoto = PFObject(className:"UserPhoto")
userPhoto["imageName"] = "My trip to Hawaii!"
userPhoto["imageFile"] = imageFile
userPhoto.saveInBackground()

Проблема в том, что он использует UIImagePNGRepresentation(), который принадлежит iOS API, а не OS X.

Кто-нибудь знает, как это сделать правильно на OS X и Swift?


person Plinio Vilela    schedule 19.01.2016    source источник
comment
Попробуйте это и сообщите нам, сработало ли это: stackoverflow.com/questions/28229958/   -  person Eric Aya    schedule 19.01.2016


Ответы (1)


Эквивалент UIImagePNGRepresentation может быть примерно таким:

let cgImgRef = image.CGImageForProposedRect(nil, context: nil, hints: nil)
let bmpImgRef = NSBitmapImageRep(CGImage: cgImgRef!)
let pngData = bmpImgRef.representationUsingType(NSBitmapImageFileType.NSPNGFileType, properties: [:])

// your code bellow

let imageFile = PFFile(name:"image.png", pngData)

var userPhoto = PFObject(className:"UserPhoto")
userPhoto["imageName"] = "My trip to Hawaii!"
userPhoto["imageFile"] = imageFile
userPhoto.saveInBackground()
person Sebastian    schedule 19.01.2016
comment
1) что такое изображение? 2)что такое PFFile и PFObject? Их нет в документации Apple, поэтому они являются сторонними библиотеками. Если вы упоминаете их, то вы также должны указать, где их найти - person Gargo; 17.09.2017
comment
Это строка pngData. Я вставляю только строку в код, предоставленный Plinio. Вы читали код вопроса? - person Sebastian; 18.09.2017