Imagick::linearStretchImage

(PECL imagick 2, PECL imagick 3)

Imagick::linearStretchImageEstrecha con saturación la intensidad de la imagen

Descripción

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

Estrecha con saturación la intensidad de la imagen.

Parámetros

blackPoint

El punto negro de la imagen

whitePoint

El punto blanco de la imagen

Valores devueltos

Devuelve true en caso de éxito.

Ejemplos

Ejemplo #1 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 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