/** * Enregistre la miniature de l'illustration sur le serveur. * * @param \Lyssal\CollectionBundle\Entity\Illustration $illustration Illustration originale * @return \Lyssal\Image L'image miniature créée */ protected function createImageMiniature(Illustration $illustration) { $imageOriginale = new Image($this->kernelRootDir . '/../web/' . $illustration->getImageChemin()); $imageMiniature = $imageOriginale->copy($this->kernelRootDir . '/../web/' . $illustration->getImageChemin(), false); if (null === $imageMiniature) { throw new \Exception('Impossible d\'enregistrer la miniature.'); } if ($imageMiniature->getLargeur() > $imageMiniature->getHauteur()) { $imageMiniature->redimensionne(Illustration::$MINIATURE_LARGEUR_MAXIMALE, null); } else { $imageMiniature->redimensionne(null, Illustration::$MINIATURE_HAUTEUR_MAXIMALE); } return $imageMiniature; }
/** * Enregistre l'icône sur le disque. * * @return void */ protected function uploadIcone() { // Si notre ancien icône 16px existe, on le supprime if (null !== $this->icone && file_exists($this->getIcone16Url())) { unlink($this->getIcone16Url()); } // On enregistre la nouvelle icône $this->saveIcone(false); // On minifie le nom du fichier avec le nom de l'entité $icone = new Image($this->getIconeChemin()); $icone->setNomMinifie($this->nom, '-', true, 64); $this->icone = $icone->getNom(); // On copie l'icône pour le 16px $icone16 = $icone->copy($this->getIcone16Url(), false); // On redimensionne correctement nos icônes $icone->redimensionne(32, 32); $icone16->redimensionne(16, 16); }
/** * Enregistre l'icône sur le disque. * * @return void */ protected function uploadIcone() { if ('' != $this->icone && file_exists($this->getIcone32Url())) { unlink($this->getIcone32Url()); } if ('' != $this->icone && file_exists($this->getIcone16Url())) { unlink($this->getIcone16Url()); } $this->saveIcone(false); // On minifie le nom du fichier avec le nom de l'entité $icone = new Image($this->getIconeChemin()); $icone->setNomMinifie($this->nom, '-', true, 32); $this->icone = $icone->getNom(); $icone32 = $icone->copy($this->getIcone32Url(), false); $icone16 = $icone->copy($this->getIcone16Url(), false); $icone->redimensionne(128, 128); $icone32->redimensionne(32, 32); $icone16->redimensionne(16, 16); }
/** * Enregistre l'icône sur le disque. * * @return void */ protected function uploadIcone() { if (null !== $this->icone && file_exists($this->getIcone16Url())) { unlink($this->getIcone16Url()); } $this->saveIcone(false); $icone = new Image($this->getIconeChemin()); $icone->setNomMinifie($this->nom, '-', true, 64); $this->icone = $icone->getNom(); $icone16 = $icone->copy($this->getIcone16Url(), false); $icone->redimensionne(32, 32); $icone16->redimensionne(16, 16); }