[Spip-es]Controlar tama ñ o im á genes

From : joseluis@... , the 27th November 2004 19:26
  • 2004-11-27 19:26:23 — joseluis@... - [Spip-es]Controlar tama ñ o im á genes

A las buenas spiperas y spiperos del mundo. Ando liado tratando de adaptar un filtro que utilizaba con el 1.7.2 (y que ha dejado de funcionar con el 1.8b2) para que fuera cual fuera el tamaño original de las imágenes subidas e incluidas en los artículos no rebasara un valor y no se destrozara el esqueleto. No me sirve el reduire_logo, ya he probado, pues no modifica el tamaño de las imágenes que hay "dentro" del artículo, sólo los logos. Después de refundirlo, simplificarlo, revisarlo,... he conseguido que me funcione unas  veces sí y otras no y no encuentro por qué. En estos enlace funciona (podéis cliquear en las imágenes y las veréis más grandes): http://www.craaltaribagorza.org/article.php3?id_article=272 http://www.craaltaribagorza.org/article.php3?id_article=98 Y en este enlace, o en sommaire, no me funciona: http://www.craaltaribagorza.org/article.php3?id_article=287 Si podéis echarle un vistazo y apuntar alguna modificación os lo agradeceré. La función a colocar en mes_fonctions.php3 sería: // =========== REDUCIR TAMAÑO IMÁGENES // filtro que reduce el tamaño de las imágenes si sobrepasa un ancho dado y puede crear un enlace al original // REVISIÓN Y REFUNDIDO DEL ARTÍCULO Y DE LOS COMENTARIOS AÑADIDOS EN: // http://www.spip-contrib.net/article.php3?id_article=251 // para que funcione con spip 1.8b2 // Se utiliza así [(#TEXTE|reducir_imagen{350,1})] // El primer valor límita el ancho y el segundo determina si queremos que se cree enlace a la imagen a tamaño original o no. Si lo dejamos a 0 no lo crea function reducir_imagen($string, $maximo=0, $enlace=0) {     $reg = "/]+)>/";     preg_match_all ($reg, $string, $matches);     $to_return = $string;     for ($i=0; $i0)  //si la imagen está guardada en la base...                 {                     if ($ancho_imagen>=$maximo) //si es más grande que el límite establecido en $maximo...                     {                         $ancho_nuevo = $maximo;                         $alto_nuevo = round($maximo*($alto_imagen/$ancho_imagen));                                                 if ($enlace==1) // si queremos enlace con la imagen a tamaño original la puede mostrar en una ventana independiente...                             {                                 $enlace_ini = '';                                 $enlace_fin = "";                             }                                             $param = "height=\"".$alto_nuevo."\" width=\"".$ancho_nuevo."\"";                       }                       else                       {                       $param = "";                       }                 }         $to_return = preg_replace("",$enlace_ini."".$enlace_fin,$to_return,1);         }              }     return $to_return; } // ================================ FIN REDUCIR TAMAÑO IMÁGENES