0

2 つの長方形の画像があります。1 つは前景、もう 1 つは背景です。前景画像が背景画像の「一部」のように見えるように、前景画像のエッジをブレンドしようとしています。言い換えれば、前景画像の不透明度が画像の中心で 100% からエッジで 0% に減少する透明効果を適用しようとしています。この操作は、アルファ合成、アルファ ブレンディング、エッジ フェザリング、エッジ透明度など、さまざまな名前で呼ばれることがあることがわかりました。私が取得しようとしている効果の詳細な説明は次のとおりです。 http://en.wikipedia.org/wiki/Alpha_compositing

CGContext のドキュメントを見てきましたが、すぐに使える関数は見つかりませんでした。

CGContext または OpenGL を使用してそれを行う方法はありますか? 長方形以外の画像でそれを行う方法はありますか? 私は知っています、すべての画像は長方形ですが、たとえば、その中に円があり、その周りに透明な領域がある画像を意味します.

4

1 に答える 1

1

iOSライブラリのCGImageCreateWithMask()関数は、エッジの不透明度を下げてアルファブレンディングを実行できます。これらの2つのリンクのコードを組み合わせることで、何かを機能させることができます。

http://iosdevelopertips.com/cocoa/how-to-mask-an-image.html

CGImageMaskCreateでマスクを作成するのはすべて黒です(iphone)

マスクの各ピクセルのグレーのレベル(黒から白)は、ブレンド中の不透明度のレベルを定義します。

于 2011-04-05T20:50:25.210 に答える