products/Sources/formale Sprachen/C/Firefox/dom/svg/test/test_getCTM.html
<!
DOCTYPE html >
<
html xmlns=
"http://www.w3.org/1999/xhtml " >
<!--
https : / / bugzilla . mozilla . org / show_bug . cgi ? id = 366697
-->
<
head >
<
title >Test for Bug
366697 </
title >
<
script src=
"/tests/SimpleTest/SimpleTest.js" ></
script >
<
link rel=
"stylesheet" type=
"text/css" href=
"/tests/SimpleTest/test.css" />
<
style >
#padsvg1 { padding-left:
27 px; padding-top:
43 px; }
#transrect1 { transform: scale(
2 ,
3 ); }
</
style >
</
head >
<
body >
<
a target=
"_blank" href=
"https://bugzilla.mozilla.org/show_bug.cgi?id=366697 " >Mozill
a Bug 366697 </a >
<p id="display" ></p >
<div id="content" style ="display: none" ></div >
<iframe id="svg" src="getCTM-helper.svg" ></iframe >
<svg id="padsvg1" width="100" height="100" >
<rect id="transrect1" width="10" height="10" />
</svg>
<pre id="test" >
<script class="testbody" type="application/javascript" >
SimpleTest.waitForExplicitFinish();
function isMatrix(actual, expected, s ) {
is(actual.a , expected.a , s + " a" );
is(actual.b , expected.b , s + " b" );
is(actual.c, expected.c, s + " c" );
is(actual.d, expected.d, s + " d" );
is(actual.e, expected.e, s + " e" );
is(actual.f, expected.f, s + " f" );
}
function runTest() {
let doc = $("svg" ).contentWindow.document;
/* Minimal */
let buggy = doc.getElementById("buggy" );
is(buggy.getCTM().e, 30 , "buggy.getCTM().e" );
is(buggy.getCTM().f, 40 , "buggy.getCTM().f" );
let transrect1 = document.getElementById("transrect1" );
is(transrect1.getCTM().a , 2 , "transrect1.getCTM().a" );
is(transrect1.getCTM().d, 3 , "transrect1.getCTM().d" );
let padsvg1 = document.getElementById("padsvg1" );
let ctm = padsvg1.getScreenCTM();
let rect = padsvg1.getBoundingClientRect();
isfuzzy(ctm.e - rect.x, 27 , 0 .0001 , "padsvg1.getScreenCTM().e" );
is(ctm.f - rect.y, 43 , "padsvg1.getScreenCTM().f" );
let root = doc.documentElement;
const identity = root.createSVGMatrix();
let inner = doc.getElementById("inner" );
let g1 = doc.getElementById("g1" );
let outer = doc.getElementById("outer" );
let outer2 = doc.getElementById("outer2" );
let g2 = doc.getElementById("g2" );
let g3 = doc.getElementById("g3" );
let g4 = doc.getElementById("g4" );
let g5 = doc.getElementById("g5" );
let symbolRect = doc.getElementById("symbolRect" );
let fO = doc.getElementById("fO" );
isMatrix((function() { try { return root.getCTM(); } catch (e) { return e; } })(), identity, "root.getCTM()" );
is((function() { try { return inner.getCTM().e; } catch (e) { return e; } })(), 1 , "inner.getCTM().e" );
is((function() { try { return inner.getCTM().f; } catch (e) { return e; } })(), 2 , "inner.getCTM().f" );
is((function() { try { return g1.getCTM().e; } catch (e) { return e; } })(), 30 , "g1.getCTM().e" );
is((function() { try { return g1.getCTM().f; } catch (e) { return e; } })(), 40 , "g1.getCTM().f" );
isMatrix((function() { try { return outer.getCTM(); } catch (e) { return e; } })(), identity, "outer.getCTM()" );
is((function() { try { return g2.getCTM().e; } catch (e) { return e; } })(), 600 , "g2.getCTM().e" );
is((function() { try { return g2.getCTM().f; } catch (e) { return e; } })(), 700 , "g2.getCTM().f" );
isMatrix((function() { try { return g3.getCTM(); } catch (e) { return e; } })(), identity, "g3.getCTM()" );
is((function() { try { return g4.getCTM().e; } catch (e) { return e; } })(), 1 , "g4.getCTM().e" );
is((function() { try { return g4.getCTM().f; } catch (e) { return e; } })(), 2 , "g4.getCTM().f" );
is((function() { try { return symbolRect.getCTM().e; } catch (e) { return e; } })(), 71 , "symbolRect.getCTM().e" );
is((function() { try { return symbolRect.getCTM().f; } catch (e) { return e; } })(), 82 , "symbolRect.getCTM().f" );
is((function() { try { return fO.getCTM().e; } catch (e) { return e; } })(), 2 , "fO.getCTM().e" );
is((function() { try { return fO.getCTM().f; } catch (e) { return e; } })(), 3 , "fO.getCTM().f" );
let m = root.createSVGMatrix();
m.e = 439 ;
isMatrix((function() { try { return g5.getCTM(); } catch (e) { return e; } })(), m, "g5.getCTM()" );
is((function() { try { return root.getScreenCTM().e; } catch (e) { return e; } })(), 11 , "root.getScreenCTM().e" );
is((function() { try { return root.getScreenCTM().f; } catch (e) { return e; } })(), 22 , "root.getScreenCTM().f" );
is((function() { try { return inner.getScreenCTM().e; } catch (e) { return e; } })(), 15 , "inner.getScreenCTM().e" );
is((function() { try { return inner.getScreenCTM().f; } catch (e) { return e; } })(), 28 , "inner.getScreenCTM().f" );
is((function() { try { return g1.getScreenCTM().e; } catch (e) { return e; } })(), 45 , "g1.getScreenCTM().e" );
is((function() { try { return g1.getScreenCTM().f; } catch (e) { return e; } })(), 68 , "g1.getScreenCTM().f" );
is((function() { try { return outer.getScreenCTM().e; } catch (e) { return e; } })(), 46 , "outer.getScreenCTM().e" );
is((function() { try { return outer.getScreenCTM().f; } catch (e) { return e; } })(), 69 , "outer.getScreenCTM().f" );
is((function() { try { return outer2.getScreenCTM().e; } catch (e) { return e; } })(), -4 , "outer2.getScreenCTM().e" );
is((function() { try { return outer2.getScreenCTM().f; } catch (e) { return e; } })(), 19 , "outer2.getScreenCTM().f" );
is((function() { try { return g2.getScreenCTM().e; } catch (e) { return e; } })(), 646 , "g2.getScreenCTM().e" );
is((function() { try { return g2.getScreenCTM().f; } catch (e) { return e; } })(), 769 , "g2.getScreenCTM().f" );
isMatrix((function() { try { return g3.getScreenCTM(); } catch (e) { return e; } })(), identity, "g3.getScreenCTM()" );
is((function() { try { return symbolRect.getScreenCTM().e; } catch (e) { return e; } })(), 85 , "symbolRect.getScreenCTM().e" );
is((function() { try { return symbolRect.getScreenCTM().f; } catch (e) { return e; } })(), 108 , "symbolRect.getScreenCTM().f" );
is((function() { try { return fO.getScreenCTM().e; } catch (e) { return e; } })(), 16 , "symbolRect.getScreenCTM().e" );
is((function() { try { return fO.getScreenCTM().f; } catch (e) { return e; } })(), 29 , "symbolRect.getScreenCTM().f" );
m.e = 454 ;
m.f = 28 ;
isMatrix((function() { try { return g5.getScreenCTM(); } catch (e) { return e; } })(), m, "g5.getScreenCTM()" );
SimpleTest.finish();
}
window.addEventListener("load" , runTest);
</script >
</pre >
</body >
</html >
Messung V0.5 in Prozent C=94 H=89 G=91
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.28Bemerkung:
(vorverarbeitet am 2026-08-25)
¤
*Bot Zugriff