Création image gd2

Description

Bonjour, cette source n'est pas très utile mais je l'ai faite pour moi.

Il se peut qu'il y est des ressemblance avec d'autres sources vue que c'est super simple à mettre en place...

Maintenant, je le met là pour ceux ne connaissant pas beaucoup la création d'image php grâce à la librarie GD2.

Si vous utiliser qu'une seul fois cette fonction par page, vous pouvez enlever la dernière variable :D

Par PyroFrissons ou Mr Blagues --> Mes deux Pseudos

Source / Exemple :


// Inclure la page qui a la fonction
<?php include "function_image.php"; ?> 

// Code à insérer dans la page souhaité
<?php affiche('mon_image','ext_image','ext_final',true,false,'gauche','haut',100,10,0,10,1); ?> // 1° image
<?php affiche('mon_image','ext_image','ext_final',false,true,'centre','milieu',50,10,0,10,2); ?> // 2° image
<?php affiche('mon_image','ext_image','ext_final',true,true,'droite','bas',0,10,0,10,3); ?> // 3° image et etc...

// Page PHP contenant la fonction ::

<?php
function IsIE(){
	$navigator_user_agent = strtolower( $_SERVER['HTTP_USER_AGENT'] );
	if (stristr($navigator_user_agent, 'msie 4')||stristr($navigator_user_agent, 'msie 5')||stristr($navigator_user_agent, 'msie 6')){
		return 'msie';
	}else{ return 'pas-msie'; }
}
function affiche($fichier, $format, $format2, $couleur, $couleur2, $posx, $posy, $translucide, $un, $deux, $trois, $i){
	$taillexcopy = 50;
	$tailleycopy = 50;
	if($format == '' or $format2 == ''){ $prob = 1; }else{ $prob = 0; }
	if($prob == 1){
		echo '<img src="img_site/pb.png">';
	}else{
		if($format == 'jpeg' or $format == 'jpg'){
			$image = imagecreatefromjpeg($fichier.'.'.$format);
		}else if($format == 'gif'){
			$image = imagecreatefromgif($fichier.'.'.$format);
		}else if($format == 'png'){
			$image = imagecreatefrompng($fichier.'.'.$format);
		}
		$img_x = imagesx($image);
		$img_y = imagesy($image);
		$img_plus = 'image'.$i.'.'.$format2;
		if($couleur == true){
			$transparent = imagecolorallocate($image, $un, $deux, $trois);
			imagecolortransparent($image, $transparent);
		}
		$imgcopy = imagecreatefrompng('copyright.png'); // Image PNG
		//$imgcopy = imagecreatefromjpeg('copyright.jpg'); // Image JPG
		//$imgcopy = imagecreatefromgif('copyright.gif'); // Image GIF
		$imgcopy_x = imagesx($imgcopy);
		$imgcopy_y = imagesy($imgcopy);
		$image_plus = imagecreate($taillexcopy,$tailleycopy);
		if($posx == 'gauche'){ $xcopy = 0; }else if($posx == 'centre'){ $xcopy = ( $img_x - $taillexcopy ) / 2; }else if($posx == 'droite'){ $xcopy = $img_x - $taillexcopy; }
		if($posy == 'haut'){ $ycopy = 0; }else if($posy == 'milieu'){ $ycopy = ( $img_y - $tailleycopy ) / 2; }else if($posy == 'bas'){ $ycopy = $img_y - $tailleycopy; }
		ImageCopyResampled($image_plus, $imgcopy, 0, 0, 0, 0, $taillexcopy, $tailleycopy, $imgcopy_x, $imgcopy_y);
		if($couleur2 == true){
			$transparent = imagecolorallocate($image_plus, $un, $deux, $trois);
			imagecolortransparent($image_plus, $transparent);
		}
		imagecopymerge($image, $image_plus, $xcopy, $ycopy, 0, 0, $taillexcopy, $tailleycopy, $translucide);
		if (IsIE() == 'msie'){ imagetruecolortopalette($image, true, 16777216); }
		if($format2 == 'jpeg' or $format2 == 'jpg'){
			imagejpeg($image, $img_plus, 100);
		}else if($format2 == 'gif'){
			imagegif($image, $img_plus, 100);
		}else if($format2 == 'png'){
			imagepng($image, $img_plus, 100);
		}
		echo '<img src="'.$img_plus.'" width="'.$img_x.'" height="'.$img_y.'">';
		imagedestroy($image);
	}
}
?>

Conclusion :


Explications ::

<?php affiche('mon_image','ext_image','ext_final',true,true,'droite','bas',60,10,0,10,2); ?> // 2° image

Mon_image :: Ce n'est que le nom du fichier sans son extension.
Ext_image :: C'est l'extension de 'mon_image'.
Ext_final :: C'est l'extension voulu pour l'image qui sera créée.
droite et bas :: Position du logo CopyRight, (x :: gauche,centre,droite ; y :: haut,milieu,bas ;)
True ou False :: Choisir si la transparence est activé ou pas (de 'mon_image').
True ou False :: Choisir si la transparence est activé ou pas (de 'copyright').
10,0,10 :: Choix de la couleur à rendre transparente (mettre '0,0,0' et false pour aucune transparence).
1,2,3,... :: Ce sont les chiffres qui numérotent les images pour ne pas changer la même image.

Voilà, amusez-vous bien. (C'est fait en 30 min ;)

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.