Expand description
Filter effects API based on the W3C Filter Effects specification.
This module provides a comprehensive filter system supporting both high-level CSS filter functions and low-level SVG filter primitives. The API is designed to follow the W3C Filter Effects Module Level 1 specification.
See: https://drafts.fxtf.org/filter-effects/
§Implementation Status
§✅ Implemented
Filter Functions:
Blur- Gaussian blur effect
Filter Primitives (Single Use Only):
Flood- Solid color fillGaussianBlur- Gaussian blur filterDropShadow- Drop shadow effect (compound primitive)DropShadowOnly- Drop shadow effect without the original inputOffset- Translation/shift (single primitive)
Note: Currently only single primitive filters are supported. Filter graphs with multiple connected primitives are not yet implemented.
§🚧 Not Yet Implemented
Core Features:
FilterGraphexecution - Chaining multiple filter primitives togetherFilterInputs- Connecting primitives to create complex effects
Filter Functions:
Brightness,Contrast,Grayscale,HueRotate,Invert,Opacity,Saturate,Sepia
Filter Primitives:
ColorMatrix- Matrix-based color transformationComposite- Porter-Duff compositing operationsBlend- Blend mode operationsMorphology- Dilate/erode operationsConvolveMatrix- Custom convolution kernelsTurbulence- Perlin noise generationDisplacementMap- Pixel displacementComponentTransfer- Per-channel transfer functionsImage- External image referenceTile- Tiling operationDiffuseLighting,SpecularLighting- Lighting effects
Modules§
Structs§
- Convolution
Kernel - Convolution kernel for custom filtering operations.
- Filter
- The main filter system.
- Filter
Graph - A directed acyclic graph (DAG) of filter operations.
- Filter
Id - Unique identifier for a filter primitive in the graph.
- Filter
Inputs - Input connections for a filter primitive.
Enums§
- Color
Channel - Color channels for displacement mapping and channel selection.
- Composite
Operator - Composite operators for combining filter inputs.
- Compound
Filter - Pre-built compound effects for common use cases.
- Edge
Mode - Edge mode for filter operations.
- Filter
Effect - All possible filter effects.
- Filter
Function - High-level filter functions for common effects (CSS filter functions).
- Filter
Input - A single filter input.
- Filter
Primitive - Low-level filter primitives for granular control (SVG filter primitives).
- Filter
Source - Filter input sources.
- Light
Source - Light source configurations for lighting effects.
- Morphology
Operator - Morphological operators for dilate/erode operations.
- Transfer
Function - Transfer functions for component transfer operations.
- Turbulence
Type - Types of turbulence noise generation.
Functions§
Type Aliases§
- Blend
Mode - Blend modes for combining colors.