【问题标题】:UIImage Resize without loss of qualityUIImage 调整大小而不损失质量
【发布时间】:2012-02-13 15:04:59
【问题描述】:

我正在寻找一个外部库(或使用不会破坏质量的 Apple 框架的方法),它可以让我缩小图像。

我已经尝试过这个“简单图像处理库”,但它只适用于黑白 - 我不知道如何使它适用于彩色图像。 (http://code.google.com/p/simple-iphone-image-processing/)

我已经尝试过 Core Graphics、UIKit、“trevor”(http://vocaro.com/trevor/blog/2009/10/12/resize-a-uiimage-the-right-way/)方法 - 这会使图像非常模糊,我真的不知道我还能做什么 - 我无法继续编写我的应用程序至少一半像样的图像缩放工作。我认为需要插值才能获得不错的结果。

鉴于 iOS 的最新进展,我真的希望有人可以帮助我。这不是只有我遇到的问题,很多其他人似乎也有同样的问题,所以如果有人可以在这里解决它,我相信会受到广大观众的赞赏!

非常感谢

【问题讨论】:

  • 您能描述一下您尝试过的方法遇到了什么问题吗?您能否发布上述方法中“极度模糊的图像”的示例,以便我们告诉您如何为您提供帮助?
  • 我不知道 UIImage-categories 是否为您提供了足够高的质量。我在我的一个应用程序中使用该库,我发现质量不错。尤其是考虑到它是多么容易使用。你可以试试看。 github.com/jchatard/UIImage-categories
  • 截屏告诉我们你的意思
  • 你在尝试 Core Graphics 时玩过CGContextSetInterpolationQuality 函数吗?
  • 嗨 - 感谢您的回复。是的,我将其设置为高。

标签: iphone cocoa-touch image-processing uikit core-graphics


【解决方案1】:

我的回答:

好的 - 最初确实回答了我的问题然后随后删除了他们的答案的人,我真的不知道为什么。

这里有三种不同的方法:

  • 使用 Trevor 的类别方法 - 我认为这对于保持清晰度很糟糕。当您试图防止出现锯齿状线条时,它会更有用。
  • 使用 iOS5 的核心图像支持和 AffineTransform 过滤器 - 更高级的 CILanczosScaleTransform 在 iOS 中不可用(据我所知)。实际上会产生非常糟糕的结果。
  • 使用 MGImageUtilities 的类别 - 这似乎在缩小比例时产生了极好的结果。 (https://github.com/mattgemmell/MGImageUtilities)

这是四张图片的截图。放大它! :http://i.stack.imgur.com/M3DVE.jpg 从左->右:Original、Trevor's、Core Image、MGIU。

令人惊讶的是,最右边的图片的内存使用量比左边的图片少了大约 16 倍。质量差不多。在小屏幕上 - 始终调整大图像的大小!

【讨论】:

  • MGImageUtilities 结果看起来不错。为什么不使用它?
  • 不错不错,我正在用!
  • 绝对比我使用的 Trevor 库获得的结果要好。谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-18
  • 1970-01-01
  • 2017-11-27
  • 1970-01-01
  • 1970-01-01
  • 2015-03-04
相关资源
最近更新 更多