私は私が取り組んでいる小さなIPhoneアプリケーションを持っており、私はUIImageViewで画像を表示しています。 Aspect Fitモードを使用してスケールアップしています。私は補間/平滑化なしで画像のスケールを上げたい(私はそれがピクセル化されたように見せたい)。この行動を変える方法はありますか?UIImageViewスケーリング/補間
もう少し一般的な質問は私自身のスケーリングアルゴリズムを実装することができますか、または私が選択できる他のものがありますか?
私は私が取り組んでいる小さなIPhoneアプリケーションを持っており、私はUIImageViewで画像を表示しています。 Aspect Fitモードを使用してスケールアップしています。私は補間/平滑化なしで画像のスケールを上げたい(私はそれがピクセル化されたように見せたい)。この行動を変える方法はありますか?UIImageViewスケーリング/補間
もう少し一般的な質問は私自身のスケーリングアルゴリズムを実装することができますか、または私が選択できる他のものがありますか?
あなたは最近傍フィルタにビューの層の上にmagnificationFilterプロパティを設定する必要があります:あなたが含まれているファイルの先頭に行
#import <QuartzCore/CALayer.h>
が含まれていることを確認してください
[[view layer] setMagnificationFilter:kCAFilterNearest]
これには2通りの方法があります。補間なしで再スケーリングアルゴリズムを実装することもできます。これがうまくいくならば、gimpやphotoshopのような別のアプリケーションでイメージを再スケーリングすることができます。これは、アプリケーションでサイズを動的に変更する必要がない限り機能します。
setMagnificationFilterを呼び出すか、コンパイルされません。
QuartzCoreフレームワークをプロジェクトに追加します(グループとファイル - >追加 - >既存のフレームワーク - > QuartzCore.framework - >追加)。 – suda
imageView.layer.magnificationFilter = kCAFilterNearest
imageView.layer.shouldRasterize = true
rekleの答えが言うように、setMagnificationFilter使用しているときには#importを追加してください: –
素晴らしいことだと私の目的を達成したが、私は私が使用したときに、お願いしたいと思います'magnificationFilter = kCAFilterNearest'は、実際に画像の元のピクセルを拡大した、大きくて鋭いピクセルですか、何らかの処理によって生成されたものですか?ありがとうございます! – Suge