Exemplo n.º 1
0
/**
 * Réduit les images à une taille maximale (inscrite dans un rectangle)
 * 
 * L'image possède un côté dans les dimensions indiquées et
 * l'autre côté (hauteur ou largeur) de l'image peut être plus petit
 * que les dimensions du rectangle.
 *
 * Peut être utilisé pour réduire toutes les images d'un texte.
 *
 * @example
 *     ```
 *     [(#LOGO_ARTICLE|image_reduire{130})]
 *     [(#TEXTE|image_reduire{600,0})]
 *     ```
 * @see image_reduire_par()
 * @see image_passe_partout()
 *
 * @param string $img
 *     Chemin de l'image ou texte
 * @param int $taille
 *     - Largeur maximale en pixels désirée
 *     - -1 prend la taille de réduction des vignettes par défaut
 *     - 0 la taille s'adapte à la largeur
 * @param int $taille_y
 *     - Hauteur maximale en pixels désirée
 *     - -1 pour prendre pareil que la largeur
 *     - 0 la taille s'adapte à la hauteur
 * @param bool $force
 * @param bool $cherche_image
 * @param string $process
 * @return string
 *     Code HTML de l'image ou du texte.
**/
function image_reduire($img, $taille = -1, $taille_y = -1, $force = false, $cherche_image = false, $process = 'AUTO')
{
    // Determiner la taille x,y maxi
    // prendre le reglage de previsu par defaut
    if ($taille == -1) {
        $taille = (isset($GLOBALS['meta']['taille_preview']) and intval($GLOBALS['meta']['taille_preview'])) ? intval($GLOBALS['meta']['taille_preview']) : 150;
    }
    if ($taille_y == -1) {
        $taille_y = $taille;
    }
    if ($taille == 0 and $taille_y > 0) {
        $taille = 10000;
    } elseif ($taille > 0 and $taille_y == 0) {
        $taille_y = 10000;
    } elseif ($taille == 0 and $taille_y == 0) {
        return '';
    }
    $fonction = array('image_reduire', func_get_args());
    return process_image_reduire($fonction, $img, $taille, $taille_y, $force, $cherche_image, $process);
}
Exemplo n.º 2
0
function image_reduire($img, $taille = -1, $taille_y = -1, $force=false, $cherche_image=false, $process='AUTO') {
	// Determiner la taille x,y maxi
	// prendre le reglage de previsu par defaut
	if ($taille == -1)
		$taille = isset($GLOBALS['meta']['taille_preview'])?$GLOBALS['meta']['taille_preview']:150;
	if ($taille_y == -1)
		$taille_y = $taille;

	if ($taille == 0 AND $taille_y > 0)
		$taille = 100000; # {0,300} -> c'est 300 qui compte
	elseif ($taille > 0 AND $taille_y == 0)
		$taille_y = 100000; # {300,0} -> c'est 300 qui compte
	elseif ($taille == 0 AND $taille_y == 0)
		return '';

	$fonction = array('image_reduire', func_get_args());
	return process_image_reduire($fonction,$img,$taille,$taille_y,$force,$cherche_image,$process);
}