【问题标题】:How to resize NSImage in swift? [duplicate]如何快速调整 NSImage 的大小? [复制]
【发布时间】:2015-07-01 07:39:04
【问题描述】:

我想将 NSImage 的大小从 512px 调整为 60px,我只找到了 iOS 的代码,但没有找到 OSX 的代码。

【问题讨论】:

  • This 答案对我来说非常好

标签: xcode macos swift nsimage


【解决方案1】:

我在 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
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-08-18
  • 2015-06-02
  • 2015-09-18
  • 1970-01-01
  • 2010-09-29
  • 1970-01-01
  • 2011-07-19
相关资源
最近更新 更多