目前我正在开发一个NSImageView,用户在其上拖放图像,图像会保存到磁盘上。我能够保存png和jpeg图像,但在保存GIF图像时,所有保存的都是来自gif的单帧。 imageView能够显示整个动画gif。
我目前将图像从NSImageView保存到磁盘的实现是:
let cgRef = image.CGImageForProposedRect(nil, context: nil, hints: nil)
let newRep = NSBitmapImageRep(CGImage: cgRef!)
newRep.size = image.size
let type = getBitmapImageFileType(imageName.lowercaseString) // getBitmapImageFileType: returns NSBitmapImageFileType
let properties = type == .NSGIFFileType ? [NSImageLoopCount: 0] : Dictionary<String, AnyObject>()
let data: NSData = newRep.representationUsingType(type, properties: properties)!
data.writeToFile(link, atomically: true)
我应该如何修改此代码,以便能够将所有GIF帧保存到磁盘。