@GS3

Оптимизация изображений laravel (Image-Optimizer)?

Хочу прикрутить к сайту сжатие изображений при загрузке.
Почитал и решил использовать Image-Optimizer.
Установил. В контроллере:
use Spatie\LaravelImageOptimizer\Facades\ImageOptimizer;

public function store(Request $request)
    {
        $settings = $this->settings;
        $this->reIndex();

        if ($request->hasfile('filename')) {
            $file = $request->file('filename');
            $name=time().$file->getClientOriginalName();
            $path = $file->move(public_path().'/img/', $name);
            ImageOptimizer::optimize($path);
         }

        $img= new \App\Img;
        $img->filename=$name;
        $img->save();

        return redirect('news')->with('success', 'Новость успешно добавлена!');
    }

При этом ничего не происходит, картинка просто загружается, исходная.
Библиотеки, как я понял, подключены автоматически:
use Spatie\ImageOptimizer\Optimizers\Svgo;
use Spatie\ImageOptimizer\Optimizers\Optipng;
use Spatie\ImageOptimizer\Optimizers\Gifsicle;
use Spatie\ImageOptimizer\Optimizers\Pngquant;
use Spatie\ImageOptimizer\Optimizers\Jpegoptim;

Или их ещё надо где-то доставлять ?
  • Вопрос задан
  • 2885 просмотров
Пригласить эксперта
Ответы на вопрос 3
Maksclub
@Maksclub
maksfedorov.ru
У вас должны быть необходимые расширения для работы этой либы, она сама выявляет (если ей не указать) подходящую и сжимает
https://github.com/spatie/image-optimizer#optimiza...

Например для Jpegoptim должен стоять jpegoptim (на C вроде написана), ее тоже использую

А так -- у вас впустую пайплайн проходит
Ответ написан
OrlovEvgenii
@OrlovEvgenii
golang developer / DevOps
Попробуй https://github.com/OrlovEvgeny/TinyJPG
это демон вотчер который подписывается на fs event директории с изображениями и в случае если в директории появляется новое изображение - то он сжимает его. Сжимать через php немного накладно.
Ответ написан
@alexbeglov1989
Поделюсь своим опытом сжатия картинок... Сначало приходилось вручную перижимать все картинки через Фотошоп. Самый бесплатный кстати вариант (если не считать стоимость лицензии на Фотошоп). Но очень много времени этот процесс занимает, если картинок на сайте больше 10-20. Ведь каждую картинку надо вручную обрабатывать, а потом еще на сайт выкладывать заново. Утомительный такой процесс... Теперь использую этот сервис - https://optipic.io/ Экономит много времени) Работает сам по себе - автоматически - только 1 раз его надо к сайту подключить. Гугл доволен)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы