Source code

Revision control

Copy as Markdown

Other Tools

# Tests the composite SVG filter primitive
---
root:
items:
- type: stacking-context
bounds: 0 0 0 0
filter-primitives:
- type: flood
color: yellow
in: previous
- type: offset
offset: -50 -50
in: previous
- type: composite
in1: original
in2: 1
operator: over
items:
- type: rect
color: blue
bounds: 60 60 100 100
- type: stacking-context
bounds: 200 0 0 0
filter-primitives:
- type: flood
color: yellow
in: previous
- type: offset
offset: -50 -50
in: previous
- type: composite
in1: original
in2: 1
operator: in
items:
- type: rect
color: blue
bounds: 60 60 100 100
- type: stacking-context
bounds: 400 0 0 0
filter-primitives:
- type: flood
color: yellow
in: previous
- type: offset
offset: -50 -50
in: previous
- type: composite
in1: original
in2: 1
operator: atop
items:
- type: rect
color: blue
bounds: 60 60 100 100
- type: stacking-context
bounds: 600 0 0 0
filter-primitives:
- type: flood
color: yellow
in: previous
- type: offset
offset: -50 -50
in: previous
- type: composite
in1: original
in2: 1
operator: out
items:
- type: rect
color: blue
bounds: 60 60 100 100
- type: stacking-context
bounds: 0 200 0 0
filter-primitives:
- type: flood
color: yellow
in: previous
- type: offset
offset: -50 -50
in: previous
- type: composite
in1: original
in2: 1
operator: xor
items:
- type: rect
color: blue
bounds: 60 60 100 100
- type: stacking-context
bounds: 200 200 0 0
filter-primitives:
- type: flood
color: [255, 0, 0, 1.0]
in: previous
- type: offset
offset: -50 -50
in: previous
- type: composite
in1: original
in2: 1
operator: lighter
items:
- type: rect
color: [0, 0, 255, 1.0]
bounds: 60 60 100 100
- type: stacking-context
bounds: 400 200 0 0
filter-primitives:
- type: flood
color: yellow
in: previous
- type: offset
offset: -50 -50
in: previous
- type: composite
in1: original
in2: 1
operator: arithmetic
k-values: [0.5, 0.5, 0.5, 0]
items:
- type: rect
color: blue
bounds: 60 60 100 100