tmpPath(); $mimetype = mime_content_type($path); system('imagemin '.escapeshellarg($path).' --plugin=jpegtran --plugin=mozjpeg --plugin.mozjpeg.quality=70 > '.escapeshellarg($output)); system("mv ".escapeshellarg($output)." ".escapeshellarg($path)); return [ $path => [$path], ]; } public function shouldGenerateVersions(): bool { return true; } public function resize(string $source, string $destination, Collection $size): void { $extension = pathinfo($source, PATHINFO_EXTENSION); $temp = microtime().'.'.$extension; $r = app(ImageManager::class)->make($source) ->fit($size->get('width'), $size->get('height'), fn ($constraint) => $constraint->upsize()) ->save(Storage::path($temp)); list($destWidth, $destHeight) = getimagesize(Storage::path($temp)); $versionFilename = $destination. '/'. pathinfo($source, PATHINFO_FILENAME). '-'. $destWidth. 'x'. $destHeight. '.jpg'; if (Storage::exists($versionFilename)) { Storage::delete($versionFilename); } Storage::move($temp, $versionFilename); } }