2016-04-20 6 views
1

Wir verwenden Symfony2 und den LiipImagineBundle, um Thumbnails von vom Nutzer hochgeladenen Inhalten zu erstellen.liip imagine bundle Erstellen von Thumbnails, die alle die gleiche Dateigröße haben

Jedes Thumbnail ist genau 161kb, egal wie viel oder wie wenig es im Bild hat.

Hier ist meine Config-Datei für Liip:

liip_imagine: 
    resolvers: 
     default: 
      web_path: ~ 
    filter_sets: 
     my_thumb: 
      quality: 75 
      filters: 
       thumbnail: { size: [80, 80], mode: outbound } 
     productvariant_preview: 
      filters: 
       resize: { size: [450, 450] } 
     productvariant_thumb: 
      filters: 
       resize: { size: [292, 292] } 
     productvariantdesign_thumb: 
      filters: 
       resize: { size: [231, 231] } 
     profiledesign_thumb: 
      filters: 
       resize: { size: [200, 200] } 
     asseenindesign_thumb: 
      filters: 
       resize: { size: [158, 158] } 
     homepage_slider: 
      filters: 
       resize: { size: [922, 388] } 
     homepage_featuredlink: 
      filters: 
       resize: { size: [450, 260] } 
     homepage_secondaryfeaturedlink: 
      filters: 
       resize: { size: [294, 188] } 
     homepage_productvariantdesign: 
      filters: 
       resize: { size: [223, 223] } 
     printcolor_thumbnail: 
      filters: 
       resize: { size: [30, 30] } 

Resize Filter:

namespace Imagine\Filter\Basic; 

use Imagine\Filter\FilterInterface; 
use Imagine\Image\ImageInterface; 
use Imagine\Image\BoxInterface; 

/** 
* A resize filter 
*/ 
class Resize implements FilterInterface 
{ 
    /** 
    * @var BoxInterface 
    */ 
private $size; 
private $filter; 

/** 
* Constructs Resize filter with given width and height 
* 
* @param BoxInterface $size 
* @param string  $filter 
*/ 
public function __construct(BoxInterface $size, $filter = ImageInterface::FILTER_UNDEFINED) 
{ 
    $this->size = $size; 
    $this->filter = $filter; 
} 

/** 
* {@inheritdoc} 
*/ 
public function apply(ImageInterface $image) 
{ 
    return $image->resize($this->size, $this->filter); 
} 
} 

Dank!

+1

Welche Art von Filter ist "resize"? Es ist nicht in der offiziellen Dokumentation erwähnt - gibt es nur relative_resize Filter (http://symfony.com/doc/current/bundles/LiipImagineBundle/filters.html)? – Miro

+0

Ich habe den Code für den Filter in der Frage hinzugefügt. – Jeremy

+0

@ Jeremy, darüber spricht Miro nicht. Der eingebaute Filter für die relative Größenänderung wird 'relative_resize' und nicht' resize' genannt –

Antwort

0

ich nicht zu 100% wissen, was passiert war, aber das Hinzufügen

Treiber: imagick

das Problem behoben.

Verwandte Themen