1 <?xml version=
"1.0" encoding=
"UTF-8"?>
2 <!DOCTYPE svg PUBLIC
"-//W3C//DTD SVG 1.1 Basic//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-basic.dtd">
3 <svg xmlns=
"http://www.w3.org/2000/svg" xmlns:
xlink=
"http://www.w3.org/1999/xlink" id=
"svg-root" width=
"100%" height=
"100%" viewBox=
"0 0 480 360" version=
"1.1" baseProfile=
"basic">
4 <title id=
"test-title">feComponentTransfer Test - Discrete
</title>
5 <desc id=
"test-desc">feComponentTransfer tests.
</desc>
6 <g id=
"test-body-content">
7 <svg version=
"1.1" xmlns=
"http://www.w3.org/2000/svg" xmlns:
xlink=
"http://www.w3.org/1999/xlink" x=
"15" y=
"5" width=
"450" height=
"300" viewBox=
"0 0 650 420">
9 <linearGradient id=
"MyGradient" gradientUnits=
"userSpaceOnUse" x1=
"10" y1=
"0" x2=
"590" y2=
"0">
10 <stop offset=
"0" stop-color=
"#00ff00"/>
11 <stop offset=
"1" stop-color=
"#000000"/>
13 <filter id=
"Identity" filterUnits=
"objectBoundingBox" x=
"0%" y=
"0%" width=
"100%" height=
"100%">
15 <feFuncR type=
"identity"/>
16 </feComponentTransfer>
18 <filter id=
"DiscreteBlank" filterUnits=
"objectBoundingBox" x=
"0%" y=
"0%" width=
"100%" height=
"100%">
20 <feFuncG type=
"discrete" tableValues=
"0"/>
21 </feComponentTransfer>
23 <filter id=
"DiscreteFull" filterUnits=
"objectBoundingBox" x=
"0%" y=
"0%" width=
"100%" height=
"100%">
25 <feFuncG type=
"discrete" tableValues=
"1"/>
26 </feComponentTransfer>
28 <filter id=
"DiscreteOrd" filterUnits=
"objectBoundingBox" x=
"0%" y=
"0%" width=
"100%" height=
"100%">
30 <feFuncG type=
"discrete" tableValues=
"0.0 0.25 0.5 0.75 1 1"/>
31 </feComponentTransfer>
34 <rect fill=
"none" stroke=
"blue" x=
"1" y=
"1" width=
"648" height=
"418"/>
35 <g font-size=
"15" font-family=
"Verdana">
36 <rect fill=
"none" stroke=
"blue" x=
"1" y=
"1" width=
"648" height=
"418"/>
37 <rect x=
"20" y=
"10" width=
"580" height=
"40" fill=
"url(#MyGradient)" filter=
"url(#Identity)"/>
38 <text x=
"20" y=
"70">type: identity
</text>
39 <rect x=
"20" y=
"110" width=
"580" height=
"40" fill=
"url(#MyGradient)" filter=
"url(#DiscreteBlank)"/>
40 <text x=
"20" y=
"170">type: discrete [
0] -- Result should be black
</text>
41 <rect x=
"20" y=
"210" width=
"580" height=
"40" fill=
"url(#MyGradient)" filter=
"url(#DiscreteFull)"/>
42 <text x=
"20" y=
"270">type: discrete [
1] -- Result should be green
</text>
43 <rect x=
"20" y=
"310" width=
"580" height=
"40" fill=
"url(#MyGradient)" filter=
"url(#DiscreteOrd)"/>
44 <text x=
"20" y=
"370">type: discrete [
0.0 0.25 0.5 0.75 1] -- Result should be quantized gradient
</text>