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);Imagick::levelImage
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
Imagick::levelImage
Референца за `imagick.levelimage.php` со подобрена типографија и навигација.
Imagick::levelImage
(PECL imagick 2, PECL imagick 3)
Imagick::levelImage — Adjusts the levels of an image
= NULL
float
$blackPoint,float
$gamma,float
$whitePoint,int
$channel од Imagick 3.4.4. Силно се обесхрабрува потпирањето на оваа функција.): bool
Ги прилагодува нивоата на сликата
Параметри
blackPoint-
The image black point
gamma-
The gamma value
whitePoint-
The image white point
channel-
Белата точка на сликата. Обезбедете каква било константа на каналот што е валидна за вашиот режим на канал. За да се примени на повеќе од еден канал, комбинирајте ги константите на типот на каналот користејќи бинарни оператори. Погледнете ја оваа листа на.
Вратени вредности
Патеката до PHP скриптата што треба да се провери. true на успешен исход.
Errors/Exceptions
Фрла ImagickException при грешка.
Примери
Пример #1 Imagick::levelImage()
<?php
function levelImage($blackPoint, $gamma, $whitePoint) {
$imagick = new \Imagick();
$imagick->newPseudoimage(500, 500, '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();
}
?>