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 — Bazı pikselleri belli bir eşiğe göre değiştir
Her pikselin yoğunluğunu belli bir eşikle karşılaştırarak bazı pikselleri değiştirir. Sonuçta iki renkli yüksek zıtlığa sahip bir resim elde edilir.
eşik
kanal
Normalde kanal türü sabitlerinden biri, ancak bitsel işleçler kullanılarak birden fazla kanal belirtilebilir.
Başarı durumunda true
döner.
Örnek 1 - Imagick::thresholdImage() örneği
<?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);
?>