Php et manipulations d'images (fusions)

Ben00
Invité n'ayant pas de compte PHPfrance

08 mai 2007, 23:32

Bonjour à tous,

Alors voilà je débute un peu en ce qui concerne la manipulation d'images avec php.
J'ai deux images que je voudrais fusionner (je vais appeler "img1" l'image de base, la plus grande, et "img2" l'image à superposer sur img1, en espérant que j'arrive à expliquer correctement ^^)
Pour cela j'utilise la fonction "imagecopymerge". Mon problème c'est que je souhaiterais que img2 se place exactement au centre de img1, et cela quelque soit la taille de img2 (sachant qu'elle est toujours plus petite que img1). J'ai eu beau essayer toute sorte de trucs mais sans succès.

Ah et j'en profite aussi pour parler d'un autre problème qui ne relève peut etre pas du php (mais je demande quand même on ne sait jamais)
Lorsque "j'enregistre" l'image fusionnée sur mon serveur ftp (avec la fonction "imagejpeg"), celle ci s'enregistre avec des droits d'accès très restreints; tellement restreints que l'image ne s'affiche pas sur ma page web. Je suis obligé de modifier manuellement les droits d'accès à chaque fois pour régler ce problème...
Quelqu'un aurait une idée pour résoudre ces problèmes?

Merci d'avance

ViPHP
ViPHP | 5924 Messages

09 mai 2007, 00:11

Pour centrer l'image, pour la placer, il faut faire une opération du style :
lf : largeur de l'image de fond.
lp : largeur de l'image de premier plan.
x=(lf-lp)/2;
hf : hauteur de l'image de fond.
hp : hauteur de l'image de premier plan.
y=(hf-hp)/2;
Tu peux récupérer les tailles avec les fonctions imagesx() et imagesy().
Tu n'a plus qu'à placer ton image de premier plan à la position (x,y) sur l'image de fond.

Pour les droits d'accès, vois avec la fonction chmod()

Ben00
Invité n'ayant pas de compte PHPfrance

09 mai 2007, 14:29

Merci beaucoup ça l'air de marcher :D

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

09 mai 2007, 15:09

Modération :
Puisque ta question est résolue, j'ajoute le tag [Résolu]
pour indiquer aux personnes qui voudront consulter ce sujet qu'il contient une solution.

Tu peux réaliser cette opération toi-même
en cliquant sur le bouton [Mettre Résolu] qui s'affiche en haut à gauche de ce sujet
si tu as posté le 1er message en tant que membre (inscrit et identifié).

Alors... inscris-toi !!! ;)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...