Example #1
0
function generate_graph($params)
{
    $in = generate_grayscale();
    $out = imageclone($in);
    imagecolorcorrect($out, $params);
    $graph = imagecreate(256, 256);
    imagecolorallocate($graph, 255, 255, 255);
    $z = imagecolorallocate($graph, 0, 0, 0);
    for ($i = 0; $i < 256; $i++) {
        $x = 255 & imagecolorat($in, $i, 0);
        $y = 255 & imagecolorat($out, $i, 0);
        imagesetpixel($graph, $x, 255 - $y, $z);
    }
    return $graph;
}
<?php

include dirname(__FILE__) . '/_init.php';
$im = imagecreatefromjpeg('images/mosaic.jpg');
imagecolorcorrect($im, array('s' => array('gamma' => 0.7)), IMAGE_EX_COLORSPACE_HSV);
imagejpeg($im, 'output/gamma-s1.jpg');
$im = imagecreatefromjpeg('images/mosaic.jpg');
imagecolorcorrect($im, array('s' => array('gamma' => 1.4)), IMAGE_EX_COLORSPACE_HSV);
imagejpeg($im, 'output/gamma-s2.jpg');
<?php

include dirname(__FILE__) . '/_init.php';
$im = imagecreatefromjpeg('images/mosaic.jpg');
imagecolorcorrect($im, array('s' => array('tonecurve' => array(array(0.5, 0.75)))), IMAGE_EX_COLORSPACE_HSV);
imagejpeg($im, 'output/tonecurve-s1.jpg');
$im = imagecreatefromjpeg('images/mosaic.jpg');
imagecolorcorrect($im, array('s' => array('tonecurve2' => array(array(0.3, 0.2), array(0.5, 0.4), array(0.7, 0.8)))), IMAGE_EX_COLORSPACE_HSV);
imagejpeg($im, 'output/tonecurve-s2.jpg');
<?php

include dirname(__FILE__) . '/_init.php';
$im = imagecreatefromjpeg('images/mosaic.jpg');
imagecolorcorrect($im, array('s' => array('levels' => array(51, 204))), IMAGE_EX_COLORSPACE_HSV);
imagejpeg($im, 'output/levels-s1.jpg');
$im = imagecreatefromjpeg('images/mosaic.jpg');
imagecolorcorrect($im, array('s' => array('levels' => array(0, 255, 51, 204))), IMAGE_EX_COLORSPACE_HSV);
imagejpeg($im, 'output/levels-s2.jpg');