SVG Filter
SVG-Filter sind eine leistungsstarke Technologie für Grafikeffekte, mit der verschiedene visuelle Effekte erzielt werden können, wie z. B. Unschärfe, Schatten, Beleuchtung usw.
Filter können auf SVG-Grafikelemente wie Rechtecke, Kreise, Pfade usw. sowie auf SVG-Textelemente angewendet werden, wodurch sie unterschiedliche Erscheinungsbilder und Effekte erhalten.
Grundlegende Syntax
SVG-Filter verwenden normalerweise das<filter>Element zum Definieren und werden über dasfilterAttribut auf die Zielelemente angewendet.
<svg width="200" height="200" xmlns="http://www.w3.org/2000/svg">
<!-- 定义滤镜 -->
<filter id="filter_id">
<!-- 滤镜效果 -->
</filter>
<!-- 应用滤镜的目标元素 -->
<rect x="50" y="50" width="100" height="80" filter="url(#filter_id)" />
</svg>
Filtereffekte
SVG-Filter können eine Vielzahl von Effekten erzielen. Häufige Filtereffekte sind:
Unschärfe: erzeugt einen Unschärfeeffekt im Bild unter Verwendung des
<feGaussianBlur>Element.Schatten: fügt dem Bild einen Schatteneffekt hinzu, unter Verwendung des
<feDropShadow>Element.Helligkeits- und Kontrastanpassung: passt die Helligkeit und den Kontrast des Bildes an, unter Verwendung des
<feComponentTransfer>Element.Farbmatrix: ändert die Farbe des Bildes durch Farbmatrixoperationen unter Verwendung des
<feColorMatrix>Element.Mischmodus: mischt zwei Bilder zusammen, unter Verwendung des
<feBlend>Element.
Der folgende Code definiert einen Unschärfefilter und wendet ihn dann auf ein rot gefülltes Rechteck an, wodurch das Rechteck einen Unschärfeeffekt erhält.
Beispiele
<!-- Weichzeichnerfilter definieren -->
<filter id="blur_filter">
<feGaussianBlur in="SourceGraphic" stdDeviation="5" />
</filter>
<!-- Rechteck, das den Unschärfefilter anwendet -->
<rect x="50" y="50" width="100" height="80" fill="red" filter="url(#blur_filter)" />
</svg>
Selbst ausprobieren »
Die verfügbaren SVG-Filter sind:
- feBlend – Filter, der Bilder kombiniert
- feColorMatrix – Wird zur Konvertierung von Farbfiltern verwendet
- feComponentTransfer
- feComposite
- feConvolveMatrix
- feDiffuseLighting
- feDisplacementMap
- feFlood
- feGaussianBlur
- feImage
- feMerge
- feMorphology
- feOffset - Filter-Schatten
- feSpecularLighting
- feTile
- feTurbulence
- feDistantLight - Für Beleuchtungsfilter
- fePointLight - Für Beleuchtungsfilter
- feSpotLight - Für Beleuchtungsfilter
Außerdem können mehrere Filter auf jedem SVG-Element verwendet werden!
Hinweise
SVG-Filter können in Kombination verwendet werden. Innerhalb eines einzelnen
<filter>Elements können mehrere Filtereffekte definiert werden.Jeder Filtereffekt hat verschiedene Parameter, die angepasst werden können, wie z. B. den Standardabweichungsparameter des Weichzeichnerfilters, den Offset und den Unschärferadius des Schattenfilters usw.
SVG-Filter können mit CSS-Stylesheets oder direkt auf SVG-Elementen unter Verwendung von
styleAttributen zur Definition verwendet werden.
Durch die Verwendung von SVG-Filtern können Sie verschiedene visuelle Effekte zu SVG-Grafikelementen hinzufügen, wodurch sie lebendiger und vielfältiger erscheinen.
Andere Erweiterungen