Software filters use ImageBuffers to generate the result of their applying to the target element. These buffers can take significant amount of memory if the target element is large or the number of effects are big. CoreGraphics provides a better way to apply FilterEffects. A CGStyle can be used to apply the a FilterEffect to the current drawing. Also beginTransparencyLayer()/endTransparencyLayer() can be used to force applying the FilterEffect only when composting the layer to the destination GraphicsContext. This will treat the drawing commands between beginning and ending the transparency layer as a unit of drawing.
Pull request: https://github.com/WebKit/WebKit/pull/3216
<rdar://problem/98820279>
rdar://115870393