
- PHP ImageMagick 教程
- PHP ImageMagick - 首頁
- PHP ImageMagick - 簡介
- 背景顏色
- 圖片倒影
- 圖片裁剪
- 圖片邊框
- 圖片縮放
- 圖片合成
- 對比度和亮度
- 增強和均衡
- 銳化和模糊
- 圖片平鋪
- 圖片閾值
- 修改顏色
- 不同的效果
- 保護圖片
- 素描模擬
- 編輯外觀
- 旋轉和滾動
- 拼接和擴充套件
- 其他功能
- PHP ImageMagick 有用資源
- PHP ImageMagick - 快速指南
- PHP ImageMagick - 資源
- PHP ImageMagick - 討論
PHP ImageMagick - 圖片裁剪
圖片裁剪是指剪裁圖片的一部分或透過修剪不必要的部位來減小圖片尺寸。這使您可以專注於圖片中的重要元素,同時丟棄任何不必要的元素。
使用 ImageMagick 進行圖片裁剪是一種快速編輯圖片的好方法,無需任何特殊軟體或複雜的圖形設計技術知識。
在本節中,您將學習如何使用 ImageMagick 庫提供的內建函式來裁剪圖片。
圖片裁剪
從影像中提取區域稱為“裁剪”。它只是去除影像不需要的邊緣或獲取影像的特定部分。這可以使用 ImageMagick 中名為 **‘cropImage()’** 的方法在 PHP 中完成。
語法
public Imagick::cropImage(int $width, int $height, int $x, int $y) : bool
引數
此方法接受四個引數:寬度、高度、x 和 y。
**寬度** - 裁剪的寬度,
**高度** - 裁剪的高度,
**x** - 裁剪區域左上角的 X 座標。
**y** - 裁剪區域左上角的 Y 座標。
獲得的輸出將是根據作為該方法引數給出的測量值裁剪的影像。
示例
在下面的示例中,建立了一個 Imagick 物件並讀取輸入影像。隨後,使用 **'cropImage()'** 函式根據函式中提供的引數裁剪影像。輸出(即裁剪後的影像)可以直接在伺服器上顯示,也可以使用 **'writeImage()'** 函式儲存到您的系統中,並使用任何所需的名稱和格式。
<?php $image=new Imagick($_SERVER['DOCUMENT_ROOT']."/test/image.jpg"); $image->cropImage(800, 750, 200, 100); $image->writeImage($_SERVER['DOCUMENT_ROOT']."/test/newimage.png"); ?>
假設程式中的輸入影像如下 (image.jpg) -

輸出

建立裁剪的縮圖
縮圖是以較小影像形式表示的較大影像。它旨在更容易、更快地檢視或管理一組較大的影像。ImageMagick 透過提供 **‘cropThumbnailImage()’** 方法來幫助我們建立裁剪的縮圖。
語法
public Imagick::cropThumbnailImage(int $width, int $height, bool $legacy = false): bool
此方法透過首先放大或縮小影像並從中心裁剪指定區域來幫助建立固定大小的縮圖。
此方法接受兩個引數,寬度和高度。它們分別指定縮圖的寬度和高度。
示例
在下面的示例中,建立了 imagick 物件。然後,使用 **‘cropThumbnailImage()’** 函式獲得固定大小的縮圖,並使用 **‘writeImage()’** 函式獲得輸出。
<?php $image=new Imagick($_SERVER['DOCUMENT_ROOT']."/test/image.jpg"); $image->cropThumbnailImage(100, 100); $image->writeImage($_SERVER['DOCUMENT_ROOT']."/test/newimage.png"); ?>
假設程式中的輸入影像如下 (image.jpg) -

輸出

影像切割
有時,在選擇影像時,不需要整個影像。在您只需要影像的一部分或影像的特定區域的情況下,**‘chopImage()’** 函式可以幫助我們。此函式幫助我們去除影像的區域並根據使用者的規範修剪影像。
語法
public Imagick::chopImage (int $width, int $height,int $x,int $y): bool
此函式接受四個引數:
寬度 - 寬度也是一個整數,儲存被切割區域的寬度。
高度 - ‘高度’ 是一個整數,儲存被切割區域的高度。
x - 被切割區域的 x 座標。
y - 被切割區域的 y 座標。
示例
在下面的示例中,您將學習如何使用 **'chopImage()'** 函式。首先,建立一個 Imagick 物件並將其作為輸入影像。
然後,將 **'chopImage()'** 應用於影像,引數為寬度、高度、x 座標和 y 座標。
<?php $image=new Imagick($_SERVER['DOCUMENT_ROOT']."/test/image.jpeg"); $image->chopImage (400, 40, 2, 2); $image->writeImage($_SERVER['DOCUMENT_ROOT']."/test/chopImage.png"); ?>
假設程式中的輸入影像如下 (image.jpeg) -

輸出
