我有兩個矩形圖像:一個是前景,另一個是背景。我正在嘗試混合前景圖像的邊緣,以便前景圖像看起來像是背景圖像的「部分」。換句話說,我試圖應用透明效果,前景圖像的不透明度從圖像中心的100%下降到邊緣的0%。我發現這個操作有時被不同的名稱引用,例如:alpha合成,alpha混合,邊緣羽化或邊緣透明。這裏是我試圖獲得的效果的更詳細的描述:http://en.wikipedia.org/wiki/Alpha_compositingAlpha在UIImage的邊緣上混合
我已經看過CGContext文檔,但是我還沒有找到任何可以開箱即用的功能。
有什麼辦法可以做到這一點使用CGContext甚至OpenGL?有沒有辦法在非矩形圖像上做到這一點?我知道,所有的圖像都是矩形的,但我的意思是一個圖像,讓我們說,一個圓圈和周圍的透明區域。
如果您可以自由改變圖像本身,那麼就這樣吧。使用CGContext是可能的,但比簡單地翻轉開關更困難。一般的方法是創建位圖上下文,將圖像渲染到其上(使用任何適用的轉換),然後更改位圖上下文中的alpha值,然後再次將位圖上下文轉換爲可顯示的圖像。不漂亮。 – mvds 2011-03-12 14:42:58
看看http://stackoverflow.com/questions/4609132/iphone-replacing-a-block-of-pixels-in-an-image-with-another-block-of-pixls/4609333#4609333,和使用'view.renderInContext:'將自定義像素級別編輯應用到任何視圖。 – mvds 2011-03-12 14:45:58
@mvds:感謝您的幫助,我找到了解決方案。 – Manu 2011-04-05 20:51:10