SVG-Filtereffekte
# SVG-Filtereffekte

SVG-Filtereffekte sind Effekte, welche auf Skalierbare Vektorgrafiken (SVG)-Dateien angewandt werden. SVG ist ein offen zugängliches XML-Format für zweidimensionale Vektorgrafiken, wie vom World Wide Web Consortium (W3C) beschrieben. Ein Filtereffekt besteht aus einer Reihe von grafischen Operationen, welche auf eine gegebene Quell-Vektorgrafik angewandt werden und ein verändertes Bitmap-Ergebnis erzeugen.

Filtereffekte werden durch Filterelemente definiert. Um einen Filtereffekt auf ein Grafikelement oder ein Containerelement anzuwenden, wird die 'filter'-Eigenschaft desjenigen Elements gesetzt. Jedes 'filter'-Element enthält eine Reihe von Filter-Primitiven als dessen Kindelemente. Jede Filterprimitive vollführt eine einzige fundamentale Grafikoperation (bspw. ein Gaußscher Weichzeichner oder einen Lichteffekt) auf eine oder mehrere Eingabeelemente und erzeugt ein grafisches Ergebnis. Weil die meisten Filterprimitiven eine Art von Bildbearbeitung darstellen, ist in den meisten Fällen die Ausgabe der Filterprimitive ein einzelnes RGBA-Bitmapbild (allerdings wird es neu erstellt, wenn eine höhere Auflösung gefordert wird).

Die ursprüngliche Quelldatei oder das Ergebnis einer Filterprimitiven können als Eingabe für eine oder weitere Filterprimitiven dienen. Eine weitverbreitete Anwendung ist es, die Quellgrafik mehrfach zu verwenden. Beispielsweise könnte ein einfacher Filter eine Grafik durch zwei ersetzen, indem eine schwarze Kopie zur ursprünglichen Quellgrafik mit Versatz hinzugefügt wird, um einen Schlagschatten zu erzeugen. Tatsächlich gibt es nun zwei Grafikebenen, beide haben dieselben Quellgrafiken.

## SVG-Filterprimitive

Die folgende Tabelle listet die Filterprimitiven welche sowohl in SVG 1.0 als auch in SVG 1.1 zur Verfügung stehen. SVG Tiny unterstützt keine Filtereffekte, während SVG Basic nur die dort gezeigten Filterprimitiven unterstützt.

| Name | Element | SVG Basic |
| - | - | - |
| Verschmelzung | feBlend | Ja |
| Farbmatrix | feColorMatrix | Nein |
| Component transfer | feComponentTransfer | Ja |
| Composite | feComposite | Ja |
| Faltungsmatrix | feConvolveMatrix | Nein |
| Diffuses Licht | feDiffuseLighting | Nein |
| Displacement map | feDisplacementMap | Nein |
| Überflutung | feFlood | Ja |
| Gaußscher Weichzeichner | feGaussianBlur | Ja |
| Bild | feImage | Ja |
| Zusammenfügen | feMerge | Ja |
| Morphologie | feMorphology | Nein |
| Versatz | feOffset | Ja |
| Specular lighting | feSpecularLighting | Nein |
| Kacheln | feTile | Ja |
| Verwirbelung | feTurbulence | Nein |
