Füllen einer Form mit einem Gradienten in CGContext
-
06-07-2019 - |
Frage
Ich möchte eine Polygonform füllen, die ich über Core Graphics mit einem linearen CGGradient gezogen haben. Die CGContextDrawLinearGradient Funktion zeichnet einen Gradienten von einem Punkt zum anderen, aber es füllt die gesamte Ansicht. Wie kann ich die Steigung angezeigt werden nur innerhalb der Polygonform ich gezogen habe?
Lösung
Sie können eine CGMutablePath in Ihrer gewünschten Form konstruieren dann verwenden, um die Region, die Sie anzeigen möchten Clip, so etwas wie ...
// Construct yourClipPath
CGContextAddPath(yourContext, yourClipPath);
CGContextClosePath(yourContext);
CGContextClip(yourContext);
// Draw Your Gradient
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow