LiipImagineBundle and BinaryFileResponse
You could apply the filter before returning the response. This solution is not efficient however, because it applies the fitler on every request, so utilize the CacheManager
in the bundle. (I'm still figuring out if it works for non-public images.)
/** * @Route("/protected/images/{filename}", name="protected_image") */public function getProtectedimage($filename){ //.. logic .. /** @var \Liip\ImagineBundle\Binary\Loader\FileSystemLoader $loader */ $loader = $this->get('liip_imagine.binary.loader.filesystem'); /** @var \Liip\ImagineBundle\Imagine\Filter\FilterManager $filterManager */ $filterManager = $this->get('liip_imagine.filter.manager'); $filteredImageBinary = $filterManager->applyFilter( $loader->find('path/to/image'), 'my_thumb_filter' ); return new Response($filteredImageBinary->getContent(), 200, array( 'Content-Type' => $filteredImageBinary->getMimeType(), ));}