| <?xml version="1.0" encoding="UTF-8"?> |
| <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1 Basic//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-basic.dtd"> |
| <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"> |
| <title id="test-title">feComponentTransfer Test - Gamma</title> |
| <desc id="test-desc">feComponentTransfer tests.</desc> |
| <g id="test-body-content"> |
| <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"> |
| <defs> |
| <linearGradient id="MyGradient" gradientUnits="userSpaceOnUse" x1="10" y1="0" x2="590" y2="0"> |
| <stop offset="0" stop-color="#00ff00"/> |
| <stop offset="1" stop-color="#000000"/> |
| </linearGradient> |
| <filter id="Identity" filterUnits="objectBoundingBox" x="0%" y="0%" width="100%" height="100%"> |
| <feComponentTransfer> |
| <feFuncR type="identity"/> |
| </feComponentTransfer> |
| </filter> |
| <filter id="GammaBlank" filterUnits="objectBoundingBox" x="0%" y="0%" width="100%" height="100%"> |
| <feComponentTransfer> |
| <feFuncG type="gamma" amplitude="1" exponent="1" offset="0"/> |
| </feComponentTransfer> |
| </filter> |
| <filter id="GammaFull" filterUnits="objectBoundingBox" x="0%" y="0%" width="100%" height="100%"> |
| <feComponentTransfer> |
| <feFuncG type="gamma" amplitude="1" exponent="0.5" offset="0"/> |
| </feComponentTransfer> |
| </filter> |
| <filter id="GammaOrd" filterUnits="objectBoundingBox" x="0%" y="0%" width="100%" height="100%"> |
| <feComponentTransfer> |
| <feFuncG type="gamma" amplitude="1" exponent="2" offset="0"/> |
| </feComponentTransfer> |
| </filter> |
| </defs> |
| <rect fill="none" stroke="blue" x="1" y="1" width="648" height="418"/> |
| <g font-size="15" font-family="Verdana"> |
| <rect fill="none" stroke="blue" x="1" y="1" width="648" height="418"/> |
| <rect x="20" y="10" width="580" height="40" fill="url(#MyGradient)" filter="url(#Identity)"/> |
| <text x="20" y="70">type: identity</text> |
| <rect x="20" y="110" width="580" height="40" fill="url(#MyGradient)" filter="url(#GammaBlank)"/> |
| <text x="20" y="170">type: gamma amplitude=1 exponent=1 offset=0 -- Result should be identity</text> |
| <rect x="20" y="210" width="580" height="40" fill="url(#MyGradient)" filter="url(#GammaFull)"/> |
| <text x="20" y="270">type: gamma amplitude=1 exponent=0.5 offset=0 -- Result should be</text> |
| <text x="20" y="290">delayed falloff in gradient</text> |
| <rect x="20" y="310" width="580" height="40" fill="url(#MyGradient)" filter="url(#GammaOrd)"/> |
| <text x="20" y="370">type: gamma amplitude=1 exponent=2 offset=0 -- Result should compress</text> |
| <text x="20" y="390">the gradient</text> |
| </g> |
| </svg> |
| </g> |
| </svg> |