【问题标题】:Pixelart gets fuzzy using UIImageViewPixelart 使用 UIImageView 变得模糊
【发布时间】:2014-05-03 14:14:50
【问题描述】:

我有一个 16 * 16 像素的艺术图像,我想在我的 iOS 应用程序中使用它。
但是当我在 UIImageView 中选择图像时,图片变得非常模糊。

我认为这与图像被过滤的方式有关,但我找不到任何过滤选项。 我已经尝试更改了很多选项,但无法使其正常工作

我该如何解决这个问题?

(我使用的是 iOS 7、Xcode 5.1.1、OS X 10.9 Mavericks 和 iPhone 4S(我认为不需要此信息,但以防万一))

编辑:

这是一张图片: http://i.stack.imgur.com/d3Yms.png

如您所见,photoshop 中右侧的图像看起来很棒,但 Xcode 中的左侧图像看起来很模糊

【问题讨论】:

  • 你能添加一些代码和截图吗?
  • 我添加了一张图片(请忽略控制台,已经修复)

标签: ios iphone ios7 uiimageview pixel


【解决方案1】:

问题在于缩放过程在缩放时会插入像素位置和大小。如果您想使用清晰的像素艺术图像,您必须准备好所有资源,并且永远不要通过设置来依赖缩放

_imageView.contentMode = UIVIewContentModeCenter;

或 将缩放过滤器设置为值kCAFilterNearest

[_imageView.layer setMagnificationFilter:kCAFilterNearest];
[_imageView.layer setMinificationFilter:kCAFilterNearest];

如果您喜欢第二种方式,我建议将所有 ImageView 帧设置为偶数(2、4、6、8 等)大小和原点,以避免像素错位

【讨论】:

  • 这可行,但会变小。我希望它更大,但具有相同的锐利边缘且没有模糊
  • 如果您想要更大的像素化图片 - 在 Photoshop 中将其大小 (CMD+OPTION+I) 调整为您的大小 (96x96px),并关闭选项 interpolation
  • 对不起,interpolation 必须打开并具有值nearest neighbor
  • 试试这个:[imageView.layer setMinificationFilter:kCAFilterNearest];
  • 还有这个:[imageView.layer setMagnificationFilter:kCAFilterNearest]; 这应该可以解决所有缩放模糊
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-03-07
  • 2011-04-03
  • 1970-01-01
  • 2012-12-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多