blob: e9988c34cf37cf801c79183a04de0f197bd438c0 [file] [log] [blame]
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" >
<title>Font Width Variant Text Combine</title>
<style>
@font-face {
font-family: LiberationSansWidthVariants;
src: url(../../third_party/LiberationSansWidthVariants/liberation_sans_width_variants.ttf) format("truetype");
}
#test {
font-family: "LiberationSansWidthVariants";
font-size: 24px;
text-rendering: geometricPrecision;
line-height: 100%;
margin: 0;
padding: 0px;
}
.hwid {
-webkit-font-feature-settings: 'hwid';
}
.twid {
-webkit-font-feature-settings: 'twid';
}
.qwid {
-webkit-font-feature-settings: 'qwid';
}
</style>
<script src="../../resources/testharness.js"></script>
<script src="../../resources/testharnessreport.js"></script>
<script>
setup({ explicit_done: true });
function testWidthVariant() {
var elements = document.querySelectorAll("#test > div");
for (var i = 0; i < elements.length; ++i) {
var div = elements[i];
var normal = div.firstChild;
var text = normal.innerText;
test(function () {
var hwid = addVariant(normal, "hwid");
var twid = addVariant(normal, "twid");
var qwid = addVariant(normal, "qwid");
var width = normal.getBoundingClientRect().width;
var widthHwid = hwid.getBoundingClientRect().width;
var widthTwid = twid.getBoundingClientRect().width;
var widthQwid = qwid.getBoundingClientRect().width;
assert_less_than(widthHwid, width, "hwid");
assert_less_than(widthTwid, widthHwid, "twid");
assert_less_than(widthQwid, widthTwid, "qwid");
}, text);
}
done();
}
function addVariant(base, variantClassName) {
var variant = base.cloneNode(true);
variant.className = variantClassName;
base.parentElement.appendChild(document.createTextNode(" "));
base.parentElement.appendChild(variant);
return variant;
}
</script>
</head>
<body onload="testWidthVariant();">
<div id="test">
<div><span>1</span></div>
<div><span>9</span></div>
<div><span>22</span></div>
<div><span>99</span></div>
<div><span>123456</span></div>
<div><span>222222</span></div>
<div><span>999999</span></div>
</div>
<div id="log"></div>
</body>
</html>