redimensionner les logos automatiquement

ainsi on peut faire un filtre : [(#LOGO_ARTICLE|redim(100))]

sinon, je m'y colle.

J'ai, mais faut me laisser un peu de temps pour le mettre en contrib (avec
qq autres) sur SIP-contrib

C'est proposé à la publication dans SPIP-Contrib (article 110)

A+

-- Roustoubi

Bon après quelques recherches, j'ai trouvé un script pas mal :

l'appel de la fonction se fait de la m^me façon que pour notre ami roustoubi
:

[<img
src="IMG/(#LOGO_RUBRIQUE|fichier)"][(#LOGO_RUBRIQUE|fichier|redim_img{120,12
0})>]

-----------------le script à coller dans mes fonctions
:------------------------

function Redim_Img( $image, $newWidth, $newHeight){

// détection du type de l'image
$image = "Img/$image";
eregi("(...)$",$image,$regs); $type = $regs[1];
switch($type){
case "gif": $srcImage = @imagecreatefromgif( $image ); break;
case "jpg": $srcImage = @imagecreatefromjpeg( $image ); break;
case "png": $srcImage = @imagecreatefrompng( $image ); break;
default : unset($type); break;}

if($srcImage){

// hauteurs/largeurs
$srcWidth = imagesx( $srcImage );
$srcHeight = imagesy( $srcImage );
$ratioWidth = $srcWidth/$newWidth;
$ratioHeight = $srcHeight/$newHeight;

// taille maximale dépassée ?
if (($ratioWidth > 1) || ($ratioHeight > 1)) {
if( $ratioWidth < $ratioHeight){
$destWidth = $srcWidth/$ratioHeight;
$destHeight = $newHeight;
}else{
$destWidth = $newWidth;
$destHeight = $srcHeight/$ratioWidth;}
}else {$destWidth = $srcWidth; $destHeight = $srcHeight;}

// resize
$destImage = imagecreate( $destWidth, $destHeight);
imagecopyresized( $destImage, $srcImage, 0, 0, 0, 0, $destWidth,
$destHeight,
                                                     $srcWidth,
$srcHeight );

// nom du fichier
$dest_file = $image ;
// création et sauvegarde de l'image finale
/* Ici on peut éditer le chemin de sauvegarde ($dest_file) */
switch($type){
case "gif": @imagegif($destImage, $dest_file); break;
case "jpg": @imagejpeg($destImage, $dest_file); break;
case "png": @imagepng($destImage, $dest_file); break;}

// libère la mémoire
imagedestroy( $srcImage );
imagedestroy( $destImage );

// renvoit l'URL de l'image
return $dest_file;}

// erreur
else {echo "Image inexistante ou aucun support ";
        if ($type){echo "pour le format $type";}
        else {echo "pour ce format de fichier";}
exit();}}

------------------------fin du script-------------------------------

-----Message d'origine-----
De : spip-bounces+js.barboteu=laposte.net@rezo.net
[mailto:spip-bounces+js.barboteu=laposte.net@rezo.net]De la part de
Roustoubi
Envoyé : mercredi 16 avril 2003 14:23
À : jeansebastien.barboteu@laposte.net; aurelien.levy@wanadoo.fr
Cc : gabriel.zeta@free.fr; spip@rezo.net
Objet : Re: [Spip] redimensionner les logos automatiquement

ainsi on peut faire un filtre : [(#LOGO_ARTICLE|redim(100))]

sinon, je m'y colle.

J'ai, mais faut me laisser un peu de temps pour le mettre en contrib (avec
qq autres) sur SIP-contrib

C'est proposé à la publication dans SPIP-Contrib (article 110)

A+

-- Roustoubi

_______________________________________________
liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net
Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Documentation de SPIP : http://www.uzine.net/spip