var element = new Element('img', { 'src': this.randomElement, 'styles': { 'display': 'block', 'margin': '0 auto' } }); if(this.useCanvas) { element.inject(small); var ctx = tetrisTable.getContext('2d'); ctx.drawImage(element, 0, 0); }
Problemem jest rozmiar elementu canvas - jeśli nie zostanie ostylowany, obrazki nie skalują się. Jednak chciałbym aby przybrał on określony rozmiar. Nadawanie obrazkom z góry narzuconych rozmiarów odpada, ponieważ każdy ma inny rozmiar. Widzicie jakieś wyjście z tej sytuacji?
No więc znalazłem odpowiedź - kiedy wymiary canvas nada się poprzez css, obrazy zostają przeskalowane, kiedy natomiast do elementu canvas dodamy atrybuty, np.
<canvas id="canvas" width="300" height="600"></canvas>
wszystko gra. Dziwne to, bo w końcu po to jest css, żeby jedno oddzielić od drugiego, ale cóż... Mam nadzieję, że komuś to pomoże.