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 畫素,邊框為 10 畫素),然後將修改後的影像寫入 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):

Adding 3D Border

輸出

Adding 3D Border

新增普通邊框

ImageMagick 提供了一個方法‘borderImage()’,它可以為影像新增邊框。它以影像作為輸入,並生成帶有邊框的影像作為輸出。

語法

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

此函式有 3 個引數,分別是邊框顏色、寬度和高度。

  • bordercolor 是一個imagickpixel物件或包含邊框顏色的字串。

  • widthheight 是分別儲存邊框寬度和高度的整數值。

示例

以下程式展示瞭如何在 PHP 中使用 Imagick 庫建立具有 25 畫素黃色邊框的影像。它從“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):

Adding a Normal Border

輸出

Adding a Normal Border
廣告