【发布时间】:2015-07-01 07:39:04
【问题描述】:
我想将 NSImage 的大小从 512px 调整为 60px,我只找到了 iOS 的代码,但没有找到 OSX 的代码。
【问题讨论】:
-
This 答案对我来说非常好
我想将 NSImage 的大小从 512px 调整为 60px,我只找到了 iOS 的代码,但没有找到 OSX 的代码。
【问题讨论】:
我在 GitHub 上找到了一个函数,它对我来说很好用。
func resize(image: NSImage, w: Int, h: Int) -> NSImage {
var destSize = NSMakeSize(CGFloat(w), CGFloat(h))
var newImage = NSImage(size: destSize)
newImage.lockFocus()
image.drawInRect(NSMakeRect(0, 0, destSize.width, destSize.height), fromRect: NSMakeRect(0, 0, image.size.width, image.size.height), operation: NSCompositingOperation.CompositeSourceOver, fraction: CGFloat(1))
newImage.unlockFocus()
newImage.size = destSize
return NSImage(data: newImage.TIFFRepresentation!)!
}
【讨论】:
NSImage(data: newImage.TIFFRepresentation!)!部分无缘无故浪费了大量资源,只是return newImage。