我想在iOS上覆制CGContextClipToMask的行爲,目前爲止沒有任何運氣。有誰知道CGContextClipToMask是如何在內部工作的?我已經閱讀過文檔,它說它只是將圖像阿爾法值乘以遮罩阿爾法值,所以這就是我在自定義函數中所做的事情,但是當我使用普通的CGContext混合多次繪製結果圖像時,結果會變得越來越暗,而使用CGContextClipToMask則結果是正確的,並且不會變暗。CGContextClipToMask如何在內部工作?
我的理論是CGContextClipToMask以某種方式使用目標上下文,除了圖像和蒙版產生正確的結果,但我只是不知道核心圖形是否足夠。
我也看到了這個問題:
How to get the real RGBA or ARGB color values without premultiplied alpha?
並有可能我遇到了這個問題,但後來如何CGContextClipToMask避開精度損失與8位阿爾法的問題?
爲['CGContextClipToMask'(HTTPS GNUstep的代碼: //github.com/gnustep/gnustep-opal/blob/master/Source/OpalGraphics/CGContext.m#L835)在這裏毫無用處... – JustSid
Sergio,沒有該方法的代碼,但它確實有如何評論一個實施可能會奏效。對此有何想法? – jjxtra
其實我不......果汁全都在那個'mask()'函數中...也看看我的編輯。 – sergio