Laravel добавление размытия к изображению в хранилище

#php #laravel #laravel-7 #imagick

#php #laravel #laravel-7 #imagick

Вопрос:

Я сохраняю изображение в хранилище. Здесь мне нужно создать размытую версию изображения.

 $path = $request->file('file-upload-photo-profile')->store('public/profile');
        $user->photo_profile_url = 'storage/app/'.$path;
        $user->photo_profile = $path;
        /*
         * теперь блур
         * */
        $url=url('/').'/'.$user->photo_profile_url;
        $image=imagecreatefromjpeg($url);
        $imagick = new Imagick($image);
        $imagick->blurImage(5, 5);
         $imagick->getImageBlob();

        Storage::put('dssds.jpg',$imagick);
 

Но результирующий файл не может быть открыт. Это не изображение.

Ответ №1:

Я думаю, что этот URL-адрес (photo_profile_url), с которого вы считываете изображение, ведет на страницу 404, потому что вы используете функцию url () laravel с внутренним путем хранения. Если вы хотите загрузить изображение с URL-адреса, передайте общедоступный URL-адрес изображения в Imagick.

Комментарии:

1. Путь реальный. Если вы измените его, то появится еще одна ошибка.