2

我正在尝试将一个巨大的屏幕外画布(缓冲区)的一小部分绘制到我的画布中,但我在 chrome 上遇到了问题(在 Firefox 和 IE 上效果很好)。

除非我将缓冲区的大小减少约 10%,否则 drawImage 方法不起作用。我的缓冲区是 12000x7500px,除非我将其减小到 10000x6000px,否则它不起作用。

这是一个错误还是我做错了什么?

我现在不提供测试用例,因为它不容易创建,但如果这里的任何人都不熟悉这个问题,我会提供。

ctx.drawImage(game.bufferBackground,-eventManager.decalX,-eventManager.decalY,game.canvas.width, game.canvas.height, 0, 0, game.canvas.width, game.canvas.height);

ctx.canvas 是每 530 像素 750 像素。game.bufferBackground 是 12000px 每 7500px

谢谢你的帮助 !

4

1 回答 1

-1

我自己在 Chrome 中使用 drawImage 时遇到了问题——确保在标签中调整画布的大小,而不是 CSS。当我使用 CSS 调整大小时,只绘制了部分图像,但是当我在实际标签中使用 HEIGHT/WIDTH 调整大小时,它呈现得很好。

例子:

<canvas height="400" width="400">

不是

<canvas style="height:400;width:400;">
于 2013-02-28T18:51:31.727 回答