summaryrefslogtreecommitdiffstats
path: root/layout/reftests/svg/filters/svg-filter-chains/default-subregion.svg
blob: b175fe0a317a2be099c1c6498edc3885d06c2e4c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<!--
     Any copyright is dedicated to the Public Domain.
     http://creativecommons.org/publicdomain/zero/1.0/
-->
<svg id="svg-root"
  xmlns="http://www.w3.org/2000/svg"
  xmlns:xlink="http://www.w3.org/1999/xlink">

  <g id="testmeta">
    <title>SVG Filter Chains: Default Filter Primitive Subregion</title>
    <link rel="copyright"
          href="http://www.w3.org/Graphics/SVG/Test/Copyright"/>
    <link rel="license"
          href="http://www.w3.org/Consortium/Legal/2008/03-bsd-license.html"/>
    <link rel="author"
          title="Max Vujovic"
          href="mailto:mvujovic@adobe.com"/>
    <link rel="help"
          href="http://dev.w3.org/fxtf/filters/#FilterPrimitiveSubRegion"/>
    <link rel="match"
          href="default-subregion-ref.svg" />
    <metadata class="flags">namespace svg</metadata>
    <desc class="assert">
      In an SVG filter chain, this test verifies that the default filter
      primitive subregion is equal to the filter region. If the test passes,
      you should see a blurred green square.
    </desc>
  </g>

  <g id="test-body-content">
    <filter id="f1" x="100" y="100" width="100" height="100" filterUnits="userSpaceOnUse">
      <!-- Fill a 100x100 square with green. -->
      <feFlood flood-color="green"/>
    </filter>
    <filter id="f2" x="50" y="50" width="200" height="200" filterUnits="userSpaceOnUse">
      <!--
        This feGaussianBlur primitive blurs the 100x100 green square from the
        previous filter. It does not explicitly define a filter primitive
        subregion, so its subregion should equal the filter region. The filter
        region has plenty of space for the blur outsets, so the blur should not
        appear clipped. If the blur incorrectly uses a primitive subregion or
        filter region from a previous filter, the blur may appear clipped.
      -->
      <feGaussianBlur stdDeviation="10"/>
    </filter>
    <rect x="100" y="100" width="100" height="100" filter="url(#f1) url(#f2)" fill="red"/>
  </g>
</svg>