PHP ImageMagick инвертировать цвет
Я работаю над приложением PHP, которое преобразует автопортрет в карандашный рисунок, и часть приложения требует ненасыщенного / перевернутого изображения, как в примере ниже:
до и после инвертирования:
Легко создать ненасыщенный образ, но как мне добиться этого с помощью imagemagick? Я пытался с помощью negate
, но с треском провалился.
Вот что у меня так далеко:
<?php
$img = new Imagick();
$img->readImage($image);
$img->modulateImage(100, 0, 100);
$img->writeImage('image.png');
ob_clean();
header('Content-Type: image/png');
echo $img;
$img->destroy();
?>
1 ответ
Согласно этой странице, вы можете вызвать фильтр imagemagick через функции PHP:
function negateImage($imagePath, $grayOnly, $channel) {
$imagick = new Imagick(realpath($imagePath));
$imagick->negateImage($grayOnly, $channel);
header("Content-Type: image/jpg");
echo $imagick->getImageBlob();
}