UIImageView缩放/插值

时间:2009-07-28 03:57:36

标签: iphone uiimageview scaling interpolation

我正在使用一个小型iPhone应用程序,我正在使用UIImageView显示图像。我正在使用Aspect Fit模式进行扩展。我想让图像按比例放大而不进行插值/平滑(我希望它看起来像素化)。有什么方法可以改变这种行为吗?

一个更普遍的问题是我可以实现自己的缩放算法,还是有其他我可以选择的内置算法?

4 个答案:

答案 0 :(得分:20)

您需要将视图图层上的magnificationFilter属性设置为最近的邻居过滤器:

[[view layer] setMagnificationFilter:kCAFilterNearest]

答案 1 :(得分:5)

确保包含

#import  <QuartzCore/CALayer.h>

在包含对setMagnificationFilter的调用的文件的顶部,或者它将无法编译。

答案 2 :(得分:1)

夫特

imageView.layer.magnificationFilter = kCAFilterNearest
imageView.layer.shouldRasterize = true

答案 3 :(得分:-2)

有两种方法可以做到这一点。您可以在不插值的情况下实现重新缩放算法。如果需要做很多工作,您可以在gimp或photoshop等其他应用程序中重新调整图像。除非您需要在应用程序中动态更改大小,否则这将起作用。