| <!DOCTYPE html> |
| <!-- DO NOT EDIT! This test has been generated by tools/gentest.py. --> |
| <title>Canvas test: 2d.text.measure.advances</title> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script src="/common/canvas-tests.js"></script> |
| <link rel="stylesheet" href="/common/canvas-tests.css"> |
| <style> |
| @font-face { |
| font-family: CanvasTest; |
| src: url("/fonts/CanvasTest.ttf"); |
| } |
| </style> |
| <body class="show_output"> |
| |
| <h1>2d.text.measure.advances</h1> |
| <p class="desc">Testing width advances</p> |
| |
| |
| <span style="font-family: CanvasTest; position: absolute; visibility: hidden">A</span> |
| <p class="output">Actual output:</p> |
| <canvas id="c" class="output" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas> |
| |
| <ul id="d"></ul> |
| <script> |
| var t = async_test("Testing width advances"); |
| _addTest(function(canvas, ctx) { |
| |
| deferTest(); |
| step_timeout(t.step_func_done(function () { |
| ctx.font = '50px CanvasTest'; |
| ctx.direction = 'ltr'; |
| ctx.align = 'left' |
| // Some platforms may return '-0'. |
| _assertSame(Math.abs(ctx.measureText('Hello').advances[0]), 0, "Math.abs(ctx.measureText('Hello').advances[\""+(0)+"\"])", "0"); |
| // Different platforms may render text slightly different. |
| _assert(ctx.measureText('Hello').advances[1] >= 36, "ctx.measureText('Hello').advances[\""+(1)+"\"] >= 36"); |
| _assert(ctx.measureText('Hello').advances[2] >= 58, "ctx.measureText('Hello').advances[\""+(2)+"\"] >= 58"); |
| _assert(ctx.measureText('Hello').advances[3] >= 70, "ctx.measureText('Hello').advances[\""+(3)+"\"] >= 70"); |
| _assert(ctx.measureText('Hello').advances[4] >= 80, "ctx.measureText('Hello').advances[\""+(4)+"\"] >= 80"); |
| |
| var tm = ctx.measureText('Hello'); |
| _assertSame(ctx.measureText('Hello').advances[0], tm.advances[0], "ctx.measureText('Hello').advances[\""+(0)+"\"]", "tm.advances[\""+(0)+"\"]"); |
| _assertSame(ctx.measureText('Hello').advances[1], tm.advances[1], "ctx.measureText('Hello').advances[\""+(1)+"\"]", "tm.advances[\""+(1)+"\"]"); |
| _assertSame(ctx.measureText('Hello').advances[2], tm.advances[2], "ctx.measureText('Hello').advances[\""+(2)+"\"]", "tm.advances[\""+(2)+"\"]"); |
| _assertSame(ctx.measureText('Hello').advances[3], tm.advances[3], "ctx.measureText('Hello').advances[\""+(3)+"\"]", "tm.advances[\""+(3)+"\"]"); |
| _assertSame(ctx.measureText('Hello').advances[4], tm.advances[4], "ctx.measureText('Hello').advances[\""+(4)+"\"]", "tm.advances[\""+(4)+"\"]"); |
| }), 500); |
| |
| |
| }); |
| </script> |
| |