PHP ImageMagick - 旋转和滚动

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

旋转图像

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

语法

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

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

示例

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

滚动图像

输出

滚动图像