Laravel Proximage: A Handy Package for Proxying Images
Published on by Paul Redmond
Laravel Proximage is a handy package by Ilya Sakovich for proxying images through images.weserve.nl. The package provides you convenience methods for generating URLs with a fluent API for image transformations.
If you want to cache your images via the images.weserve.nl proxy you can use the proxyimage()
helper:
$imageUrl = 'ory.weserv.nl/lichtenstein.jpg'; >>> (string) proximage($imageUrl);images.weserv.nl/?url=ory.weserv.nl/lichtenstein.jpg
If you wanted to resize the image, you can use the object’s width()
method:
$imageUrl = 'ory.weserv.nl/lichtenstein.jpg'; >>> (string) proximage($imageUrl)->width(300);images.weserv.nl/?url=ory.weserv.nl/lichtenstein.jpg&w=300
And finally, here’s an example of cropping and transforming images:
use Coderello\Proximage\Enums\Parameter; proximage($imageUrl) ->crop(Parameter\CropAlignment::CENTER) ->transformation(Parameter\Transformation::SQUARE);
The images.weserv.nl service (that this package relies on) uses Cloudflare which means images are cached and delivered from over 150+ global datacenter. You can reference the official documentation for a complete list of transformations available as well as examples of how each setting affects the original source image.
To get complete installation instructions and the latest documentation of the Proximage Laravel package, check out the coderello/laravel-proximage GitHub repository. The Proximage package has tons of transformations available and makes for a quick and easy way to get image transformations within a Laravel project.