我正在使用一个小型iPhone应用程序,我正在使用UIImageView显示图像。我正在使用Aspect Fit模式进行扩展。我想让图像按比例放大而不进行插值/平滑(我希望它看起来像素化)。有什么方法可以改变这种行为吗?
一个更普遍的问题是我可以实现自己的缩放算法,还是有其他我可以选择的内置算法?
答案 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等其他应用程序中重新调整图像。除非您需要在应用程序中动态更改大小,否则这将起作用。