HomeImagickImagickDrawImagickPixelImagick Pixel IteratorImagick KernelDevelopmentTutorial Source codeReport an issue
Category
Example

Level image

← kmeansImage   levelImageColors →
Adjusts the levels of an image by scaling the colors falling between specified white and black points to the full available quantum range. The parameters provided represent the black, mid, and white points. The black point specifies the darkest color in the image. Colors darker than the black point are set to zero. Mid point specifies a gamma correction to apply to the image. White point specifies the lightest color in the image. Colors brighter than the white point are set to the maximum quantum value.

The 'Reversed level adjustment' function isn't exposed as function in the ImageMagick library so isn't usable in Imagick.

Instead you can use the evaluateImage function to achive the same effect. Please see the levelizeImage tutorial.

Example

function levelImage($blackPoint, $gamma, $whitePoint, $image_path)
{
    $imagick = new \Imagick(realpath($image_path));

    $imagick->setFormat('png');
    $imagick->levelImage(
        $blackPoint * $imagick->getQuantum() / 255,
        $gamma,
        $whitePoint * $imagick->getQuantum() / 255
    );

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