HTML5 Canvas drawImage проблема в Windows 7, но только в Firefox - PullRequest
3 голосов
/ 13 марта 2012

У меня проблема с программой, которую я разрабатываю (вы можете увидеть ее на www.energematrice6.com / gview2 )

Программа просмотра галактики рисует звезды на 6 различныхслои.Задние слои работают нормально (с помощью простой команды обводки).Верхние 3 слоя используют функцию drawImage (), чтобы взять сохраненное изображение и нарисовать его на холсте (используя функции starGradDraw и starGradDraw2).

Эти изображения были созданы другой функцией при первом запуске и сохранении программыв переменную объекта (в основном это просто буфер).

Все работает правильно на моем домашнем компьютере, ноутбуке, компьютере моей жены и практически на любой другой машине, на которой я проверял это (или его проверяли друзья)on).

Когда я попытался открыть его в Firefox 10.0.2 на своем рабочем компьютере (ту же версию, которую я использую дома), первые три слоя звездочек остались пустыми.Единственное другое отличие, которое я могу себе представить, заключается в том, что ни один из моих домашних компьютеров не использует 64-разрядную операционную систему или, в частности, Windows 7.

Все остальное в программе все еще работает нормально, и firebug не выдает никаких ошибок.,Это просто не рисование изображений (или остановка программы).Я действительно не уверен, что попробовать дальше.

Любые идеи?

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

1 Ответ

5 голосов
/ 15 марта 2012

После довольно большого количества исследований и поиска ошибок, я обнаружил, что эта проблема - ошибка в самом Firefox.

Как видно, в текущей версии, с включенным аппаратным ускорением 2-D графики, Firefox не сохраняет корректно радиальные градиенты, когда они рисуются непосредственно в буферный холст (только за пределами экрана).

Отключение аппаратного ускорения позволяет браузеру правильно обрабатывать команды.

Был подан отчет об ошибке, и, надеюсь, проблема будет исправлена.

...