getImageData не читает правильные значения и putImageData не обновляет холст - PullRequest
1 голос
/ 22 марта 2012

У меня проблема с обновлением холста.Код размещен на http://ssarangi.github.com/nombre/. Проблема в том, что я загружаю красное изображение, и после того, как загрузка завершена, я преобразую изображение в желтое и хочу повторно отобразить его на холсте.1005 * Однако, ctx не обновляет пиксели.Тем не менее, делать то же самое на простой HTML-странице работало для меня.Этот пример включает WebGL, хотя.Может ли кто-нибудь указать мне правильное направление.Спасибо.

1 Ответ

1 голос
/ 22 марта 2012

Нет ничего плохого в предоставленном коде, за исключением того, что он утверждает, что делает желтые пиксели, когда он фактически делает пиксели чирка. Вот он модифицируется и работает, делая желтые пиксели:

http://jsfiddle.net/TCf6f/


Код на вашей веб-странице работает, когда вы устанавливаете точку останова в отладчике Chrome, в частности он поворачивает холст, как указано в вашем коде. Кажется, он не работает, когда нет точки останова, и я предполагаю, что виноват размер CanvasPixelArray. Что происходит с меньшим холстом?

Что страннее, иногда вы можете установить точку останова и увидеть, что операция частично работает, как здесь:

enter image description here

С более ранними контрольными точками все становится правильным.

Если холст меньшего размера работает, попробуйте изменить массив пикселей в 4 или 8 блоков и посмотрите, что произойдет.

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