Symfony, upload immagini nell’ Admin generator

Per poter definire un campo di tipo upload in una form nell’applicazione creata con l’Admin Generator di Symfony è sufficiente modificare la form relativa al model interessato.

Nel metodo configure della form inserire queste righe:

  public function configure()
  {
    parent::configure();

    $this->widgetSchema['pic'] = new sfWidgetFormInputFileEditable(array(
      'label'     => 'Moodboard Image',
      'file_src'  => '/uploads/immagini/'.$this->getObject()->getPic(),
      'is_image'  => true,
      'edit_mode' => !$this->isNew(),
      'template'  => '
%file% %input% %delete% %delete_label%
', )); $this->validatorSchema['pic'] = new sfValidatorFile(array( 'required' => false, 'path' => sfConfig::get('sf_upload_dir').'/immagini/', 'mime_types' => 'web_images', )); $this->validatorSchema['pic_delete'] = new sfValidatorPass(); }

Dove ‘pic’ indica il nome del campo interessato (l’attributo del model e/o colonna della tabella del database).

Modificare anche il nome del metodo : getPic() (sostituendolo con il nome del metodo che corrisponde all’attributo del model e/o colonna della tabella del Database.

Annunci

Image Magick: rimozione automatica del colore di sfondo

Con il comando convert di Image Magick è possibile rimuovere il colore di sfondo di una immagine.
In pratica il colore di sfondo viene rimpiazzato con una trasparenza.
Il link in cui viene spiegato come fare è:
http://www.imagemagick.org/Usage/channels/#mask_floodfill

In particolare ho provato questo e, nel mio caso, ha funzionato egregiamente:

 convert immagine_di_partenza.png -bordercolor white -border 1x1 -matte \
          -fill none -fuzz 20%  -draw 'matte 0,0 floodfill' \
          -shave 1x1 immagine_con_trasparenza.png
%d blogger hanno fatto clic su Mi Piace per questo: