зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1675713 [wpt PR 26368] - [Canvas new API] Add textRendering to Canvas new API, a=testonly
Automatic update from web-platform-tests [Canvas new API] Add textRendering to Canvas new API Add new attribute textRendering to canvas context 2d. Developers can now choose between auto, optimizeSpeed, optimizeLegibility and geometricPrecision for textRendering. Bug: 1144620 Change-Id: I2420967849b1080b667cf6803a8edecc06327297 -- wpt-commits: 68512623f6b74070955634b7c256b9debc743250 wpt-pr: 26368
This commit is contained in:
Родитель
256215840c
Коммит
ccbebf5f85
|
@ -0,0 +1,57 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
|
||||||
|
<title>Canvas test: 2d.text.drawing.style.textRendering.settings</title>
|
||||||
|
<script src="/resources/testharness.js"></script>
|
||||||
|
<script src="/resources/testharnessreport.js"></script>
|
||||||
|
<script src="/html/canvas/resources/canvas-tests.js"></script>
|
||||||
|
<link rel="stylesheet" href="/html/canvas/resources/canvas-tests.css">
|
||||||
|
<body class="show_output">
|
||||||
|
|
||||||
|
<h1>2d.text.drawing.style.textRendering.settings</h1>
|
||||||
|
<p class="desc">Testing basic functionalities of textRendering in Canvas</p>
|
||||||
|
|
||||||
|
|
||||||
|
<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 basic functionalities of textRendering in Canvas");
|
||||||
|
_addTest(function(canvas, ctx) {
|
||||||
|
|
||||||
|
// Setting textRendering with lower cases
|
||||||
|
_assertSame(ctx.textRendering, "Auto", "ctx.textRendering", "\"Auto\"");
|
||||||
|
|
||||||
|
ctx.textRendering = "auto";
|
||||||
|
_assertSame(ctx.textRendering, "Auto", "ctx.textRendering", "\"Auto\"");
|
||||||
|
|
||||||
|
ctx.textRendering = "optimizespeed";
|
||||||
|
_assertSame(ctx.textRendering, "OptimizeSpeed", "ctx.textRendering", "\"OptimizeSpeed\"");
|
||||||
|
|
||||||
|
ctx.textRendering = "optimizelegibility";
|
||||||
|
_assertSame(ctx.textRendering, "OptimizeLegibility", "ctx.textRendering", "\"OptimizeLegibility\"");
|
||||||
|
|
||||||
|
ctx.textRendering = "geometricprecision";
|
||||||
|
_assertSame(ctx.textRendering, "GeometricPrecision", "ctx.textRendering", "\"GeometricPrecision\"");
|
||||||
|
|
||||||
|
// Setting textRendering with lower cases and upper cases word.
|
||||||
|
ctx.textRendering = "aUto";
|
||||||
|
_assertSame(ctx.textRendering, "Auto", "ctx.textRendering", "\"Auto\"");
|
||||||
|
|
||||||
|
ctx.textRendering = "OPtimizeSpeed";
|
||||||
|
_assertSame(ctx.textRendering, "OptimizeSpeed", "ctx.textRendering", "\"OptimizeSpeed\"");
|
||||||
|
|
||||||
|
ctx.textRendering = "OPtimizELEgibility";
|
||||||
|
_assertSame(ctx.textRendering, "OptimizeLegibility", "ctx.textRendering", "\"OptimizeLegibility\"");
|
||||||
|
|
||||||
|
ctx.textRendering = "GeometricPrecision";
|
||||||
|
_assertSame(ctx.textRendering, "GeometricPrecision", "ctx.textRendering", "\"GeometricPrecision\"");
|
||||||
|
|
||||||
|
// Setting textRendering with non-existing font variant.
|
||||||
|
ctx.textRendering = "abcd";
|
||||||
|
_assertSame(ctx.textRendering, "GeometricPrecision", "ctx.textRendering", "\"GeometricPrecision\"");
|
||||||
|
|
||||||
|
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
|
@ -0,0 +1,57 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
|
||||||
|
<title>OffscreenCanvas test: 2d.text.drawing.style.textRendering.settings</title>
|
||||||
|
<script src="/resources/testharness.js"></script>
|
||||||
|
<script src="/resources/testharnessreport.js"></script>
|
||||||
|
<script src="/html/canvas/resources/canvas-tests.js"></script>
|
||||||
|
|
||||||
|
<h1>2d.text.drawing.style.textRendering.settings</h1>
|
||||||
|
<p class="desc">Testing basic functionalities of textRendering in Canvas</p>
|
||||||
|
|
||||||
|
|
||||||
|
<script>
|
||||||
|
var t = async_test("Testing basic functionalities of textRendering in Canvas");
|
||||||
|
var t_pass = t.done.bind(t);
|
||||||
|
var t_fail = t.step_func(function(reason) {
|
||||||
|
throw reason;
|
||||||
|
});
|
||||||
|
t.step(function() {
|
||||||
|
|
||||||
|
var offscreenCanvas = new OffscreenCanvas(100, 50);
|
||||||
|
var ctx = offscreenCanvas.getContext('2d');
|
||||||
|
|
||||||
|
// Setting textRendering with lower cases
|
||||||
|
_assertSame(ctx.textRendering, "Auto", "ctx.textRendering", "\"Auto\"");
|
||||||
|
|
||||||
|
ctx.textRendering = "auto";
|
||||||
|
_assertSame(ctx.textRendering, "Auto", "ctx.textRendering", "\"Auto\"");
|
||||||
|
|
||||||
|
ctx.textRendering = "optimizespeed";
|
||||||
|
_assertSame(ctx.textRendering, "OptimizeSpeed", "ctx.textRendering", "\"OptimizeSpeed\"");
|
||||||
|
|
||||||
|
ctx.textRendering = "optimizelegibility";
|
||||||
|
_assertSame(ctx.textRendering, "OptimizeLegibility", "ctx.textRendering", "\"OptimizeLegibility\"");
|
||||||
|
|
||||||
|
ctx.textRendering = "geometricprecision";
|
||||||
|
_assertSame(ctx.textRendering, "GeometricPrecision", "ctx.textRendering", "\"GeometricPrecision\"");
|
||||||
|
|
||||||
|
// Setting textRendering with lower cases and upper cases word.
|
||||||
|
ctx.textRendering = "aUto";
|
||||||
|
_assertSame(ctx.textRendering, "Auto", "ctx.textRendering", "\"Auto\"");
|
||||||
|
|
||||||
|
ctx.textRendering = "OPtimizeSpeed";
|
||||||
|
_assertSame(ctx.textRendering, "OptimizeSpeed", "ctx.textRendering", "\"OptimizeSpeed\"");
|
||||||
|
|
||||||
|
ctx.textRendering = "OPtimizELEgibility";
|
||||||
|
_assertSame(ctx.textRendering, "OptimizeLegibility", "ctx.textRendering", "\"OptimizeLegibility\"");
|
||||||
|
|
||||||
|
ctx.textRendering = "GeometricPrecision";
|
||||||
|
_assertSame(ctx.textRendering, "GeometricPrecision", "ctx.textRendering", "\"GeometricPrecision\"");
|
||||||
|
|
||||||
|
// Setting textRendering with non-existing font variant.
|
||||||
|
ctx.textRendering = "abcd";
|
||||||
|
_assertSame(ctx.textRendering, "GeometricPrecision", "ctx.textRendering", "\"GeometricPrecision\"");
|
||||||
|
t.done();
|
||||||
|
|
||||||
|
});
|
||||||
|
</script>
|
|
@ -0,0 +1,53 @@
|
||||||
|
// DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py.
|
||||||
|
// OffscreenCanvas test in a worker:2d.text.drawing.style.textRendering.settings
|
||||||
|
// Description:Testing basic functionalities of textRendering in Canvas
|
||||||
|
// Note:
|
||||||
|
|
||||||
|
importScripts("/resources/testharness.js");
|
||||||
|
importScripts("/html/canvas/resources/canvas-tests.js");
|
||||||
|
|
||||||
|
var t = async_test("Testing basic functionalities of textRendering in Canvas");
|
||||||
|
var t_pass = t.done.bind(t);
|
||||||
|
var t_fail = t.step_func(function(reason) {
|
||||||
|
throw reason;
|
||||||
|
});
|
||||||
|
t.step(function() {
|
||||||
|
|
||||||
|
var offscreenCanvas = new OffscreenCanvas(100, 50);
|
||||||
|
var ctx = offscreenCanvas.getContext('2d');
|
||||||
|
|
||||||
|
// Setting textRendering with lower cases
|
||||||
|
_assertSame(ctx.textRendering, "Auto", "ctx.textRendering", "\"Auto\"");
|
||||||
|
|
||||||
|
ctx.textRendering = "auto";
|
||||||
|
_assertSame(ctx.textRendering, "Auto", "ctx.textRendering", "\"Auto\"");
|
||||||
|
|
||||||
|
ctx.textRendering = "optimizespeed";
|
||||||
|
_assertSame(ctx.textRendering, "OptimizeSpeed", "ctx.textRendering", "\"OptimizeSpeed\"");
|
||||||
|
|
||||||
|
ctx.textRendering = "optimizelegibility";
|
||||||
|
_assertSame(ctx.textRendering, "OptimizeLegibility", "ctx.textRendering", "\"OptimizeLegibility\"");
|
||||||
|
|
||||||
|
ctx.textRendering = "geometricprecision";
|
||||||
|
_assertSame(ctx.textRendering, "GeometricPrecision", "ctx.textRendering", "\"GeometricPrecision\"");
|
||||||
|
|
||||||
|
// Setting textRendering with lower cases and upper cases word.
|
||||||
|
ctx.textRendering = "aUto";
|
||||||
|
_assertSame(ctx.textRendering, "Auto", "ctx.textRendering", "\"Auto\"");
|
||||||
|
|
||||||
|
ctx.textRendering = "OPtimizeSpeed";
|
||||||
|
_assertSame(ctx.textRendering, "OptimizeSpeed", "ctx.textRendering", "\"OptimizeSpeed\"");
|
||||||
|
|
||||||
|
ctx.textRendering = "OPtimizELEgibility";
|
||||||
|
_assertSame(ctx.textRendering, "OptimizeLegibility", "ctx.textRendering", "\"OptimizeLegibility\"");
|
||||||
|
|
||||||
|
ctx.textRendering = "GeometricPrecision";
|
||||||
|
_assertSame(ctx.textRendering, "GeometricPrecision", "ctx.textRendering", "\"GeometricPrecision\"");
|
||||||
|
|
||||||
|
// Setting textRendering with non-existing font variant.
|
||||||
|
ctx.textRendering = "abcd";
|
||||||
|
_assertSame(ctx.textRendering, "GeometricPrecision", "ctx.textRendering", "\"GeometricPrecision\"");
|
||||||
|
t.done();
|
||||||
|
|
||||||
|
});
|
||||||
|
done();
|
|
@ -897,4 +897,41 @@
|
||||||
ctx.fontVariantCaps = "abcd";
|
ctx.fontVariantCaps = "abcd";
|
||||||
@assert ctx.fontVariantCaps === "TitlingCaps";
|
@assert ctx.fontVariantCaps === "TitlingCaps";
|
||||||
|
|
||||||
|
- name: 2d.text.drawing.style.textRendering.settings
|
||||||
|
desc: Testing basic functionalities of textRendering in Canvas
|
||||||
|
testing:
|
||||||
|
- 2d.text.drawing.style.textRendering
|
||||||
|
code: |
|
||||||
|
// Setting textRendering with lower cases
|
||||||
|
@assert ctx.textRendering === "Auto";
|
||||||
|
|
||||||
|
ctx.textRendering = "auto";
|
||||||
|
@assert ctx.textRendering === "Auto";
|
||||||
|
|
||||||
|
ctx.textRendering = "optimizespeed";
|
||||||
|
@assert ctx.textRendering === "OptimizeSpeed";
|
||||||
|
|
||||||
|
ctx.textRendering = "optimizelegibility";
|
||||||
|
@assert ctx.textRendering === "OptimizeLegibility";
|
||||||
|
|
||||||
|
ctx.textRendering = "geometricprecision";
|
||||||
|
@assert ctx.textRendering === "GeometricPrecision";
|
||||||
|
|
||||||
|
// Setting textRendering with lower cases and upper cases word.
|
||||||
|
ctx.textRendering = "aUto";
|
||||||
|
@assert ctx.textRendering === "Auto";
|
||||||
|
|
||||||
|
ctx.textRendering = "OPtimizeSpeed";
|
||||||
|
@assert ctx.textRendering === "OptimizeSpeed";
|
||||||
|
|
||||||
|
ctx.textRendering = "OPtimizELEgibility";
|
||||||
|
@assert ctx.textRendering === "OptimizeLegibility";
|
||||||
|
|
||||||
|
ctx.textRendering = "GeometricPrecision";
|
||||||
|
@assert ctx.textRendering === "GeometricPrecision";
|
||||||
|
|
||||||
|
// Setting textRendering with non-existing font variant.
|
||||||
|
ctx.textRendering = "abcd";
|
||||||
|
@assert ctx.textRendering === "GeometricPrecision";
|
||||||
|
|
||||||
# TODO: shadows, alpha, composite, clip
|
# TODO: shadows, alpha, composite, clip
|
|
@ -1399,4 +1399,42 @@
|
||||||
@assert ctx.fontVariantCaps === "TitlingCaps";
|
@assert ctx.fontVariantCaps === "TitlingCaps";
|
||||||
t.done();
|
t.done();
|
||||||
|
|
||||||
|
- name: 2d.text.drawing.style.textRendering.settings
|
||||||
|
desc: Testing basic functionalities of textRendering in Canvas
|
||||||
|
testing:
|
||||||
|
- 2d.text.drawing.style.textRendering
|
||||||
|
code: |
|
||||||
|
// Setting textRendering with lower cases
|
||||||
|
@assert ctx.textRendering === "Auto";
|
||||||
|
|
||||||
|
ctx.textRendering = "auto";
|
||||||
|
@assert ctx.textRendering === "Auto";
|
||||||
|
|
||||||
|
ctx.textRendering = "optimizespeed";
|
||||||
|
@assert ctx.textRendering === "OptimizeSpeed";
|
||||||
|
|
||||||
|
ctx.textRendering = "optimizelegibility";
|
||||||
|
@assert ctx.textRendering === "OptimizeLegibility";
|
||||||
|
|
||||||
|
ctx.textRendering = "geometricprecision";
|
||||||
|
@assert ctx.textRendering === "GeometricPrecision";
|
||||||
|
|
||||||
|
// Setting textRendering with lower cases and upper cases word.
|
||||||
|
ctx.textRendering = "aUto";
|
||||||
|
@assert ctx.textRendering === "Auto";
|
||||||
|
|
||||||
|
ctx.textRendering = "OPtimizeSpeed";
|
||||||
|
@assert ctx.textRendering === "OptimizeSpeed";
|
||||||
|
|
||||||
|
ctx.textRendering = "OPtimizELEgibility";
|
||||||
|
@assert ctx.textRendering === "OptimizeLegibility";
|
||||||
|
|
||||||
|
ctx.textRendering = "GeometricPrecision";
|
||||||
|
@assert ctx.textRendering === "GeometricPrecision";
|
||||||
|
|
||||||
|
// Setting textRendering with non-existing font variant.
|
||||||
|
ctx.textRendering = "abcd";
|
||||||
|
@assert ctx.textRendering === "GeometricPrecision";
|
||||||
|
t.done();
|
||||||
|
|
||||||
# TODO: shadows, alpha, composite, clip
|
# TODO: shadows, alpha, composite, clip
|
Загрузка…
Ссылка в новой задаче