Как применить фильтр imagefilter в функции?
Как ни пытался, ничего не выходит. Вот такой у меня код:
public function fileUpload($path)
{
$fileTmpName = $_FILES['file']['tmp_name'];
$image = getimagesize($fileTmpName);
$extension = image_type_to_extension($image[2]);
$path = 'public/images/uploads/' . uniqid() . $extension;
$params = [
'id' => null,
'path' => $path,
];
move_uploaded_file($fileTmpName, $path);
imagecreatefromjpeg($path);
imagefilter($path, IMG_FILTER_GRAYSCALE);
$this->db->query('INSERT INTO `files` VALUES (:id, :path, strftime("%d.%m.%Y %H:%M"))', $params);
return $this->db->getLastInsertId();
}
Прошу помощи!
Ответы (1 шт):
Автор решения: fixer
→ Ссылка
Функция imagefilter() в качестве первого аргумента принимает не путь к картинке, а обьект типа GdImage, созданный другой функцией, например, imagecreatefromjpeg().
$img = imagecreatefromjpeg($path);
imagefilter($img, IMG_FILTER_GRAYSCALE);
imagejpeg($img, $new_path);