PHP ImageMagick - 旋转和滚动



本章节,您将学习如何使用 ImageMagick 的内置函数来旋转和滚动图像。

旋转图像

ImageMagick 提供了一个内置函数‘rotateImage()’,用于根据指定的角度旋转图像。此函数以图像作为输入,应用此函数后,旋转图像,并获得旋转后的图像作为输出。

语法

public Imagick::rotateImage(mixed $background, float $degrees): bool

此函数有两个参数:背景和角度。‘背景’指定背景颜色,‘角度’是一个浮点值,以度为单位指定旋转角度。图像按指定角度顺时针旋转。

示例

在下面的示例中,首先创建一个新的 Imagick 对象,并以图像作为输入。将‘rotateImage()’函数应用于该图像,并将图像旋转到指定的角度。借助‘writeImage()’函数,可以获得旋转后的图像作为输出。

<?php
   $image=new Imagick($_SERVER['DOCUMENT_ROOT']."/test/image.png");
   $image->rotateImage('black', 40);
   $image->writeImage($_SERVER['DOCUMENT_ROOT']."/test/rotateImage.png");
?>

假设程序中的输入图像是 (image.png) −

Rotating Image

输出

Rotating Image

滚动图像

您是否曾经观察过滚动的过程?您正在滚动的那个东西是通过旋转或反复翻转来移动的。滚动图像也是同样的意思。它只不过是图像的偏移。

为此,ImageMagick 提供了一个内置函数‘rollImage()’,它以图像作为输入,滚动图像,并获得滚动的图像作为输出。

语法

public Imagick::rollImage(int $x, int $y): bool

此函数有两个参数:x 和 y。‘x’ 和 ‘y’ 是整数值,它们分别指定 x 偏移量和 y 偏移量。

示例

在这个例子中,通过创建一个新的 Imagick 对象来获取图像作为输入。然后,使用指定的 x 和 y 偏移量 (x=30, y=40) 应用‘rollImage()’函数。滚动的图像作为输出获得。

<?php
$image=new Imagick($_SERVER['DOCUMENT_ROOT']."/test/image.png");
$image->rollImage (300, 40);
$image->writeImage($_SERVER['DOCUMENT_ROOT']."/test/rollImage.png");
?>

假设程序中的输入图像是 (image.png) −

Rolling Image

输出

Rolling Image
广告