summaryrefslogtreecommitdiffstats
path: root/layout/reftests/svg/clipPath-advanced-01.svg
diff options
context:
space:
mode:
Diffstat (limited to 'layout/reftests/svg/clipPath-advanced-01.svg')
-rw-r--r--layout/reftests/svg/clipPath-advanced-01.svg84
1 files changed, 84 insertions, 0 deletions
diff --git a/layout/reftests/svg/clipPath-advanced-01.svg b/layout/reftests/svg/clipPath-advanced-01.svg
new file mode 100644
index 0000000000..7690f8bb11
--- /dev/null
+++ b/layout/reftests/svg/clipPath-advanced-01.svg
@@ -0,0 +1,84 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1">
+
+ <title>Testcase for clipPath referencing other clipPaths</title>
+
+ <!-- From https://bugzilla.mozilla.org/show_bug.cgi?id=534612 -->
+
+ <defs>
+ <clipPath id="clip1">
+ <rect id="r1" x="20" y="-40" width="100" height="40" />
+ </clipPath>
+ <clipPath id="clip2">
+ <rect x="20" y="20" width="100" height="100" clip-path="url(#clip1)" />
+ </clipPath>
+ <clipPath id="clip3">
+ <rect x="140" y="-40" width="100" height="40" />
+ </clipPath>
+ <clipPath id="clip4" clip-path="url(#clip3)">
+ <rect x="140" y="20" width="100" height="100" />
+ </clipPath>
+ <clipPath id="clip1">
+ <rect x="20" y="-40" width="100" height="40" />
+ </clipPath>
+ <clipPath id="clip5">
+ <rect id="r5" x="20" y="140" width="100" height="100" />
+ </clipPath>
+ <clipPath id="clip6">
+ <use xlink:href="#r5" clip-path="url(#clip5)" />
+ </clipPath>
+ <clipPath id="clip7">
+ <rect id="r7" x="140" y="140" width="100" height="100" />
+ </clipPath>
+ <clipPath id="clip8">
+ <use xlink:href="#r7" fill="red" clip-path="url(#clip1)"/>
+ </clipPath>
+ <clipPath id="clip9">
+ <rect x="20" y="260" width="100" height="100" />
+ </clipPath>
+ <clipPath id="clip10">
+ <use xlink:href="#r1" fill="red" clip-path="url(#clip9)"/>
+ </clipPath>
+ <clipPath id="clip11">
+ <rect id="r11" x="140" y="260" width="100" height="100" clip-path="url(#clip1)"/>
+ </clipPath>
+ <clipPath id="clip12">
+ <use xlink:href="#r11" fill="red" clip-path="url(#clip11)"/>
+ </clipPath>
+ <clipPath id="clip12" clipPathUnits="objectBoundingBox">
+ <rect width=".5" height=".5"/>
+ </clipPath>
+ <clipPath id="clip13" clip-path="url(#clip12)">
+ <circle cx="100" cy="470" r="150"/>
+ </clipPath>
+ <clipPath id="clip14">
+ <use xlink:href="#clip1"/>
+ </clipPath>
+ <clipPath id="clip15" clip-path="url(#clip14)">
+ <text x="140" y="500" font-size="100px">CLIP</text>
+ </clipPath>
+ </defs>
+
+ <rect width="100%" height="100%" fill="lime" />
+ <!-- clip path where an object is itself clipped -->
+ <rect x="20" y="20" width="100" height="100" fill="red" clip-path="url(#clip2)" />
+
+ <!-- clip path referencing another clip-path -->
+ <rect x="140" y="20" width="100" height="100" fill="red" clip-path="url(#clip4)" />
+
+ <!-- clip paths where object has complex clipping -->
+ <rect x="20" y="140" width="100" height="100" fill="red" />
+ <rect x="20" y="140" width="100" height="100" fill="lime" clip-path="url(#clip6)" />
+
+ <rect x="140" y="140" width="100" height="100" fill="red" clip-path="url(#clip8)" />
+
+ <rect x="20" y="260" width="100" height="100" fill="red" clip-path="url(#clip10)" />
+
+ <rect x="140" y="260" width="100" height="100" fill="red" clip-path="url(#clip12)" />
+
+ <!-- clip paths with different clipPathUnits -->
+ <rect x="20" y="400" height="300" width="300" fill="red" clip-path="url(#clip13)" />
+ <rect x="20" y="400" width="100" height="100" fill="lime" />
+
+ <!-- text clipping -->
+ <rect x="140" y="400" height="300" width="300" fill="red" clip-path="url(#clip15)" />
+</svg>