PHP ImageMagick - 旋转和滚动


在本章中,您将学习使用 Imagemagick 的内置函数旋转和滚动图像。

旋转图像

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

句法

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

该函数有 2 个参数:背景和度数。“背景”指定背景颜色,“度”是一个浮点值,指定旋转角度(以度为单位)。图像按指定角度顺时针旋转。

例子

在下面的示例中,首先创建一个新的 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) -

旋转图像

输出

旋转图像

滚动图像

你观察过滚动东西的过程吗?你滚动的东西是通过旋转或翻转来移动的。滚动图像也具有相同的含义。它只不过是抵消图像而已。

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

句法

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

该函数有 2 个参数:x 和 y。'x' 和 'y' 是整数值,它们分别指定 x 偏移量和 y 偏移量。

例子

在此示例中,通过创建新的 imagick 对象将图像作为输入。然后,借助指定的 a 和 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) -

滚动图像

输出

滚动图像