Fusion d'images + texte : style copyright, protégez vos images

Soyez le premier à donner votre avis sur cette source.

Vue 15 609 fois - Téléchargée 994 fois

Description

Permet de protéger ses images en y ajoutant une image (de votre choix) à une autre existante (ou créée par votre code) afin de la protéger.
il s'agit ds'un copyright à la manière de photostogo.com

En fait, je cherchais depuis plusieurs jours un code similaire pour l'ouverture d'un site en php et je l'ai pas trouvé lors j'ai bricolé ce code et je le mets à dispo.

Soyez indulgent, j'utilise php (sur krosoft) depuis quelques jours. Mon language de prédilection était plutot l'ASP (entre parenthèse, je trouve le PHP carrement mieux).

la bibliothèque GD doit être installer.

Source / Exemple :


<?php
/* Ce script permet d'ajouter du texte et une image à une autre image */
/* bibliothèque GD de rigueur */
/* A optimiser ?! Peut être ?! */

$texte="(c) 2003 Nom du site ou de l'artiste";	// texte inséré dans l'image.
$nomfichier="image_sortie.jpg";   // nom de l'image de sortie.
$qualite=100; 					// 0 à 100.
$fontpath="c:\windows\fonts\\";	// chemin de la police.
$nompolice="verdana.ttf";		// nom de la police.

//$gif = ImageCreate(150,110);  // pour ceux qui veulent créer l'image, dans ce cas là enlever le commentaire de cette ligne et mettre en commentaire les 4 lignes de code suivantes.

//on va chercher l'image principale  de test
$Image = "test_image.jpg"; //son nom.
$Source = "c:/inetpub/nom_du_site/"; //l'emplacement de votre image.
$jpg=imagecreatefromjpeg($Source.$Image); 
$size = getimagesize($Source.$Image); // $size[0] = largeur, $size[1] = hauteur.

//on va chercher l'image à fusionner
$Image2 = "demo.gif";
$Source2 = "c:/inetpub/nom_du_site/";
$gif=imagecreatefromgif($Source2.$Image2);

imagecopymerge ($jpg,$gif,0,0,0,0,152,118,20); //int  imagecopymerge ( resource   dst_im , resource   src_im , int   dst_x , int   dst_y , int   src_x , int   src_y , int   src_w , int   src_h , int   pct ) 
$bg = ImageColorAllocate($jpg,128,128,128);
$tx = ImageColorAllocate($jpg,255,255,255); //l'image et les couleurs RVB.
//ImageFilledRectangle($jpg,0,0,$size[0],$size[1],$bg); //au cas où vous voulez remplir l'image d'une couleur unie.
 
ImageTTFText ($jpg, 6, 0, 3, $size[1]-5, $tx, $fontpath.$nompolice ,$texte); //array  imagettftext ( resource   image , int   size , int   angle , int   x , int   y , int   color , string   fontfile , string   text )
header("content-type: image/jpeg"); //si cette ligne vous pose pb mlettez là en commentaire
ImageJPEG($jpg,$nomfichier,$qualite); //fichier de sortie
?>
<head>
<style type="text/css">
<!--
.style2 {
	font-size: 80px;
	font-weight: bold;
}
.style3 {font-size: 14px}
.style4 {font-family: Arial, Helvetica, sans-serif}
.style5 {font-size: 14px; font-family: Arial, Helvetica, sans-serif; }
-->
</style>
</head>
<body>
<table width="100" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td colspan="3"><div align="center" class="style4">Résultat du code : <br>
      <br>
    </div></td>
  </tr>
  <tr>
    <td><img src="test_image.jpg" width="150" height="110"></td>
    <td>&nbsp;<span class="style2">=></span>&nbsp;</td>
    <td><img src="image_sortie.jpg" width="150" height="110"></td>
  </tr>
  <tr>
    <td><div align="center" class="style4 style3"><strong>AVANT</strong></div></td>
    <td><div align="center" class="style5"><em>PHP</em></div></td>
    <td><div align="center" class="style5"><strong>APRES</strong></div></td>
  </tr>
</table> 
</body>

Conclusion :


code testé avec succès (cf.capture)

à sortir une version beaucoup plus élaborée pour un portail type phpnuke (gestionnaire de photo et album dynamique).

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
8
Date d'inscription
jeudi 29 mars 2007
Statut
Membre
Dernière intervention
25 février 2009

mais ou est la définition de la fonction imagecreatefromjpeg .
Messages postés
1
Date d'inscription
lundi 6 octobre 2003
Statut
Membre
Dernière intervention
23 janvier 2007

Bonjour, 4 ans après j'ai une question, comment peut on utiliser ton code avec une image dynamique, dont le nom du fichier provient d'une BDD? merci
Messages postés
29
Date d'inscription
jeudi 10 avril 2003
Statut
Membre
Dernière intervention
19 avril 2005

Pour redimensionner c'est un peu plus dur mais je suis en train de faire un code qui permette toutes ces opérations (adapté au portail dont je parle plus haut)

mais sur Nexen le code doit exister...
Messages postés
629
Date d'inscription
mercredi 3 juillet 2002
Statut
Membre
Dernière intervention
9 octobre 2006

a propos, comme les fonctions sur les gifs peuvent être virées... y'a pas moyen de redimensionner ?
et comment redimensionner du PNG ?
merci ;-)
Messages postés
29
Date d'inscription
jeudi 10 avril 2003
Statut
Membre
Dernière intervention
19 avril 2005

rapidement pour koko :
- la réponse est dans le code,
il faut rempalcer ça

//on va chercher l'image à fusionner
$Image2 = "demo.gif";
$Source2 = "c:/inetpub/nom_du_site/";
$gif=imagecreatefromgif($Source2.$Image2);

par

//on va chercher l'image à fusionner
$Image2 = "demo.jpg";
$Source2 = "c:/inetpub/nom_du_site/";
$gif=imagecreatefromjpeg($Source2.$Image2);

pour la transparence, prévoir d'utiliser :
$background = imagecolorallocate ($gif, 255, 255, 255);
$background = imagecolortransparent($gif,$background);

enfin, je suis pas un expert en PHP mais il faudrait demander à d'autre qui devraient savoir ça.
Afficher les 9 commentaires

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.