Вы рисуете их в одной точке.drawImage не заботится о высоте или ширине с вашими заданными параметрами;он просто хочет изображение и координату.См. https://developer.mozilla.org/en/Canvas_tutorial/Using_images
Итак, вам нужно предоставить вашим изображениям больше данных;что-то вроде:
thisWidth = letters[i][0];
thisHeight = letters[i][1];
imgSrc = letters[i][2];
thisX = letters[i][3]; //<---
thisY = letters[i][4]; //<---
letterImg = new Image();
letterImg.onload = function()
{
context.drawImage(letterImg, thisX, thisY, thisWidth, thisHeight);
//or, just
context.drawImage(letterImg, thisX, thisY);
}
letterImg.src = imgSrc;
Редактировать: Просто подумал - вы можете сделать это с диагональю:
context.drawImage(letterImg, letters[i-1][0]+thisWidth, letters[i-1]+thisHeight, thisWidth, thisHeight);
Таким образом, вам придется проверять вещи, но я думаю, что выполучить общее намерение.