3

我正在开发的程序有问题(您可以在www.energematrice6.com/gview2看到它)

星系查看器在 6 个不同的图层上绘制星星。后层工作正常(使用简单的笔划命令)。顶部 3 层使用 drawImage() 功能获取保存的图像并将其绘制到画布上(使用函数 starGradDraw 和 starGradDraw2)。

当程序第一次执行并保存到对象变量(基本上只是一个缓冲区)时,这些图像是由另一个函数创建的。

在我的家用电脑、笔记本电脑、我妻子的电脑以及我测试过(或让朋友测试过)的几乎所有其他机器上,一切正常。

当我尝试在我的工作电脑上用 Firefox 10.0.2 打开它时(我在家里使用的相同版本),前三层星星是空白的。我能想到的唯一其他区别是我的家用电脑都没有使用 64 位操作系统,特别是 Windows 7。

程序中的其他所有内容似乎仍然可以正常工作,并且 firebug 没有弹出任何错误。它只是不绘制图像(或停止程序)。我真的不确定下一步该尝试什么。

有任何想法吗?

(如果你愿意,我可以粘贴一些代码,但程序有超过一千行长,我不确定问题可能出在哪里,或者它如何只在这台机器上出错。)

4

1 回答 1

5

经过大量的研究和寻找错误后,我发现这个问题是 Firefox 本身的错误。

显然,在当前版本中,启用 2-D 图形硬件加速后,当直接将径向渐变绘制到缓冲区画布(仅限屏幕外)时,Firefox 无法正确保存径向渐变。

关闭硬件加速允许浏览器正确处理命令。

已提交错误报告,希望该问题将得到修复。

于 2012-03-15T15:07:22.540 回答