| <!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> |
| |