Mypal/layout/mathml/tests/test_opentype-limits.html

173 lines
5.7 KiB
HTML

<!doctype html>
<html>
<head>
<title>Open Type MATH - limits</title>
<script type="application/javascript"
src="/tests/SimpleTest/SimpleTest.js"></script>
<script type="application/javascript"
src="/tests/SimpleTest/EventUtils.js"></script>
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
<meta charset="utf-8"/>
<style type="text/css">
math {
font-size: 10px;
}
@font-face {
font-family: limits-1;
src: url(/tests/fonts/math/limits-1.otf);
}
@font-face {
font-family: limits-2;
src: url(/tests/fonts/math/limits-2.otf);
}
@font-face {
font-family: limits-3;
src: url(/tests/fonts/math/limits-3.otf);
}
@font-face {
font-family: limits-4;
src: url(/tests/fonts/math/limits-4.otf);
}
@font-face {
font-family: limits-5;
src: url(/tests/fonts/math/limits-5.otf);
}
</style>
<script type="text/javascript">
SimpleTest.waitForExplicitFinish();
var epsilon = 5;
function almostEqual(x, y) { return Math.abs(x - y) < epsilon; }
function getBox(aId) {
return document.getElementById(aId).getBoundingClientRect();
}
function doTest() {
ok(almostEqual(getBox("base1").top - getBox("over1").bottom, 7 * 10) &&
almostEqual(getBox("base2").top - getBox("over2").bottom, 7 * 10),
"Bad UpperLimitGapMin");
ok(almostEqual(getBox("under3").top - getBox("base3").bottom, 5 * 10) &&
almostEqual(getBox("under4").top - getBox("base4").bottom, 5 * 10),
"Bad LowerLimitGapMin");
ok(almostEqual(getBox("ref3").top - getBox("over5").bottom, 9 * 10) &&
almostEqual(getBox("ref3").top - getBox("over6").bottom, 9 * 10),
"UpperLimitBaselineRiseMin");
ok(almostEqual(getBox("under7").top - getBox("ref4").bottom, 2 * 10) &&
almostEqual(getBox("under8").top - getBox("ref4").bottom, 2 * 10),
"LowerLimitBaselineDropMin");
ok(almostEqual(getBox("base9").top - getBox("over9").bottom,
(6 - 2) * 10) &&
almostEqual(getBox("base10").top - getBox("over10").bottom,
(6 - 2) * 10),
"Bad AccentBaseHeight");
SimpleTest.finish();
}
</script>
</head>
<body onload="doTest()">
<a target="_blank"
href="https://bugzilla.mozilla.org/show_bug.cgi?id=961365">
Mozilla Bug 961365
</a>
<p id="display"></p>
<p>
<math style="font-family: limits-1;" displaystyle="true">
<mover>
<mo id="base1"></mo>
<mspace id="over1" height="1em" width="1em" mathbackground="red"/>
</mover>
</math>
<math style="font-family: limits-1;" displaystyle="true">
<munderover>
<mo id="base2"></mo>
<mspace id="under2" height="1em" width="1em" mathbackground="red"/>
<mspace id="over2" height="1em" width="1em" mathbackground="red"/>
</munderover>
</math>
</p>
<p>
<math style="font-family: limits-2;" displaystyle="true">
<munder>
<mo id="base3"></mo>
<mspace id="under3" height="1em" width="1em" mathbackground="red"/>
</munder>
</math>
<math style="font-family: limits-2;" displaystyle="true">
<munderover>
<mo id="base4"></mo>
<mspace id="under4" height="1em" width="1em" mathbackground="red"/>
<mspace id="over4" height="1em" width="1em" mathbackground="red"/>
</munderover>
</math>
</p>
<p>
<math style="font-family: limits-3;" displaystyle="true">
<mspace id="ref3" height="1em" width="1em" mathbackground="green"/>
</math>
<math style="font-family: limits-3;" displaystyle="true">
<mover>
<mo id="base5"></mo>
<mspace id="over5" height="1em" width="1em" mathbackground="red"/>
</mover>
</math>
<math style="font-family: limits-3;" displaystyle="true">
<munderover>
<mo id="base6"></mo>
<mspace id="under6" height="1em" width="1em" mathbackground="red"/>
<mspace id="over6" height="1em" width="1em" mathbackground="red"/>
</munderover>
</math>
</p>
<p>
<math style="font-family: limits-4;" displaystyle="true">
<mspace id="ref4" height="1em" width="1em" mathbackground="green"/>
</math>
<math style="font-family: limits-4;" displaystyle="true">
<munder>
<mo id="base7"></mo>
<mspace id="under7" height="1em" width="1em" mathbackground="red"/>
</munder>
</math>
<math style="font-family: limits-4;" displaystyle="true">
<munderover>
<mo id="base8"></mo>
<mspace id="under8" height="1em" width="1em" mathbackground="red"/>
<mspace id="over8" height="1em" width="1em" mathbackground="red"/>
</munderover>
</math>
</p>
<p>
<math style="font-family: limits-5;" displaystyle="true">
<mspace id="ref5" height="1em" width="1em" mathbackground="green"/>
</math>
<math style="font-family: limits-5;" displaystyle="true">
<mover>
<mspace id="base9" height="2em" width="2em" mathbackground="blue"/>
<mo id="over9" stretchy="false">~</mo>
</mover>
</math>
<math style="font-family: limits-5;" displaystyle="true">
<munderover>
<mspace id="base10" height="2em" width="2em" mathbackground="blue"/>
<mspace id="under10" height="1em" width="1em" mathbackground="red"/>
<mo id="over10" stretchy="false">~</mo>
</munderover>
</math>
</p>
</body>
</html>