原始像素数据到PNG或绘制原始像素数据

时间:2012-10-16 19:14:14

标签: javascript html5 canvas png

this.terrain = new jaws.Sprite({ x: 0, y: 0, image: this.currentLevel.terrainImage, scale_image: 6 });
var rawTerrain = this.terrain.asCanvasContext();
this.rawPixelData = rawTerrain.getImageData(0, 0, this.terrain.width, this.terrain.height).data;

这是我在HTML5游戏中创建新地图的代码。我使用的是.png地图。我还提取其原始像素数据,以便我可以读取地图中的碰撞和其他东西。

我想实施手榴弹,这些手榴弹实际上会改变地图。我不能改变.png。你怎么建议我这样做而不转移到另一种地图加载(我想继续使用.png地图)?

我的想法是操纵原始像素数据(非常可行)然后绘制它,但我不知道如何做到这一点。我可以将原始像素数据转换为.png然后绘制它吗?

我用Javascript查找了libpng并找到了pnglets,但我认为重新制作png需要花费很长时间才会冻结游戏。

有什么想法吗?提前谢谢。

1 个答案:

答案 0 :(得分:1)

您可以使用canvas的{​​{1}}方法将原始数据绘制到画布上:

putImageData