PHP ImageMagick - 影像拼接與擴充套件



在本章中,您將學習使用 ImageMagick 的一些內建函式來擴充套件影像和拼接影像。

影像擴充套件

在本節中,您將學習如何使用 ImageMagick 提供的 ‘spreadImage()’ 函式輕鬆擴充套件影像。擴充套件影像是在塊中隨機移動每個畫素。

語法

public Imagick::spreadImage(float $radius): bool

此函式僅接受一個引數:radius。‘Radius’ 是一個浮點值,用於指定在塊中移動每個畫素的值。

示例

在下面的示例中,建立了一個 Imagick 物件並以影像作為輸入。現在,將 ‘spreadImage()’ 函式應用於影像,並帶有一個引數 (radius=5)。然後,最終影像將顯示為輸出。

<?php
   $image=new Imagick($_SERVER['DOCUMENT_ROOT']."/test/imagee.png");
   $image->spreadImage(5);
   $image->writeImage($_SERVER['DOCUMENT_ROOT']."/test/spreadImage.png");
?>

假設以下為程式中的輸入影像 (image.png) -

Image Spreading

輸出

Image Spreading

影像拼接

在本章中,您將學習如何使用 ImageMagick 中名為 ‘spliceImage()’ 的內建函式將純色拼接到底片上。此函式以影像作為輸入,並將純色與指定的引數(拼接的尺寸和位置)拼接到底片上。

語法

public Imagick::spliceImage(
   int $width,
   int $height,
   int $x,
   int $y
): bool

此函式包含 4 個引數:width、height、x 和 y。‘Width’ 和 ‘height’ 是分別指定拼接寬度和高度的整數值。‘x’ 和 ‘y’ 也是整數值,分別指定 X 軸和 Y 軸上的位置。

示例

在下面的示例中,建立了一個 Imagick 物件並以影像作為輸入。在該影像上,應用了 ‘spliceImage()’ 函式,並帶有引數 (width=50, height=100, x=100, y=50)。然後,獲得拼接後的影像作為輸出。

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

假設以下為程式中的輸入影像 (image.png) -

Image Splicing

輸出

Image Splicing
廣告

© . All rights reserved.