| Index: third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-2d-imageSmoothing-in-worker.html
|
| diff --git a/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-2d-imageSmoothing-in-worker.html b/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-2d-imageSmoothing-in-worker.html
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..2c20cf2f5bdc2f4e674e346d29c45f9b82150964
|
| --- /dev/null
|
| +++ b/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-2d-imageSmoothing-in-worker.html
|
| @@ -0,0 +1,52 @@
|
| +<!DOCTYPE html>
|
| +<p>Below this text, there should be a checker pattern that is drawn pixelated, and with low, medium and high filtering quality.</p>
|
| +<canvas id="canvasOutput" width="250" height="50"></canvas>
|
| +<script id='myWorker' type='text/worker'>
|
| +self.onmessage = function(msg) {
|
| + var osCanvas = new OffscreenCanvas(250, 50);
|
| + var ctx = osCanvas.getContext('2d');
|
| + ctx.scale(10, 10)
|
| + ctx.imageSmoothingEnabled = false;
|
| + ctx.drawImage(msg.data, 0, 0);
|
| + ctx.imageSmoothingEnabled = true;
|
| + ctx.imageSmoothingQuality = 'low';
|
| + ctx.drawImage(msg.data, 6, 0);
|
| + ctx.imageSmoothingQuality = 'medium';
|
| + ctx.drawImage(msg.data, 12, 0);
|
| + ctx.imageSmoothingQuality = 'high';
|
| + ctx.drawImage(msg.data, 18, 0);
|
| + var outImage = osCanvas.transferToImageBitmap();
|
| + self.postMessage(outImage, [outImage]);
|
| +}
|
| +</script>
|
| +
|
| +<script>
|
| +if (window.testRunner) {
|
| + testRunner.waitUntilDone();
|
| +}
|
| +
|
| +var checkerCanvas = document.createElement('canvas');
|
| +checkerCanvas.width = checkerCanvas.height = 5;
|
| +var checkerContext = checkerCanvas.getContext('2d');
|
| +var checkerData = checkerContext.createImageData(5,5);
|
| +for (pixel = 0; pixel < 25; pixel++) {
|
| + var color = (pixel % 2) * 255;
|
| + checkerData.data[pixel * 4 + 0] = color;
|
| + checkerData.data[pixel * 4 + 1] = color;
|
| + checkerData.data[pixel * 4 + 2] = color;
|
| + checkerData.data[pixel * 4 + 3] = 255;
|
| +}
|
| +checkerContext.putImageData(checkerData, 0, 0);
|
| +createImageBitmap(checkerCanvas).then(image => {
|
| + var blob = new Blob([document.getElementById('myWorker').textContent]);
|
| + var worker = new Worker(URL.createObjectURL(blob));
|
| + worker.addEventListener('message', msg => {
|
| + var outputCtx = document.getElementById('canvasOutput').getContext('bitmaprenderer');
|
| + outputCtx.transferFromImageBitmap(msg.data);
|
| + if (window.testRunner) {
|
| + testRunner.notifyDone();
|
| + }
|
| + });
|
| + worker.postMessage(image, [image]);
|
| +});
|
| +</script>
|
|
|