Canvas, ошибка создания паттерна в Chrome 18 - PullRequest
0 голосов
/ 02 апреля 2012

Я использую Mac и обновил Chrome до 18.0.1025.142. Теперь у меня странная проблема. В большинстве случаев (не всегда это странно) метод context.createPattern () не работает и вместо заливки растрового изображения заполняется черным цветом.

Ответы [ 2 ]

0 голосов
/ 25 февраля 2015

Это распространенная проблема в Google Chrome и Opera. В этом случае вы должны создать функцию, которая будет содержать весь скрипт canvas, а также создать шаблон изображения в этой функции.Тогда вам нужно вызвать функцию в событии window.onload или любом другом событии, тогда я думаю, что image creatPattern () работает хорошо.Просто следуйте примеру и попытайтесь понять ....

<!DOCTYPE html>
<html>
<body>

<p>Image to use:</p>
<img src="img_lamp.jpg" id="lamp" width="32" height="32">
<p>Canvas:</p>



<canvas id="myCanvas" width="300" height="150" style="border:1px solid   #d3d3d3;">
Your browser does not support the HTML5 canvas tag.</canvas>

<script>

window.onload = draw;

function draw() {
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
ctx.clearRect(0, 0, c.width, c.height); 
var img = document.getElementById("lamp")
var pat = ctx.createPattern(img, "repeat");
ctx.rect(0, 0, 150, 100);
ctx.fillStyle = pat;
ctx.fill();
}

</script>

</body>
</html>

используйте здесь свой собственный jpg или png ... Наслаждайтесь!.

0 голосов
/ 06 апреля 2012

Да, это проблемы: http://code.google.com/p/chromium/issues/detail?id=113592

Я все еще ищу временное решение и для моих проектов.

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