PHP imagerotation 旋转到固定位置

PHP imagerotation rotating to a fixed position

所以我使用 imagerotate() 在按下按钮时将图像旋转 90 度,使用 ajax 这工作正常,但我的问题是旋转似乎已修复?

基本上,当我按下按钮时,它会将图像逆时针旋转 90 度,但是当我再次按下它时,它不会再逆时针旋转 90 度(因此总共旋转 180 度),它只是保持在原来的位置当前 90 度位置。

$img = imagerotate($img, 90, 0);

这是它的正常行为还是我做错了什么?如果是这样,我可以使用另一种方法吗?

谢谢。

您可以使用 javascript 在点击时相当轻松地执行此操作 (fiddle),方法是根据需要增加点击时的角度:

var angle = 90;

$('#flower').click(function() {
  $(this).css({
    '-webkit-transform': 'rotate(' + angle + 'deg)',
    '-moz-transform': 'rotate(' + angle + 'deg)',
    '-o-transform': 'rotate(' + angle + 'deg)',
    '-ms-transform': 'rotate(' + angle + 'deg)'
  });
  angle += 90;
});
#flower {
  position: fixed;
  display: block;
  border:1px  solid grey;
  margin-top: 20px;
  margin-left: 20px;
  height: 100px;
  width: 100px;
  padding: 15px;
  transition: all .5s ease-out;
  -webkit-transition: all .5s ease-out;
  -moz-transition: all .5s ease-out;
  -ms-transition: all .5s ease-out;
  -o-transition: all .5s ease-out;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<img src="http://www.rachelgallen.com/images/snowdrops.jpg" id="flower" alt="turning">

您需要将单独的角度值传递到 imagerotate php 函数中,因此您可以使用 javascript 或将旋转图像设置为源图像以在第二次单击时旋转php method.

希望这对您有所帮助