Я хочу, чтобы пользователь перетащил ползунок и отрегулировал яркость и контраст изображения с помощью предварительного просмотра в реальном времени (фильтры CSS), а затем сохранил настройки с помощью GD lib.
Однако я не могу показаться чтобы получить тот же результат от CSS фильтров и фильтров GD lib BRIGHTNESS и CONTRAST.
Мои css фильтры находятся в диапазоне от 50% до 150%, при этом 100% не имеют эффекта.
PHP преобразование в данный момент:
// Convert palette images to true color RGB images
imagepalettetotruecolor($image);
if( isset($opt['brightness']) ) {
$normalize = $opt['brightness'] / 100;
$brightness = (255 - (255 * $normalize )) * -1;
imagefilter($image, IMG_FILTER_BRIGHTNESS, $brightness);
}
if( isset($opt['contrast']) ) {
$contrast = -($opt['contrast'] - 100);
imagefilter($image, IMG_FILTER_CONTRAST, $contrast);
}
imagejpeg($image, $plain_img_path);
CSS фильтры с ползунками. GD lib без.
низкий контраст:
Высокая яркость: