Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(265)

Side by Side Diff: third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-2d-gradients-in-worker.html

Issue 1919363002: Add createGradient and createPattern to OffscreenCanvas2D in worker (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: ScriptState Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <html> 2 <html>
3 <body> 3 <body>
4 <canvas id='output' width='200' height='400'></canvas> 4 <canvas id='output' width='200' height='200'></canvas>
5 <script id='myWorker' type='text/worker'> 5 <script id='myWorker' type='text/worker'>
6 self.onmessage = function(e) { 6 self.onmessage = function(e) {
7 var aCanvas = new OffscreenCanvas(200, 400); 7 var aCanvas = new OffscreenCanvas(200, 200);
8 var ctx = aCanvas.getContext('2d'); 8 var ctx = aCanvas.getContext('2d');
9 9
10 var radialGrad = ctx.createRadialGradient(100, 100, 100, 100, 100, 0);
11 radialGrad.addColorStop(0, "#fff");
12 radialGrad.addColorStop(1, "#0f0");
13
14 ctx.fillStyle = radialGrad;
15 ctx.fillRect(0, 0, 200, 200);
16
17 var linearGrad = ctx.createLinearGradient(0, 0, 200, 200);
18 linearGrad.addColorStop(0, "#f00");
19 linearGrad.addColorStop(1, "#ff0");
20
21 ctx.strokeStyle = linearGrad;
22 ctx.lineWidth = "3";
10 ctx.beginPath(); 23 ctx.beginPath();
11 ctx.lineWidth = '10'; 24 ctx.moveTo(0, 0);
12 ctx.strokeStyle = 'green'; 25 ctx.lineTo(200, 200);
13 ctx.lineJoin = 'round';
14 ctx.moveTo(15, 15);
15 ctx.lineTo(135, 15);
16 ctx.lineTo(70, 170);
17 ctx.closePath();
18 ctx.stroke(); 26 ctx.stroke();
19 27
20 var path1 = new Path2D();
21 path1.moveTo(150, 25);
22 path1.bezierCurveTo(10, 150, 10, 300, 100, 200);
23 ctx.strokeStyle = 'purple';
24 ctx.setLineDash([ 10, 5 ]);
25 ctx.stroke(path1);
26
27 ctx.fillStyle = 'red';
28 ctx.beginPath()
29 ctx.arc(75, 325, 50, 0, Math.PI * 2, true);
30 ctx.arc(75, 325, 20, 0, Math.PI * 2, true);
31 ctx.fill("evenodd");
32
33 var image = aCanvas.transferToImageBitmap(); 28 var image = aCanvas.transferToImageBitmap();
34 self.postMessage(image, [image]); 29 self.postMessage(image, [image]);
35 }; 30 };
36 </script> 31 </script>
37 <script> 32 <script>
38 if (window.testRunner) { 33 if (window.testRunner) {
39 testRunner.waitUntilDone(); 34 testRunner.waitUntilDone();
40 } 35 }
36
41 var blob = new Blob([document.getElementById('myWorker').textContent]); 37 var blob = new Blob([document.getElementById('myWorker').textContent]);
42 var worker = new Worker(URL.createObjectURL(blob)); 38 var worker = new Worker(URL.createObjectURL(blob));
43 worker.addEventListener('message', msg => { 39 worker.addEventListener('message', msg => {
44 var outputCtx = document.getElementById('output').getContext('bitmaprenderer') ; 40 var outputCtx = document.getElementById('output').getContext('bitmaprenderer') ;
45 outputCtx.transferFromImageBitmap(msg.data); 41 outputCtx.transferFromImageBitmap(msg.data);
46 if (window.testRunner) { 42 if (window.testRunner) {
47 testRunner.notifyDone(); 43 testRunner.notifyDone();
48 } 44 }
49 }); 45 });
50 worker.postMessage(""); 46 worker.postMessage("");
47
51 </script> 48 </script>
52 </body> 49 </body>
53 </html> 50
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698