Provides a wrapper around external image manipulation services. Currently supporting:
use CrowdReactive\CloudResizerBundle;
$resizer = new CloudResizerBundle\Services\CloudResizer;
// Setup providers
$cloudImage = new CloudResizerBundle\Provider\CloudImage(CLOUDIMAGE_TOKEN);
// Create filters for different purposes
$backgroundThumbnail = new CloudResizerBundle\CloudResizer\CloudImage\CloudImageFilter($cloudImage, ['height' => 200]);
$resizer->setFilter('background_thumb', $backgroundThumbnail);
$resizer->build('https://s3.amazonaws.com/.../uploads/background-123.png', 'background_thumb');
$resizer->build('https://s3.amazonaws.com/.../uploads/background-123.png', 'background_thumb', ['height' => 400]);
CloudResizer can be used as a Symfony bundle:
// app/AppKernel.php
public function registerBundles() {
return [
// ...
new CrowdReactive\CloudResizerBundle\CrowdReactiveCloudResizerBundle(),
];
}
# app/config/config.yml
services:
cloudresizer.provider.cloudimage:
class: CrowdReactive\CloudResizerBundle\Provider\CloudImage
args: [%cloudimage_token%]
crowdreactive_cloudresizerbundle:
filters:
background_thumb:
provider: @cloudresizer.provider.cloudimage
parameters:
height: 50
<img src="{{ page.style.background_image.url|cloudresizer('background_thumb') }}">
<img src="{{ page.style.background_image.url|cloudresizer('background_thumb', {'height': 50}) }}">