|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
FILIGRANE D'UNE IMAGE
Information sur la source
Description
Ce code utilise libGD pour appliquer un logo en filigrane sur une image de type GIF, PNG ou JPEG Tout est commenté dans le code, Tout est commenté dans le code, les dimensions en paramétres sont respectivement la largueur et la hauteur du cadre d'affichage pour calculer le ratio.
Source
- <?
-
- //Cette fonction sert à filigraner les visuels
- //Le paramètre img_src est l'image source ici le visuel
- //Le second paramètre img_cop est le copyright à superposer
- //Les parametres $taillelarg et $taillehaut sont respectivement la largueur et la hauteur d'affichage souhaitée
- //c'est parti !!!
-
- function filigrane($img_src,$img_cop,$taillelarg,$taillehaut)
- {
-
- //largueur de l'affichage
- $taille_larg=$taillelarg;
- //hauteur de l'affichage
- $taille_haut=$taillehaut;
-
- //récuperation de l'extension
- $extension = strrchr($img_src,'.');
-
- switch($extension){
- case ".gif":
- $image_s=imagecreatefromgif($img_src) or die("Erreur à l'ouverture");break;
- case".png":
- $image_s=imagecreatefrompng($img_src) or die("Erreur à l'ouverture");break;
- case ".jpg"||".jpeg"||".jpe":
- $image_s=imagecreatefromjpeg($img_src) or die("Erreur à l'ouverture");break;
- }
-
- //récuperation des dimensions de l'image principale
- $width=imagesx($image_s);
- $height=imagesy($image_s);
-
- //redimention de l'image source
- if($width>=$height) //visuel horizontal
- {
- $ratio=max($width/$taille_larg, $height/$taille_haut);
- $new_width=$taille_larg;
- $new_height=$height/$ratio;
- }
- else //visuel vertical
- {
- $ratio=max($width/$taille_larg, $height/$taille_haut);
- $new_width=$width/$ratio;
- $new_height=$taille_haut;
- }
-
- //création de l'image source redimentionnée
- $thumb=imagecreatetruecolor($new_width,$new_height);
- imagecopyresized($thumb,$image_s,0,0,0,0,$new_width,$new_height,$width,$height);
-
- //dimensions de l'image principale redimentionnée
- $width_thumb=imagesx($thumb);
- $height_thumb=imagesy($thumb);
-
- //création de l'image copyright
- $image_c=imagecreatefrompng($img_cop);
-
- //récuperation des dimensions de l'image du copyright
- $larg_cop=imagesx($image_c);
- $long_cop=imagesy($image_c);
-
- //calcul la position du copyright sur l'axe des abscisses
- $x=($width_thumb-$larg_cop)/2;
-
- //calcul la position du copyright sur l'axe des ordonnées
- $y=($height_thumb-$long_cop)/2;
-
- //réalisation de la superposition
- imagecopymerge($thumb,$image_c, $x, $y, 0, 0, $larg_cop, $long_cop, 60);
-
- //sauvegarde de l'image
- switch($extension){
- case ".gif":
- imagegif($thumb,"./"."fili-".$img_src) or die ("Erreur de création");
- break;
- case".png":
- imagepng($thumb,"./"."fili-".$img_src) or die ("Erreur de création");
- break;
- case ".jpg"||".jpeg"||".jpe":
- imagejpeg($thumb,"./"."fili-".$img_src) or die ("Erreur de création");
- break;
- }
-
- //libération de la mémoire
- imagedestroy($image_s);
- }
-
- //appel de la fonction
- filigrane('F14.jpg','./ub/logoub.png',800,600);
-
- ?>
<?
//Cette fonction sert à filigraner les visuels
//Le paramètre img_src est l'image source ici le visuel
//Le second paramètre img_cop est le copyright à superposer
//Les parametres $taillelarg et $taillehaut sont respectivement la largueur et la hauteur d'affichage souhaitée
//c'est parti !!!
function filigrane($img_src,$img_cop,$taillelarg,$taillehaut)
{
//largueur de l'affichage
$taille_larg=$taillelarg;
//hauteur de l'affichage
$taille_haut=$taillehaut;
//récuperation de l'extension
$extension = strrchr($img_src,'.');
switch($extension){
case ".gif":
$image_s=imagecreatefromgif($img_src) or die("Erreur à l'ouverture");break;
case".png":
$image_s=imagecreatefrompng($img_src) or die("Erreur à l'ouverture");break;
case ".jpg"||".jpeg"||".jpe":
$image_s=imagecreatefromjpeg($img_src) or die("Erreur à l'ouverture");break;
}
//récuperation des dimensions de l'image principale
$width=imagesx($image_s);
$height=imagesy($image_s);
//redimention de l'image source
if($width>=$height) //visuel horizontal
{
$ratio=max($width/$taille_larg, $height/$taille_haut);
$new_width=$taille_larg;
$new_height=$height/$ratio;
}
else //visuel vertical
{
$ratio=max($width/$taille_larg, $height/$taille_haut);
$new_width=$width/$ratio;
$new_height=$taille_haut;
}
//création de l'image source redimentionnée
$thumb=imagecreatetruecolor($new_width,$new_height);
imagecopyresized($thumb,$image_s,0,0,0,0,$new_width,$new_height,$width,$height);
//dimensions de l'image principale redimentionnée
$width_thumb=imagesx($thumb);
$height_thumb=imagesy($thumb);
//création de l'image copyright
$image_c=imagecreatefrompng($img_cop);
//récuperation des dimensions de l'image du copyright
$larg_cop=imagesx($image_c);
$long_cop=imagesy($image_c);
//calcul la position du copyright sur l'axe des abscisses
$x=($width_thumb-$larg_cop)/2;
//calcul la position du copyright sur l'axe des ordonnées
$y=($height_thumb-$long_cop)/2;
//réalisation de la superposition
imagecopymerge($thumb,$image_c, $x, $y, 0, 0, $larg_cop, $long_cop, 60);
//sauvegarde de l'image
switch($extension){
case ".gif":
imagegif($thumb,"./"."fili-".$img_src) or die ("Erreur de création");
break;
case".png":
imagepng($thumb,"./"."fili-".$img_src) or die ("Erreur de création");
break;
case ".jpg"||".jpeg"||".jpe":
imagejpeg($thumb,"./"."fili-".$img_src) or die ("Erreur de création");
break;
}
//libération de la mémoire
imagedestroy($image_s);
}
//appel de la fonction
filigrane('F14.jpg','./ub/logoub.png',800,600);
?>
Conclusion
Ce code est complétement libre modifiez-le comme bon vous semble.
Historique
- 04 avril 2006 23:42:00 :
- Précision sur les paramétres
Sources de la même categorie
Sources en rapport avec celle ci
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
aperçu avant impression, ajouter une image [ par cciiia ]
BONJOUR,Voilà mon souci j'aimerai ajouter le logo de mon entreprise juste à l'inpression.Car le logo n'est pas sur ma page php.Je pense qu'i
Chemin de l'image dans mysql [ par fabienfsf ]
Bonjour,Je voudrais faire en faite j'ai cunçu une petite radio ou on peu ecouter une radio que l'on veut sur le net alord pour sa j'ai fait uneta
affichage d'une image [ par refkaben ]
Bonjour,Je developpe un site ou les utilisateurs ont un formulaire, dans lequel il va donner le chemin d'une image, cette image sera upploadée, p
lier le formulaire upload avec un autre formulaire [ par maxwellcs ]
Bonsoir a tous!! Déja une petite question est-il possible de rassembler dans un meme formulaire , un upload et des donnees a saisir?? Si la r&
php->pdf->probleme image [ par younes371 ]
Bonjour, J'ai trouvé un code ds phpcs qui m a été très utile pour mon application,j'ai pu afficher les resultats de la requette dans le tableau(Numero
Filigrane [ par PaTaTe ]
Bonjour,J'aimerais appliquer un filigrane répété sur une image mais je n'y arrive pas. Pour être plus précis, voici un exemple : j'ai une image toto.j
Protection d' image original [ par overbrave ]
Salut Dieu du code,Je sais qu'il existe toute sorte de script ou fonction permettant de bloquer le clique droit, etc ...Ces fonction sont sencé n
exif_thumbnail pas d' image [ par ImmortalPC ]
Salut, je compernds pas où est l'érreur, il y a pas d'image du tout. <?php $type = image_type_to_mime_type(IMAGETYPE_JPEG); header('Conte
afficher une gallerie photo avec vignette et description (php & mysql) [ par irrisson ]
bonjour tout le monde voici ce que j'essaye de réaliser j'essaye en php d'afficher une gallerie d'image ( image stocker dans un repertoire ) ave
Où est l'érreur ? (Image Miniature) [ par ImmortalPC ]
Salut, après avoir cherché une solution pour faire une image miniature en automatique j'ai finalement trouvé un script super Voici le s
|
Téléchargements
Logiciels à télécharger sur le même thème :
Comparez les prix Nouvelle version
|