PHP 图像(png) 定位和旋转

4

我有一张图片(arrow.png),我想根据左/右/上等位置来定位它,还想知道如何通过一个变量将图像旋转0-360度?

我的PHP代码

 <?php $degrees = 270;

    echo "<img src='arrow.png'>", "<div id='windfr'>";
    $rotate = imagerotate($degrees, 0); ?>

我的CSS:

<style>
  .windfr {
    z-index: 8;
    display: block;
    position:relative;
    left: 425px;
    top: 670px;
  }
</style>

1
如果您真的想使用PHP GD2来操作图像,您的<img>必须调用将生成此图像的PHP脚本。但请记住,图像处理是CPU密集型的,这不是您想在Web服务器上执行的操作。 - Havenard
@Havenard - 当然你想在服务器上进行图像处理,但不是在每个请求上。结果应该保存在某个地方。 - Philipp
@Philipp 嗯,是的,我指的是,除非绝对必要。简单的旋转可以通过CSS或SVG实现,事实上,有很多可以使用SVG进行编辑的操作。尽可能将图像处理留给客户端。理想情况下,服务器应仅处理信任敏感操作,以优化其有限的资源和响应能力。 - Havenard
2个回答

3
您可以仅使用CSS来实现此目的:
img{
    -ms-transform: rotate(20deg); /* IE 9 */
    -webkit-transform: rotate(20deg); /* Safari 3-8 */
    transform: rotate(20deg);
}

显然,您可以根据需要更改旋转度数。

更多信息请参见:https://www.w3schools.com/cssref/css3_pr_transform.asp

祝你好运!


2
<?php
$degrees = 270;

echo "<img src='Asset 1.png' style='transform: rotate(".$degrees."deg);'>", "<div id='windfr'>";

?>

谢谢,旋转是有效的,但我的定位代码有问题。也许你知道哪里出了问题? - Bence
你可以使用transform-origin CSS属性来定位元素 示例 @Bence - Shazvan Hanif
1
是的,我尝试过了,它运行得很好!谢谢 :) - Bence

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接