29-11-2011 : Remettre dans le débat politique les principes du Conseil National de la Résistance
29-01-2012 : Parce que nous sommes un peuple debout, agissons pour rester dignes et responsables !
Logo de mon site
Logo de mon site
Faire un don

Luxpopuli / eZ Publish / Trucs & astuces / Playlist automatique : filtre d'ombre ImageMagick - III





Right menu

Logo du site ez.no  Logo XHTML 1.O du W3C  Logo XHTML 1.O du W3C  Site francophone officiel de Firefox

Playlist automatique : filtre d'ombre ImageMagick - III

Date de publication: le jeudi 14 mai 2009 à 17h36
Dernière modification: par Pascal BOYER le vendredi 15 mai 2009 à 21h58
« Article précédent: Playlist automatique : arborescence, classes d'objet et extension eZ Multiupload - II
» Article suivant: Playlist automatique : créer les templates et leur surcharges - IV

Créer un filtre shadow ImageMagick

Avant de créer l'arborescence telle qu'indiquée par les figures 1 et 1b du précédent article, nous allons créer un filtre ImageMagick qui produira automatiquement l'ombre de la jaquette.

Je considère bien sûr que le logiciel ImageMagick est installé sur votre serveur. Si ce n'est pas le cas et qu'il ne vous est pas possible de remédier à cette situation, l'ombre devra alors être créée à la main avec Gimp par exemple.

Quelques liens utiles à propos de ImageMagick:

ImageMagick est-il installé ?

Pour répondre à cette question, plusieurs possibilités s'offrent à vous:

  • Lancer la commande:

dpkg -l |grep imagemagick

ii  imagemagick     7:6.5.1.0-1   image manipulation programs
  • Contrôler la valeur du tableau ImageConverters[] de la section [ImageConverterSettings] du fichier de configuration image.ini:
ImageConverters[]
ImageConverters[]=ImageMagick
ImageConverters[]=GD
  • Créer à la racine de eZ Publish un fichier phpinfo.php contenant ces lignes:
<?php
phpinfo();
?>

Puis lancer l'URI suivante: http://monsite.fr/phpinfo.php
Dans la page qui s'affiche alors vous devriez voir ceci:

Définir le filtre

Le filtre doit être défini dans le fichier de surcharge image.ini.append.php du siteaccess public:

[AliasSettings]
AliasList[]=jaquette    <== Alias du filtre
AliasList[]=ombrejaquette  <== Alias du filtre
 
[jaquette]   <== Nouvelle section portant le nom de l'alias du filtre
Filters[]
Filters[]=geometry/scaledownonly=190;190  <== filtre appliqué: l'image de la jaquette est réduite à 190x190 pixels (ATTENTION: les rapports seront conservés)
 
[ombrejaquette]  <== Nouvelle section portant le nom de l'alias du filtre
Filters[]
Filters[]=geometry/scaledownonly=190;190  <== premier filtre appliqué: l'image de la jaquette est réduite à 190x190 pixels (ATTENTION: les rapports seront conservés)
Filters[]=withshadow=   <== deuxième filtre appliqué: création de l'ombre de la jaquette
 
[ImageMagick]  <== Sous cette section on définit les filtres# C'est le paramètre -blur 8x2 qui définit la longeur de diffusion de l'ombre
# Le paramètre multiply .90 indique le degré de transparence de l'ombre
Filters[]=withshadow=-matte -bordercolor none -border 8  -repage +1+1! -channel A -virtual-pixel transparent -blur 8x1 -evaluate multiply .70 +channel -fill black -colorize 100%  <== C'est le filtre qui crée l'ombre
 
 
Filters[]=geometry/scaledownonly=-geometry %1x%2>  <== le filtre « geometry/scaledownonly » est prédéfini

Après avoir créé le fichier de surcharge settings/siteaccess/ votre_siteaccess_public/ image.ini.append.php videz tous les caches.

Quelques points d'éclaircissement

  • Pour que le résultat de l'application du filtre withshadow fonctionne, il est nécessaire que les images des jaquettes soient au format PNG.
  • Le filtre geometry/scaledownonly conservant le rapport des proportions de l'image, il est nécessaire d'uploader des images de jaquettes carrées.
    Par défaut, lorsque l'on ripe un CD du commerce, existe, en plus des pistes audio ripées, des fichiers image de la jaquette de l'album. La plupart du temps, une image 200x200 pixels est présente. C'est cette dernière qu'il faut uploader à partir de la classe d'objet album.
  • Comme nous le verrons dans le prochain article, l'image de la jaquette et de son ombre est constituée de deux images distinctes obtenues à partir de la même image uploadée de 200x200.
    • Une première image sera celle de la jaquette réduite au format 190x190. C'est l'application du filtre geometry/scaledownonly à l'image téléchargée qui permet d'obtenir ce résultat.
    • Une deuxième image sera celle de l'ombre obtenue en appliquant à l'image téléchargée le filtre geometry/scaledownonly puis le filtre withshadow.

Créer l'arborescence

Vous pouvez à présent créer l'arborescence illustrée par les figures 1 et 1b du précédent article.

:
Pour affecter des icônes personnalisées à vos nouvelles classes d'objet, reportez-vous à cet article: eZ Publish : icônes de l'interface d'administration

Commentaires