getQuantumRange() can be handy here:
<?php
$i = new Imagick($imageFile);
$max = $i->getQuantumRange();
$max = $max["quantumRangeLong"];
$i->thresholdImage(0.77 * $max);
?>
(PECL imagick 2, PECL imagick 3)
Imagick::thresholdImage — Modifie la valeur des pixels individuels, basée sur un seuil
Modifie la valeur des pixels individuels, basée sur l'intensité de chaque pixel, comparée au seuil. Le résultat sera une image d'un contraste élevé comprenant 2 couleurs.
threshold
channel
Retourne true
en cas de succès.
Exemple #1 Exemple avec Imagick::thresholdImage()
<?php
function thresholdimage($imagePath, $threshold, $channel) {
$imagick = new \Imagick(realpath($imagePath));
$imagick->thresholdimage($threshold * \Imagick::getQuantum(), $channel);
header("Content-Type: image/jpg");
echo $imagick->getImageBlob();
}
?>
getQuantumRange() can be handy here:
<?php
$i = new Imagick($imageFile);
$max = $i->getQuantumRange();
$max = $max["quantumRangeLong"];
$i->thresholdImage(0.77 * $max);
?>