如何将图像分割成碎片

时间:2016-05-13 10:28:51

标签: javascript html5 html5-canvas

我正在寻找一种将图像分割成碎片的方法。

可以使用tile_height和tile_width.Looking来配置图像可以分割成的片段。

我不希望任何框架的任何解决方案。仅使用vanilla JavaScript

我尝试了下面的

var _clipX =0;
var _clipY = _clipX;
var _clipHeight = IMAGE_HEIGHT/TILE_HEIGHT;
var _clipWidth = IMAGE_WIDTH/TILE_WIDTH;
var _nRows = Math.floor(IMAGE_HEIGHT/TILE_HEIGHT);
var _nColumns = Math.floor(IMAGE_WIDTH/TILE_WIDTH); 
for(var i=0;i<_nRows;i++){
    for(var j=0;j<_nColumns;j++){
        el.getContext('2d').drawImage(image, _clipX, _clipY, _clipWidth, _clipHeight, _clipX, _clipY,_clipWidth , _clipHeight);
        _clipX = _clipX + _clipWidth;
    }
    _clipX = 0
    _clipY = _clipY + _clipHeight;
}

以下是工作的JSFiddle

JSFiddle

1 个答案:

答案 0 :(得分:1)

是!!!

找到它。当你调用绘制图像时,它不会迭代图像标签尺寸,而是迭代图像的自然尺寸,因此我面临的问题。

现在我尝试使用与我的img标签尺寸相同的图像尺寸,它完全正常。

感谢大家提供的帮助