在html5画布上下文中从右到左绘制图像

时间:2016-11-10 16:17:55

标签: javascript animation html5-canvas transform

我需要context.drawImage(...)从右到左开始绘图。有可能这样做吗? 可以说我有照片中的player1和player2

player2 player2

事情是它们都是相同的精灵,并且该精灵的每一帧都有不同的宽度和高度,这在我绘制player1(左对齐)时不是问题,因为宽度的变化会影响最右边的部分。手臂,但不是角色的运动。现在,当我绘制player1 fliped(player2)时,绘画开始于冲孔手并且混乱角色运动动画。所以,我想要的是绘制播放器2从图像的右侧开始,而不是默认方法,或任何可行的解决方案。 我的精灵画家就是这个

that.paint=function(frameOriginX,frameOriginY,xPosition,yPosition,frameWidth,frameHeight,previousWidth,previousHeight,fliped){
      if(fliped==true){
    that.context.imageSmoothingEnabled = false; 
    that.context.save();
    that.context.translate(xPosition, yPosition + frameHeight);
    that.context.rotate(180*Math.PI/180);
    that.context.scale(1, -1);
    that.context.translate(-(xPosition + frameWidth), -(yPosition + frameHeight));
   }
   //floor var is global and is equal to 300
   var oldYCoord=floor-previousHeight;
   that.context.clearRect(xPosition,oldYCoord, previousWidth, previousHeight);       
       that.context.drawImage(
       that.image,
       frameOriginX,
       frameOriginY,
       frameWidth,
       frameHeight,
       xPosition,
       yPosition,
       frameWidth,
       frameHeight);
   if(fliped==true)
    that.context.restore();
}

出于学习原因,我使用普通的javascript工作,没有引擎没有图书馆。这是game demo

0 个答案:

没有答案