градиентная заливка и размер холста? - PullRequest
0 голосов
/ 13 февраля 2012

код ниже отображает прямоугольник с радиальным градиентом. Если я откомментирую две строки, которые устанавливают ширину и высоту холста, он отображает черный прямоугольник вместо градиента, заполненного. Зачем? как установить ширину и высоту и при этом иметь возможность показывать градиент?

<!DOCTYPE HTML> <html lang="en"> <head> <meta charset="utf-8" /> <script type="text/javascript"> function on_load(e) { var container = document.getElementById("container"); var canvas = container.appendChild(document.createElement("canvas")); var context = canvas.getContext("2d"); var gradient = context.createRadialGradient(30, 30, 10, 30, 30, 30);<br> gradient.addColorStop(0, "rgba(0,0,0,1)"); gradient.addColorStop(1, "rgba(0,0,0,0)");<br> context.fillStyle = gradient;<br> //canvas.width = 150; //canvas.height = 150;<br> context.fillRect(0, 0, 60, 60); } </script> </head> <body onload="on_load()"><div id="container"></div></body> </html>

Ответы [ 2 ]

1 голос
/ 13 февраля 2012

Вы должны изменить размер холста перед использованием его контекста

0 голосов
/ 13 февраля 2012

Я думаю, причина в том, что установка ширины или высоты очищает холст и его настройки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...