<svg version="1.1" baseProfile="basic" id="svg-root" | |
width="100%" height="100%" viewBox="0 0 480 360" | |
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> | |
<!--======================================================================--> | |
<!--= SVG 1.1 2nd Edition Test Case =--> | |
<!--======================================================================--> | |
<!--= Copyright 2009 World Wide Web Consortium, (Massachusetts =--> | |
<!--= Institute of Technology, European Research Consortium for =--> | |
<!--= Informatics and Mathematics (ERCIM), Keio University). =--> | |
<!--= All Rights Reserved. =--> | |
<!--= See http://www.w3.org/Consortium/Legal/. =--> | |
<!--======================================================================--> | |
<d:SVGTestCase xmlns:d="http://www.w3.org/2000/02/svg/testsuite/description/" | |
template-version="1.4" reviewer="CL" author="BB" status="created" | |
version="$Revision: 1.1 $" testname="$RCSfile: filters-overview-02-b.svg,v $"> | |
<d:testDescription xmlns="http://www.w3.org/1999/xhtml" href="http://www.w3.org/TR/SVG11/filters.html#FilterPrimitivesOverview"> | |
<p> | |
The purpose of this file is to test the 'in' attribute on filter primitives. | |
This test is the same as filters-overview-01-b.svg but uses gradients with gradientUnits="userSpaceOnUse" instead for the | |
FillPaint/StrokePaint. | |
</p> | |
</d:testDescription> | |
<d:operatorScript xmlns="http://www.w3.org/1999/xhtml"> | |
<p> | |
Run the test. No interaction required. | |
</p> | |
</d:operatorScript> | |
<d:passCriteria xmlns="http://www.w3.org/1999/xhtml"> | |
<p> | |
To pass this test, the UA must render all 6 cases (SourceGraphic, SourceAlpha, BackgroundImage, BackgroundAlpha, FillPaint, StrokePaint) correctly. | |
</p> | |
<ol> | |
<li>The result for in="SourceGraphic" is a non blurred vertical rectangle (green with dashed stroke) overlayed with three blurred circles (red/green/blue with dashed stroke).</li> | |
<li>The result for in="SourceAlpha" is a non blurred vertical rectangle (green with dashed stroke) overlayed with three blurred circles (dark gray with dashed stroke).</li> | |
<li>The result for in="BackgroundImage" is a blurred vertical rectangle (green with dashed stroke).</li> | |
<li>The result for in="BackgroundAlpha" is blurred vertical rectangle (dark gray with dashed stroke).</li> | |
<li>The results for in="FillPaint" and in="StrokePaint" are the same. They consists of a non blurred vertical rectangle (green with dashed stroke) overlayed with a blurred gradiant (blue/white/red/yellow).</li> | |
<li>The size of the gradients are bigger than the blurred circles.</li> | |
</ol> | |
</d:passCriteria> | |
</d:SVGTestCase> | |
<title id="test-title">$RCSfile: filters-overview-02-b.svg,v $</title> | |
<defs> | |
<font-face font-family="SVGFreeSansASCII" unicode-range="U+0-7F"> | |
<font-face-src> | |
<font-face-uri xlink:href="../resources/SVGFreeSans.svg#ascii"/> | |
</font-face-src> | |
</font-face> | |
</defs> | |
<g id="test-body-content" font-family="SVGFreeSansASCII,sans-serif" font-size="18"> | |
<defs> | |
<linearGradient id="grad1" gradientUnits="userSpaceOnUse" x1="140.5" y1="57.75" x2="140.5" y2="139.5"> | |
<stop offset="0.00" stop-color="#0000ff"/> | |
<stop offset="0.33" stop-color="#ffffff"/> | |
<stop offset="0.67" stop-color="#ff0000"/> | |
<stop offset="1.00" stop-color="#ffff00"/> | |
</linearGradient> | |
<linearGradient id="grad2" gradientUnits="userSpaceOnUse" x1="140.5" y1="192.75" x2="140.5" y2="274.5"> | |
<stop offset="0.00" stop-color="#0000ff"/> | |
<stop offset="0.33" stop-color="#ffffff"/> | |
<stop offset="0.67" stop-color="#ff0000"/> | |
<stop offset="1.00" stop-color="#ffff00"/> | |
</linearGradient> | |
<filter id="GaussianBlur1" filterUnits="objectBoundingBox" x="-20%" y="-20%" width="140%" height="140%"> | |
<feGaussianBlur in="SourceAlpha" stdDeviation="2"/> | |
</filter> | |
<filter id="GaussianBlur2" filterUnits="objectBoundingBox" x="-20%" y="-20%" width="140%" height="140%"> | |
<feGaussianBlur in="SourceGraphic" stdDeviation="2"/> | |
</filter> | |
<filter id="GaussianBlur3" filterUnits="objectBoundingBox" x="-30%" y="-30%" width="160%" height="160%"> | |
<feFlood flood-color="white" result="flood"/> | |
<feGaussianBlur in="BackgroundAlpha" stdDeviation="2" result="blur"/> | |
<feMerge> | |
<feMergeNode in="flood"/> | |
<feMergeNode in="blur"/> | |
</feMerge> | |
</filter> | |
<filter id="GaussianBlur4" filterUnits="objectBoundingBox" x="-40%" y="-40%" width="180%" height="180%"> | |
<feFlood flood-color="white" result="flood"/> | |
<feGaussianBlur in="BackgroundImage" stdDeviation="2" result="blur"/> | |
<feMerge> | |
<feMergeNode in="flood"/> | |
<feMergeNode in="blur"/> | |
</feMerge> | |
</filter> | |
<filter id="GaussianBlur5" filterUnits="objectBoundingBox" x="-20%" y="-20%" width="140%" height="140%"> | |
<feGaussianBlur in="StrokePaint" stdDeviation="5"/> | |
</filter> | |
<filter id="GaussianBlur6" filterUnits="objectBoundingBox" x="-20%" y="-20%" width="140%" height="140%"> | |
<feGaussianBlur in="FillPaint" stdDeviation="5"/> | |
</filter> | |
</defs> | |
<g enable-background="new" stroke-dasharray="25 5" stroke="black" stroke-width="3" font-size="14" fill="black"> | |
<rect x="90" y="50" width="16" height="95" fill="green"/> | |
<g fill-opacity="0.6" stroke="black" stroke-width="3" filter="url(#GaussianBlur1)"> | |
<circle cx="098" cy="085" r="25" fill="red"/> | |
<circle cx="080" cy="110" r="25" fill="blue"/> | |
<circle cx="116" cy="110" r="25" fill="green"/> | |
</g> | |
<text x="98" y="160" stroke="none" text-anchor="middle">SourceAlpha</text> | |
<desc> =========================================================================================== </desc> | |
<rect x="90" y="185" width="16" height="95" fill="green"/> | |
<g fill-opacity="0.6" stroke="black" stroke-width="3" filter="url(#GaussianBlur2)"> | |
<circle cx="098" cy="220" r="25" fill="red"/> | |
<circle cx="080" cy="245" r="25" fill="blue"/> | |
<circle cx="116" cy="245" r="25" fill="green"/> | |
</g> | |
<text x="98" y="295" stroke="none" text-anchor="middle">SourceGraphic</text> | |
<desc> =========================================================================================== </desc> | |
<rect x="230" y="50" width="16" height="95" fill="green"/> | |
<g fill-opacity="0.6" stroke="black" stroke-width="3" filter="url(#GaussianBlur3)"> | |
<circle cx="238" cy="085" r="25" fill="red"/> | |
<circle cx="220" cy="110" r="25" fill="blue"/> | |
<circle cx="256" cy="110" r="25" fill="green"/> | |
</g> | |
<text x="238" y="160" stroke="none" text-anchor="middle">BackgroundAlpha</text> | |
<desc> =========================================================================================== </desc> | |
<rect x="230" y="185" width="16" height="95" fill="green"/> | |
<g fill-opacity="0.6" stroke="black" stroke-width="3" filter="url(#GaussianBlur4)"> | |
<circle cx="238" cy="220" r="25" fill="red"/> | |
<circle cx="220" cy="245" r="25" fill="blue"/> | |
<circle cx="256" cy="245" r="25" fill="green"/> | |
</g> | |
<text x="238" y="295" stroke="none" text-anchor="middle">BackgroundImage</text> | |
<desc> =========================================================================================== </desc> | |
<rect x="370" y="50" width="16" height="95" fill="green"/> | |
<!-- bbox: 335 60 86 75 --> | |
<g stroke-opacity="0.6" stroke="url(#grad1)" stroke-width="3" filter="url(#GaussianBlur5)"> | |
<circle cx="378" cy="085" r="25" fill="red"/> | |
<circle cx="360" cy="110" r="25" fill="blue"/> | |
<circle cx="396" cy="110" r="25" fill="green"/> | |
</g> | |
<text x="378" y="160" stroke="none" text-anchor="middle">FillPaint</text> | |
<desc> =========================================================================================== </desc> | |
<rect x="370" y="185" width="16" height="95" fill="green"/> | |
<!-- bbox: 335 195 86 75 --> | |
<g fill-opacity="0.6" fill="url(#grad2)" stroke="black" stroke-width="3" filter="url(#GaussianBlur6)"> | |
<circle cx="378" cy="220" r="25"/> | |
<circle cx="360" cy="245" r="25"/> | |
<circle cx="396" cy="245" r="25"/> | |
</g> | |
<text x="378" y="295" stroke="none" text-anchor="middle">StrokePaint</text> | |
</g> | |
<text x="240" y="30" font-size="20" text-anchor="middle">Filter input test</text> | |
</g> | |
<g font-family="SVGFreeSansASCII,sans-serif" font-size="32"> | |
<text id="revision" x="10" y="340" stroke="none" fill="black">$Revision: 1.1 $</text> | |
</g> | |
<rect id="test-frame" x="1" y="1" width="478" height="358" fill="none" stroke="#000000"/> | |
<!-- comment out this watermark once the test is approved --> | |
<g id="draft-watermark"> | |
<rect x="1" y="1" width="478" height="20" fill="red" stroke="black" stroke-width="1"/> | |
<text font-family="SVGFreeSansASCII,sans-serif" font-weight="bold" font-size="20" x="240" | |
text-anchor="middle" y="18" stroke-width="0.5" stroke="black" fill="white">DRAFT</text> | |
</g> | |
</svg> |