PHP 8.1.0 Beta 1 available for testing

Imagick::levelImage

(PECL imagick 2, PECL imagick 3)

Imagick::levelImageBir görüntünün seviyelerini ayarlar

Açıklama

public Imagick::levelImage(
    float $siyah_nokta,
    float $gamma,
    float $beyaz_nokta,
    int $kanal = Imagick::CHANNEL_DEFAULT
): bool

Siyah ve beyaz noktalarla belirtilen kullanılabilir parçacık aralığının tamamına karşı düşen renkleri oranlayarak bir görüntünün seviyelerini ayarlar. Belirtilen değiştirgeler siyah, gri ve beyaz noktaları belirtir. siyah_nokta görüntünün kabul edilebilir en koyu rengini belirtir. Bu noktadan daha koyu renklere sıfır atanır. gamma ile görüntüye uygulanacak gamma düzeltmesi belirtilir. beyaz_nokta görüntünün kabul edilebilir en açık rengini belirtir. Bu noktadan daha açık renklere azami parçacık değeri atanır.

Değiştirgeler

siyah_nokta

Görüntünün en koyu rengi.

gamma

Gamma düzeltmesi.

beyaz_nokta

Görüntünün en açık rengi.

kanal

Normalde kanal türü sabitlerinden biri, ancak bitsel işleçler kullanılarak birden fazla kanal belirtilebilir.

Dönen Değerler

Başarı durumunda true döner.

Hatalar/İstisnalar

Hata durumunda bir ImagickException istisnası oluşur.

Örnekler

Örnek 1 - Imagick::levelImage() örneği

<?php
function levelImage($blackPoint$gamma$whitePoint) {
    
$imagick = new \Imagick();
    
$imagick->newPseudoimage(500500'gradient:black-white');

    
$imagick->setFormat('png');
    
$quantum $imagick->getQuantum();
    
$imagick->levelImage($blackPoint 100 $gamma$quantum $whitePoint 100);

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

?>

add a note add a note

User Contributed Notes 1 note

up
5
Maxim Lovchikov
10 years ago
I have a trouble with this method because think that quantum range is 0 - 255.
But quantum range for levelImage is 0-65535. You can get quantum range with Imagick::getQuantumRange
There is a right piece of code

$img->levelImage (0, 1.0, 65535);
To Top