In this last article of our SVG Filter Effects series, we share a list of useful resources to learn more about SVG Filters.

Over the course of six weeks, we published six articles that covered a variety of SVG Filter effects and the filter primitives used to create them:

SVG Filters 101— in which we covered the basics for getting started with SVG filters. In the second article, Outline Text with <feMorphology>, we learned about feMorphology and how it can be used to shrink and expand content. We saw how we can use it co create text outlines and paint-like image effects. The third article, Poster Image Effect with <feComponentTransfer> was our first step into the world of feComponentTransfer . We learned how we can use it to create poster image effects. In the fourth article, Duotone Images with <feComponentTransfer> we dug further into feComponentTransfer . We learned how to use it to recreate Photoshop’s duotone effects by creating gradient maps and applying them to images. In the fifth article, Conforming Text to Surface Texture with <feDisplacementMap> we recreated another Photoshop-grade effect and learned how to conform text to surface texture. We saw how the steps to recreate Photoshop effects are very similar in SVG. And in the sixth article, Creating Texture with <feTurbulence> we learned how to generate our own textures using SVG’s feTurbulence primitive. We learned how to use it to distort HTML and SVG content, as well as simulate natural texture by combining it with SVG’s lighting effects. All pretty powerful stuff.

Even though we covered a lot of areas, I can confidently say that we barely scratched the surface of what’s possible with SVG Filters. In this short follow-up article, I want to share some of my favorite resources to learn more about SVG Filters.

Moving Forward: SVG Filter Learning Resources and Experiments

Why SVG Filters?

SVG is currently a lot more powerful than CSS when it comes to creating graphical effects on the web. And there are several reasons why creating visual effects on the web is better than importing them as images from graphics editors like Photoshop and Illustrator:

In the days and age of the responsive web, we are no longer dealing with one image. For every image we use on the web, we should be providing responsive versions of that image optimized for different user contexts and performance. This means that if you create an image and then decide to change something about the effect in it, you’re going to have to change the effect in multiple images, which will easily turn into a maintenance nightmare. Creating effects in the browser, on the other hand, means they are resolution-independent and easier to edit.

The ability to apply filter effects on the web helps to maintain the semantic structure of the document, instead of resorting to images which—aside from generally being a fixed resolution—tend to obscure the original semantics of the elements they replace. This is especially true for effects applied to text. When effects are applied to real text on the web, that text is going to be searchable, selectable and accessible.

Effects created on the web are easier to edit, change, and update without having to jump between the graphics editor and the code editor or browser.

And last but not least, effects created on the web can be animated and interacted with. This is one of their most important points of strength.

Final Words

Thank you for joining me on this SVG Filters journey over the last few weeks. I hope this series has inspired you to start experimenting with SVG Filters and using them more when and where appropriate. There are many effects that you can create that would definitely be filed as experimental. But there are also many practical applications for filters in the wild as well. My hope is that this series has given you a glimpse of what’s possible and that it encourages you to unleash your imagination and to start creating your own practical use cases.

Finally, I hope you enjoyed this series and found it useful. Thank you for reading. =)