Laravel: resizen van afbeeldingen
12-07-2014Voor het resizen van afbeeldingen maak ik gebruik van de intervention/image package.
https://packagist.org/packages/intervention/image
Om deze te implementeren onderneem je de volgende stappen:
1) Voeg het pakket toe via composer: sudo composer require intervention/image
Voor de versie tik je: dev-master
2) Voeg je het volgende toe app/config/app.php
Onder “providers” plak je deze regel: ‘Intervention\Image\ImageServiceProvider’,
Onder “aliases” plak je deze regel: ‘Image’ => ‘Intervention\Image\Facades\Image’,
Vervolgens kan je aan de slag!
Hieronder een heel simpel voorbeeld van een route die een afbeelding van internet plukt, deze herschaalt en vervolgens opslaat:
Route::get('/test', function() { // ophalen afbeelding $image = Image::make(file_get_contents('http://s.numrush.nl/wp-content/uploads/2014/06/m1mxnmxa2269_wd1280.jpg')); // resize de afbeelding naar een breedte van 500px en behoudt de aspect ratio (auto height) $image->resize(500, null, function ($constraint) { $constraint->aspectRatio(); }); // opslaan afbeelding $pad = public_path().'/images/'; $naam = 'test.jpg'; $image->save($pad . $naam); return $image->response(); });
