Watermark (filigrane en php)
Dernière réponse : dans Programmation
Bonjour a tous j'ai souhaiterais integrer
un petit script permettant entre autre
d'imposer un filigrane sur mes images pour
ainsi mettre mon copiright....
J'ai trouver ce petit script sur le net, et j'ai un
petit soucis, mon image ne s'affiche pas....
a votre avis d'ou pourrais venir ce problem?
si non quand j'enleve mes deux fichiers
(WaterMark.php et .htacces) tout fonctionne correctement!
Mon site: http://csource.free.fr
et le lien du script:
http://www.asp-php.net/scripts/asp-php/watermark.php
Fichier .htaccess
addhandler wtmrk jpg
action wtmrk /galleriephoto/WaterMark.php
WaterMark.php
<?php
// Chemin et nom de fichier du fichier PNG à insérer dans l'image
// Pour ne pas utiliser d'image, commentez la ligne suivante
// Define('WATERMARK_IMAGE', './test.png');
// Intensité de transition en pourcentage
Define('WATERMARK_PERCENT', '60');
// Texte copyright à insérer dans l'image
// Pour ne pas utiliser de texte, commentez la ligne suivante
Define('WATERMARK_TEXT', 'Copyright (c) 2006 www.visualprod.net');
// Taille de la police de caractère ( 1 / 2 / 3 / 4 / 5 )
Define('WATERMARK_TEXT_FONT', '3');
// Le texte en mode Shadow (1 = oui - 2 = non)
Define('TEXT_SHADOW', '1');
// Couleur du texte
Define('TEXT_COLOR', '#FFFFFF');
// PARAMETRES GENERAUX
Define('WATERMARK_ALIGN_H', 'right'); // left / right / center
Define('WATERMARK_ALIGN_V', 'bottom'); // top / bottom / center
Define('WATERMARK_MARGIN', '10');
// --------------------------------------------------
$dr=preg_replace('/WaterMark\.php.+/', '', $_SERVER['PHP_SELF']);
$filename=str_replace($dr, './', $_SERVER['PATH_INFO']);
$lst=GetImageSize($filename);
$image_width=$lst[0];
$image_height=$lst[1];
$image_format=$lst[2];
if ($image_format==1) {
Header("Content-Type:image/gif");
readfile($filename);
exit;
} elseif ($image_format==2) {
$old_image=imagecreatefromjpeg($filename);
} elseif ($image_format==3) {
$old_image=imagecreatefrompng($filename);
} else {
readfile($filename);
exit;
}
if (Defined('WATERMARK_TEXT') && WATERMARK_TEXT!='') {
$color = eregi_replace("#","", TEXT_COLOR);
$red = hexdec(substr($color,0,2));
$green = hexdec(substr($color,2,2));
$blue = hexdec(substr($color,4,2));
$text_color = imagecolorallocate ($old_image, $red, $green, $blue);
$text_height=imagefontheight(WATERMARK_TEXT_FONT);
$text_width=strlen(WATERMARK_TEXT)*imagefontwidth(WATERMARK_TEXT_FONT);
$wt_y=WATERMARK_MARGIN;
if (WATERMARK_ALIGN_V=='top') {
$wt_y=WATERMARK_MARGIN;
} elseif (WATERMARK_ALIGN_V=='bottom') {
$wt_y=$image_height-$text_height-WATERMARK_MARGIN;
} elseif (WATERMARK_ALIGN_V=='center') {
$wt_y=(int)($image_height/2-$text_height/2);
}
$wt_x=WATERMARK_MARGIN;
if (WATERMARK_ALIGN_H=='left') {
$wt_x=WATERMARK_MARGIN;
} elseif (WATERMARK_ALIGN_H=='right') {
$wt_x=$image_width-$text_width-WATERMARK_MARGIN;
} elseif (WATERMARK_ALIGN_H=='center') {
$wt_x=(int)($image_width/2-$text_width/2);
}
if (TEXT_SHADOW=='1') {
imagestring($old_image, WATERMARK_TEXT_FONT, $wt_x+1, $wt_y+1, WATERMARK_TEXT, 0);
}
imagestring($old_image, WATERMARK_TEXT_FONT, $wt_x, $wt_y, WATERMARK_TEXT, $text_color);
}
if (Defined('WATERMARK_IMAGE') && WATERMARK_IMAGE!='' && file_exists(WATERMARK_IMAGE)) {
$lst2=GetImageSize(WATERMARK_IMAGE);
$image2_width=$lst2[0];
$image2_height=$lst2[1];
$image2_format=$lst2[2];
if ($image2_format==2) {
$wt_image=imagecreatefromjpeg(WATERMARK_IMAGE);
} elseif ($image2_format==3) {
$wt_image=imagecreatefrompng(WATERMARK_IMAGE);
}
if ($wt_image) {
$wt_y=WATERMARK_MARGIN;
if (WATERMARK_ALIGN_V=='top') {
$wt_y=WATERMARK_MARGIN;
} elseif (WATERMARK_ALIGN_V=='bottom') {
$wt_y=$image_height-$image2_height-WATERMARK_MARGIN;
} elseif (WATERMARK_ALIGN_V=='center') {
$wt_y=(int)($image_height/2-$image2_height/2);
}
$wt_x=WATERMARK_MARGIN;
if (WATERMARK_ALIGN_H=='left') {
$wt_x=WATERMARK_MARGIN;
} elseif (WATERMARK_ALIGN_H=='right') {
$wt_x=$image_width-$image2_width-WATERMARK_MARGIN;
} elseif (WATERMARK_ALIGN_H=='center') {
$wt_x=(int)($image_width/2-$image2_width/2);
}
imagecopymerge($old_image,$wt_image,$wt_x,$wt_y,0,0,$image2_width,$image2_height,WATERMARK_PERCENT);
}
}
if ($image_format==2) {
imageJpeg($old_image);
}
if ($image_format==3) {
imagePng($old_image);
}
?>
Et voici ce que j'ai mis dans le htaccess:
![]()
Et en ce qui conercne le WaterMark.php j'ai rien modifer!
Un petit screen-shot du ftp:
![]()
Shot at 2007-08-13
un petit script permettant entre autre
d'imposer un filigrane sur mes images pour
ainsi mettre mon copiright....
J'ai trouver ce petit script sur le net, et j'ai un
petit soucis, mon image ne s'affiche pas....
a votre avis d'ou pourrais venir ce problem?
si non quand j'enleve mes deux fichiers
(WaterMark.php et .htacces) tout fonctionne correctement!
Mon site: http://csource.free.fr
et le lien du script:
http://www.asp-php.net/scripts/asp-php/watermark.php
Fichier .htaccess
addhandler wtmrk jpg
action wtmrk /galleriephoto/WaterMark.php
WaterMark.php
<?php
// Chemin et nom de fichier du fichier PNG à insérer dans l'image
// Pour ne pas utiliser d'image, commentez la ligne suivante
// Define('WATERMARK_IMAGE', './test.png');
// Intensité de transition en pourcentage
Define('WATERMARK_PERCENT', '60');
// Texte copyright à insérer dans l'image
// Pour ne pas utiliser de texte, commentez la ligne suivante
Define('WATERMARK_TEXT', 'Copyright (c) 2006 www.visualprod.net');
// Taille de la police de caractère ( 1 / 2 / 3 / 4 / 5 )
Define('WATERMARK_TEXT_FONT', '3');
// Le texte en mode Shadow (1 = oui - 2 = non)
Define('TEXT_SHADOW', '1');
// Couleur du texte
Define('TEXT_COLOR', '#FFFFFF');
// PARAMETRES GENERAUX
Define('WATERMARK_ALIGN_H', 'right'); // left / right / center
Define('WATERMARK_ALIGN_V', 'bottom'); // top / bottom / center
Define('WATERMARK_MARGIN', '10');
// --------------------------------------------------
$dr=preg_replace('/WaterMark\.php.+/', '', $_SERVER['PHP_SELF']);
$filename=str_replace($dr, './', $_SERVER['PATH_INFO']);
$lst=GetImageSize($filename);
$image_width=$lst[0];
$image_height=$lst[1];
$image_format=$lst[2];
if ($image_format==1) {
Header("Content-Type:image/gif");
readfile($filename);
exit;
} elseif ($image_format==2) {
$old_image=imagecreatefromjpeg($filename);
} elseif ($image_format==3) {
$old_image=imagecreatefrompng($filename);
} else {
readfile($filename);
exit;
}
if (Defined('WATERMARK_TEXT') && WATERMARK_TEXT!='') {
$color = eregi_replace("#","", TEXT_COLOR);
$red = hexdec(substr($color,0,2));
$green = hexdec(substr($color,2,2));
$blue = hexdec(substr($color,4,2));
$text_color = imagecolorallocate ($old_image, $red, $green, $blue);
$text_height=imagefontheight(WATERMARK_TEXT_FONT);
$text_width=strlen(WATERMARK_TEXT)*imagefontwidth(WATERMARK_TEXT_FONT);
$wt_y=WATERMARK_MARGIN;
if (WATERMARK_ALIGN_V=='top') {
$wt_y=WATERMARK_MARGIN;
} elseif (WATERMARK_ALIGN_V=='bottom') {
$wt_y=$image_height-$text_height-WATERMARK_MARGIN;
} elseif (WATERMARK_ALIGN_V=='center') {
$wt_y=(int)($image_height/2-$text_height/2);
}
$wt_x=WATERMARK_MARGIN;
if (WATERMARK_ALIGN_H=='left') {
$wt_x=WATERMARK_MARGIN;
} elseif (WATERMARK_ALIGN_H=='right') {
$wt_x=$image_width-$text_width-WATERMARK_MARGIN;
} elseif (WATERMARK_ALIGN_H=='center') {
$wt_x=(int)($image_width/2-$text_width/2);
}
if (TEXT_SHADOW=='1') {
imagestring($old_image, WATERMARK_TEXT_FONT, $wt_x+1, $wt_y+1, WATERMARK_TEXT, 0);
}
imagestring($old_image, WATERMARK_TEXT_FONT, $wt_x, $wt_y, WATERMARK_TEXT, $text_color);
}
if (Defined('WATERMARK_IMAGE') && WATERMARK_IMAGE!='' && file_exists(WATERMARK_IMAGE)) {
$lst2=GetImageSize(WATERMARK_IMAGE);
$image2_width=$lst2[0];
$image2_height=$lst2[1];
$image2_format=$lst2[2];
if ($image2_format==2) {
$wt_image=imagecreatefromjpeg(WATERMARK_IMAGE);
} elseif ($image2_format==3) {
$wt_image=imagecreatefrompng(WATERMARK_IMAGE);
}
if ($wt_image) {
$wt_y=WATERMARK_MARGIN;
if (WATERMARK_ALIGN_V=='top') {
$wt_y=WATERMARK_MARGIN;
} elseif (WATERMARK_ALIGN_V=='bottom') {
$wt_y=$image_height-$image2_height-WATERMARK_MARGIN;
} elseif (WATERMARK_ALIGN_V=='center') {
$wt_y=(int)($image_height/2-$image2_height/2);
}
$wt_x=WATERMARK_MARGIN;
if (WATERMARK_ALIGN_H=='left') {
$wt_x=WATERMARK_MARGIN;
} elseif (WATERMARK_ALIGN_H=='right') {
$wt_x=$image_width-$image2_width-WATERMARK_MARGIN;
} elseif (WATERMARK_ALIGN_H=='center') {
$wt_x=(int)($image_width/2-$image2_width/2);
}
imagecopymerge($old_image,$wt_image,$wt_x,$wt_y,0,0,$image2_width,$image2_height,WATERMARK_PERCENT);
}
}
if ($image_format==2) {
imageJpeg($old_image);
}
if ($image_format==3) {
imagePng($old_image);
}
?>
Et voici ce que j'ai mis dans le htaccess:

Et en ce qui conercne le WaterMark.php j'ai rien modifer!
Un petit screen-shot du ftp:

Shot at 2007-08-13
Autres pages sur : watermark filigrane php
Lassé par la pub ? Créez un compte
Met le .htaccess dans le dossier imgboss et accède à l'image, tu auras l'erreur.
Edit: là le problème est le .htaccess qui est mal fait, il doit y avoir une erreur dans le chemin vers Watermark.php je pense...
Edit: là le problème est le .htaccess qui est mal fait, il doit y avoir une erreur dans le chemin vers Watermark.php je pense...
Je viens de faire des tests, je t'avoue que je n'arrive pas à le faire marcher :s
Edit: http://omar.olympe-network.com/wrapper/apple005.png
Edit: http://omar.olympe-network.com/wrapper/apple005.png
Lassé par la pub ? Créez un compte
