PHP Conference Nagoya 2025

Imagick::linearStretchImage

(PECL imagick 2, PECL imagick 3)

Imagick::linearStretchImageÉtire la saturation de l'intensité de l'image

Description

public Imagick::linearStretchImage(float $blackPoint, float $whitePoint): bool

Étire la saturation de l'intensité de l'image.

Liste de paramètres

blackPoint

Le point noir de l'image.

whitePoint

Le point blanc de l'image.

Valeurs de retour

Retourne true en cas de succès.

Exemples

Exemple #1 Exemple avec Imagick::linearStretchImage()

<?php
function linearStretchImage($imagePath, $blackThreshold, $whiteThreshold) {
$imagick = new \Imagick(realpath($imagePath));
$pixels = $imagick->getImageWidth() * $imagick->getImageHeight();
$imagick->linearStretchImage($blackThreshold * $pixels, $whiteThreshold * $pixels);

header("Content-Type: image/jpg");
echo
$imagick->getImageBlob();
}

?>

add a note

User Contributed Notes 1 note

up
1
SkepticaLee
10 years ago
"Black" and "white" points here are pixel counts from the darkest and brightest ends respectively. To turn the darkest 90% of the pixels black, and the brightest 5% white, use the following:

<?php
$im
= new Imagick ("some image.png");
list (
$width, $height) = array_values ($im->getImageGeometry ());
$px = $width * $height;
$im->modulateImage (100, 0, 100);
$im->linearStretchImage ($px * 0.9, $px * 0.05);
$im->writeImage ("temp.jpg");
?>
To Top