略微加速

PHP官方手册 - 互联网笔记

PHP - Manual: Imagick::resampleImage

2024-11-14

Imagick::resampleImage

(PECL imagick 2, PECL imagick 3)

Imagick::resampleImageResample image to desired resolution

说明

public Imagick::resampleImage(
    float $x_resolution,
    float $y_resolution,
    int $filter,
    float $blur
): bool

Resample image to desired resolution.

参数

x_resolution

y_resolution

filter

blur

返回值

成功时返回 true

范例

示例 #1 Imagick::resampleImage()

<?php
function resampleImage($imagePath) {
    
$imagick = new \Imagick(realpath($imagePath));

    
$imagick->resampleImage(200200, \Imagick::FILTER_LANCZOS1);
    
header("Content-Type: image/jpg");
    echo 
$imagick->getImageBlob();
}

?>
add a noteadd a note

User Contributed Notes 3 notes

up
1
simon
6 years ago
Please not that I had extremely high CPU usage using this function on Ubuntu linux 15.10. Switching to the resizeImage function fixed the problem.
up
1
bleighty at dvidshub dot net
8 years ago
Please note that blur of 1 should not affect the image if I'm understanding correctly from this page:
http://www.php.net/manual/en/imagick.resizeimage.php
up
-3
anagai at yahoo dot com
10 years ago
Lets say you want to reduce the resolution of uploaded images for the web.

The following will load a image at whatever resolution and resample it down to 72 dpi and save as a different file.

The dpi for setImageResolution() and resampleImage() should be whatever dpi your resampling too.

<?php
$image
= new Imagick();
$image->readImage('image.jpg');
$image->setImageResolution(72,72);
$image->resampleImage(72,72,imagick::FILTER_UNDEFINED,0);
$image->writeImage('image72.jpg');
?>

官方地址:https://www.php.net/manual/en/imagick.resampleimage.php

北京半月雨文化科技有限公司.版权所有 京ICP备12026184号-3