PHP ImageMagick - 图像平铺

在本章中,您将学习重复平铺纹理图像。 平铺纹理图像是创建图案的过程,其中纹理图像以平铺的形式重复。

使用 ImageMagick,您可以轻松地将图像平铺成大小相等的块。 您还可以调整每块的大小和方向,以便您根据需要自定义平铺图像。 在本教程中,我们将解释如何使用 PHP ImageMagick 的图像平铺来创建令人惊叹的美丽平铺图像以获得完美效果!

语法

Imagick::textureImage(Imagick $texture_wand): Imagick

该函数由一个参数组成

  • 'texture_wand'。它是一个用作纹理图像的 Imagick 对象。

  • 下面的示例是一个平铺图像的程序。 除了'textureImage()'之外,该程序还使用了一些其他功能。

  • 创建新图像 − 它涉及使用函数"newImage()"创建新图像,该函数将列大小和行大小作为参数。 因此,创建了具有这些测量值的图像。

  • 缩放图像 − 函数"scaleImage()"用于将图像缩放到特定尺寸,并且图像会随着这些尺寸而缩短,因此可以平铺在我们创建的新图像上。

该函数将图像作为输入,获得的输出是包含纹理图像图块图案的图像。

示例

下面的示例显示了'textureImage()'函数的实现。 在这里,使用指定的测量值和颜色作为参数创建一个新的 Imagick 对象。

  • 图像格式也已设置。 然后,通过创建新的 Imagick 对象将图像作为输入。

  • 现在,使用'scaleImage()'函数将图像缩放到某个特定尺寸。

  • 缩放后的图像连续平铺在开始时使用'textureImage()'函数创建的新图像上。

  • 最终输出以"textureImage.png"的形式获得。

<?php
   $img=new Imagick();
   $img->newImage(940, 670, new ImagickPixel('red'));
   $img->setImageFormat("jpg");
   $image=new Imagick($_SERVER['DOCUMENT_ROOT']."/test/image.jpeg");
   $image->scaleimage($image->getimagewidth() / 8, $image->getimageheight() / 8);
   $img=$img->textureImage($image);
   $image->writeImage($_SERVER['DOCUMENT_ROOT']."/test/textureImage.png");
?>

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

图像平铺

输出

图像平铺