PHP ImageMagick - 图像边框

数字显示屏上显示的每张图片都有黑色、白色或彩色背景。 因此,区分背景和照片对于定义图像的视觉限制至关重要。

这种分离的必要性在黑色或白色背景中更加明显。 因此,为了达到此目的,必须为照片添加边框。 在本章中,您将学习使用 Imagemagick 的一些内置函数在 PHP 中为图像添加边框。

添加 3D 边框

可以使用 Imagemagick 提供的内置函数"frameImage()"将 3D 边框添加到图像中。

语法

public Imagick::frameImage(mixed $matte_color, int $width, int $height, int $inner_bevel, int $outer_bevel): bool

该方法需要 5 个参数

  • matte-color − 它是一个表示哑光颜色的字符串。

  • width − 表示边框的宽度。

  • height − 表示边框的高度。

  • inner_bevel − 表示内斜角的宽度。

  • outer_bevel − 表示外斜角的宽度。

获得的输出是带有边框的图像,该边框具有指定的尺寸和颜色。

示例

以下程序展示了如何在 PHP 中使用 Imagick 库创建新的图像文件。 它使用现有图像创建 Imagick 类的对象,在其周围添加具有特定参数的框架(在本例中为粉红色和 100x100 像素,边框为 10px),然后将修改后的图像写入为 PNG 文件。

<?php
   $image=new Imagick($_SERVER['DOCUMENT_ROOT']."/test/image.jpg");
   $image->frameImage('pink', 100, 100, 10, 10);
   $image->writeImage($_SERVER['DOCUMENT_ROOT']."/test/newimage.png");
?>

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

添加 3D 边框

输出

添加 3D 边框

添加普通边框

Imagemagick 提供了一种方法'borderImage()',可以为图像添加边框。 它将图像作为输入并生成带有边框的图像作为输出。

语法

public Imagick::borderImage(mixed $bordercolor, int $width, int $height): bool

该函数有3个参数,分别是边框颜色、宽度和高度。

  • bordercolor是一个imagickpixel对象或包含边框颜色的字符串。

  • widthheight是保存边框宽度和高度的整数值。

示例

以下程序展示了如何在 PHP 中使用 Imagick 库创建带有 25px 黄色边框的图像。 它从"test/image.png"文件中读取图像,并将其写为带有添加边框的"test/borderImage.png"。

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

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

添加普通边框

输出

添加普通边框