函數(shù)名:Gmagick::resampleimage()
適用版本:Gmagick擴(kuò)展需要安裝和啟用,適用于PHP 5.1.3及以上版本。
用法:該函數(shù)用于重新采樣圖像,改變圖像的分辨率和大小。
語(yǔ)法:public Gmagick Gmagick::resampleimage(float $x_resolution, float $y_resolution, int $filter_type[, float $blur])
參數(shù):
- $x_resolution:目標(biāo)圖像的水平分辨率,以像素/英寸為單位。
- $y_resolution:目標(biāo)圖像的垂直分辨率,以像素/英寸為單位。
- $filter_type:指定采樣過(guò)程中使用的濾波器類型??蛇x值有:
- Gmagick::FILTER_UNDEFINED (0):未定義的濾波器。
- Gmagick::FILTER_POINT (1):最近鄰插值。
- Gmagick::FILTER_BOX (2):盒式濾波器。
- Gmagick::FILTER_TRIANGLE (3):三角形濾波器。
- Gmagick::FILTER_HERMITE (4):Hermite濾波器。
- Gmagick::FILTER_HANNING (5):Hanning濾波器。
- Gmagick::FILTER_HAMMING (6):Hamming濾波器。
- Gmagick::FILTER_BLACKMAN (7):Blackman濾波器。
- Gmagick::FILTER_GAUSSIAN (8):Gaussian濾波器。
- Gmagick::FILTER_QUADRATIC (9):二次濾波器。
- Gmagick::FILTER_CUBIC (10):三次濾波器。
- Gmagick::FILTER_CATROM (11):Catrom濾波器。
- Gmagick::FILTER_MITCHELL (12):Mitchell濾波器。
- Gmagick::FILTER_LANCZOS (13):Lanczos濾波器。
- Gmagick::FILTER_BESSEL (14):Bessel濾波器。
- Gmagick::FILTER_SINC (15):Sinc濾波器。
- Gmagick::FILTER_KAISER (16):Kaiser濾波器。
- $blur (可選):模糊半徑,用于柔化圖像。
返回值:返回一個(gè)新的Gmagick對(duì)象,包含重新采樣后的圖像。
示例:
<?php
// 創(chuàng)建Gmagick對(duì)象
$gmagick = new Gmagick('image.jpg');
// 重新采樣圖像
$resampled = $gmagick->resampleimage(72, 72, Gmagick::FILTER_LANCZOS, 1.0);
// 輸出結(jié)果
header('Content-type: image/jpeg');
echo $resampled;
?>
上述示例中,我們首先創(chuàng)建了一個(gè)Gmagick對(duì)象,加載了名為"image.jpg"的圖像。然后,我們使用resampleimage()函數(shù)重新采樣圖像,將分辨率設(shè)置為72像素/英寸,并使用Lanczos濾波器進(jìn)行采樣。最后,我們將結(jié)果以JPEG格式輸出到瀏覽器。