Bug 285799

Summary: SVG text with gradient fill is rendered very slow
Product: WebKit Reporter: Said Abou-Hallawa <sabouhallawa>
Component: SVGAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: sabouhallawa, webkit-bug-importer, zimmermann
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=304582
Attachments:
Description Flags
test case
none
animated test case none

Said Abou-Hallawa
Reported 2025-01-10 22:00:37 PST
Created attachment 473862 [details] test case Open the attached test case. The performance of rendering the SVG gradient text is not great. Profiling this test case shows that most of the time is spent in GraphicsContextCG::clipToImageBuffer() which ends up calling CGContextClipToMask(). This problem can be fixed by using transparency layers, just like background-clip: text.
Attachments
test case (6.83 KB, text/html)
2025-01-10 22:00 PST, Said Abou-Hallawa
no flags
animated test case (8.54 KB, text/html)
2025-01-11 08:47 PST, Said Abou-Hallawa
no flags
Said Abou-Hallawa
Comment 1 2025-01-10 22:01:08 PST
Said Abou-Hallawa
Comment 2 2025-01-11 08:47:08 PST
Created attachment 473866 [details] animated test case
Said Abou-Hallawa
Comment 3 2025-01-11 08:49:00 PST
Said Abou-Hallawa
Comment 4 2025-01-13 01:21:26 PST
Committed 288788@main (19fb3bc): https://commits.webkit.org/288788@main Reviewed commits have been landed. Closing PR #38895 and removing active labels.
Note You need to log in before you can comment on or make changes to this bug.