PHP imagecopy avec un fond transparent
J'utilise ce code pour créer une image à partir d'une autre image png, le fond est noir par défaut. Ma question est comment mettre un fond transparent?
$input = imagecreatefrompng('image.png');
$output = imagecreatetruecolor(50, 50);
imagecopy($output, $input, 4,0, 8,8, 8,8);
imagecopy... etc.
header('Content-Type: image/png');
imagepng($output);
Est-il un moyen facile de faire cela? Grâce
OriginalL'auteur 2by | 2011-10-11
Vous devez vous connecter pour publier un commentaire.
Définit la couleur de la transparence dans le image.
Voici la lien
$black = imagecolorallocate($output, 0, 0, 0); imagecolortransparent($output, $black);
avant la imagecopyque faire si je veux transparent à la couleur de la transparence?
Tout ce qui est copié sur attire son transparent couleurs en noir sur l'image de destination. Je ne veux pas perdre les pixels qui ont été déjà noir dans l'image source.
OriginalL'auteur Wazy
Depuis la fonction PHP
imagecopymerge
ne fonctionne pas avec le canal Alpha, vous aurez envie d'utiliser la fonction de la premier commentaire sur cette pageimagecopymerge_alpha
:http://php.net/manual/en/function.imagecopymerge.php
Juste l'image transparente comme la base et le fusionner avec l'image dont vous avez besoin.
Je l'ai essayé sur et il fonctionne très bien pour un projet de mine.
A fonctionné pour moi aussi.
Cela n'a pas fonctionné pour moi, quand je copie une source de l'image avec de la transparence, de toutes les couleurs transparentes dans l'image source est tracé en noir sur l'image de destination.
OriginalL'auteur leo.vingi
false
avant d'exécuterimagesagealpha
.OriginalL'auteur Mohammad Anini
Ou probablement
http://www.php.net/manual/en/function.imagesavealpha.php
OriginalL'auteur Jan Wiemers
Aucune des solutions n'a fonctionné pour moi, il serait toujours convertir les pixels transparents sur la source de l'image en noir dans l'image de destination. Ce qui a fonctionné a été de changer imagecopy/imagecopymerge/imagecopymerge_alpha à imagecopyresampled et juste en passant la même largeur et la hauteur de deux fois.
OriginalL'auteur Curtis
Pleine de crédit à la:
http://consistentcoder.com/combine-a-transparent-png-image-on-top-of-another-image-with-php
Le code suivant superposition de l'image de premier plan sur l'arrière-plan de l'image, tout la préservation de la transparence de la superposition:
OriginalL'auteur Vince Pike