Index: LayoutTests/svg/text/non-invertible-matrix-text.svg |
diff --git a/LayoutTests/svg/text/non-invertible-matrix-text.svg b/LayoutTests/svg/text/non-invertible-matrix-text.svg |
new file mode 100644 |
index 0000000000000000000000000000000000000000..d3174ab2ff7c8d651afba3c531a708c65ce8ffa5 |
--- /dev/null |
+++ b/LayoutTests/svg/text/non-invertible-matrix-text.svg |
@@ -0,0 +1,23 @@ |
+<svg width="620" height="450" viewBox="0 0 800 600" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" onload="runTest()"> |
+ <desc> |
+ This test places a text element so that it spans across two render tiles (note: the tile width is ~255px at the time of writing this). |
+ If the text doesn't span across tiles then other screen updates will "cover up" the bug. |
+ |
+ The scale(0,1) transform matrix has a 0 determinant, which means it cannot be inverted. |
+ Any text/shape in svg that has a scale(0) transform means it should be invisible. |
+ </desc> |
+ <script> |
+ <![CDATA[ |
+ function runTest() { |
+ document.getElementById('first').setAttribute("transform", "translate(241.0859375, -21)scale(0, 1)translate(-241.0859375, 21)"); |
+ document.getElementById('second').setAttribute("transform", "translate(241.0859375, -21)scale(0, 1)translate(-241.0859375, 21)"); |
+ } |
+ ]]> |
+ </script> |
+ |
+ <g id="textGroup" transform="translate(70,300)" font-family="sans-serif" font-size="60" text-rendering="geometricPrecision"> |
+ <rect x="254" width="1" height="1"/> |
+ <text id="first" x="197.7978515625" y="0" fill="red">s</text> |
+ <text id="second" x="229.0576171875" y="0" fill="red">!</text> |
+ </g> |
+</svg> |