Watermark avec text

Signaler
Messages postés
63
Date d'inscription
vendredi 5 novembre 2004
Statut
Membre
Dernière intervention
26 novembre 2012
-
Messages postés
63
Date d'inscription
vendredi 5 novembre 2004
Statut
Membre
Dernière intervention
26 novembre 2012
-
Bonjour à tous.

Je suis actuellement sur un projet destiné aux photographes en ASP3, pour la gestion de leurs photos, qui seront publiées ensuite sur un site internet dans une sorte de galerie.
J'utilise le composant Gflax pour retoucher les photos, principalement les tailles. Mais je souhaiterais rajouter un watermark texte au 4 coins de la photo. Pour le moment, je test avec du texte, et peut être qu'après, je verrai pour y mettre des images.

Dans un premier temps, je crée une miniature de cette photo, puis je passe au watermark. Avant le traitement, l'admin du site pourra indiquer si il veut un watermark, si oui dans quels coins il veut les faire apparaître et bien sûr quel texte mettre.

Voici le code que je me suis fait :

if activation_watermark <> "non" then
if watermark = "" then
SQLSiteWeb = "SELECT * FROM products where base='CONF' and affaire=true and ucase(categorie)='SITE-DOMAINE' order by refnum1"
        set rsSiteWeb = Server.CreateObject("ADODB.RecordSet")
rsSiteWeb.open SQLSiteWeb,Conn ,3,3
if rsSiteWeb.recordcount > 0 then
watermark = rsSiteWeb("titre2")
end if
rsSiteWeb.close
set rsSiteWeb = nothing
end if

fontColor_Red = 0
fontColor_Green = 0
fontColor_Blue = 0

' Calcul de la taille du watermark
len_watermark = len(watermark)

fontSize = 0.5		

tabposition_watermark = split(position_watermark,", ")

for each item in tabposition_watermark

pos_left = 0

if item = "haut gauche" then
pos_left = 10
pos_top = 10
.TextOut Ucase(watermark), pos_left, pos_top, rgb(fontColor_Red,fontColor_Green,fontColor_Blue)
end if

if item = "haut droite" then
pos_top = 0

for i=1 to len_watermark

if mid(strreverse(watermark),i,1) "." or mid(strreverse(watermark),i,1) " " or mid(strreverse(watermark),i,1) = "_" then
fontSize = 2
fontColor_Red = 255
else
fontSize = 2
fontColor_Red = 0
end if

if pos_left > 0 then
pos_left = pos_left - (fontSize * i)
else
pos_left = maxWidth - (fontSize * i)
end if

.TextOut Ucase(mid(strreverse(watermark),i,1)), pos_left, pos_top, rgb(fontColor_Red,fontColor_Green,fontColor_Blue)
next

end if

if item = "bas gauche" then						
pos_left = 0
pos_top = maxHeight - 70
.TextOut Ucase(watermark), pos_left, pos_top, rgb(fontColor_Red,fontColor_Green,fontColor_Blue)
end if

if item = "bas droite" then
pos_top = maxHeight - 70

for i=1 to len_watermark

if mid(strreverse(watermark),i,1) "." or mid(strreverse(watermark),i,1) " " or mid(strreverse(watermark),i,1) = "_" then
fontSize = 0.5
fontColor_Red = 255
else
fontSize = 0.5
fontColor_Red = 0
end if

if pos_left > 0 then
pos_left = pos_left - (fontSize * i)
else
pos_left = maxWidth - (fontSize * i)
end if

.TextOut Ucase(mid(strreverse(watermark),i,1)), pos_left, pos_top, rgb(fontColor_Red,fontColor_Green,fontColor_Blue)
next

end if

next

end if


Si le watermark est activé mais qu'aucun texte est saisi, je prend par défaut le nom de domaine du site. Pour les coins haut gauche et bas gauche, rien de difficile, mais c'est plus pour les 2 autres que çà me pose problème.

Comme peut le montrer ces 2 screens :



En fait, je pars du bord droit de ma photo, et j'insère 1 par 1 les caractères de mon watermark en allant vers la gauche.
Que dois je faire pour que les watermarks de droite soient placés comme il faut ?

Donc quelqu'un aurait la gentillesse de m'aider s'il vous plait ?
Je commence à devenir fou :D

Merci d'avance


Kcin

2 réponses

Messages postés
1642
Date d'inscription
samedi 6 novembre 2004
Statut
Modérateur
Dernière intervention
28 avril 2011
3
Salut,

Est ce que tu as cherché chez l'éditeur de ton composant si ce n'était pas précisé comment faire ?

Parce que... ça me semble plus être un problème de ton composant Gflax que d'ASP3, ce qui limite un peu le nombre de gens qui peuvent t'aider ici ; mais bon, avec un peu de chance...
Mais il doit sans doute y avoir sur le net des ressources (voire des forums) dédiés à Gflax, je suppose.

Bonne journée,
Antoine
Messages postés
63
Date d'inscription
vendredi 5 novembre 2004
Statut
Membre
Dernière intervention
26 novembre 2012

Il me semble avoir cherché, mais peut être pas assez.
Je vais m'y replonger.

Kcin