Maison > développement back-end > tutoriel php > Comment fusionner deux images à l'aide des commandes PHP de base ?

Comment fusionner deux images à l'aide des commandes PHP de base ?

Linda Hamilton
Libérer: 2024-11-09 12:16:02
original
1107 Les gens l'ont consulté

How To Merge Two Images Using Basic PHP Commands?

Fusionner des images avec PHP : un guide détaillé

Question

Comment pouvons-nous fusionner de manière transparente deux images à l'aide de commandes PHP de base ? Prenons l'exemple suivant :

Image 1 :
[URL de l'image 1]

Image 2 :
[URL de l'image 2 ]

Résultat souhaité :
[URL de l'image fusionnée]

Solution

Pour fusionner deux images en PHP, nous pouvons exploiter l'approche suivante :

  1. Créer des ressources d'image :

    Utilisez des fonctions telles que imagecreatefrompng() et imagecreatefromjpeg() pour charger les images dans des ressources distinctes :

    $dest = imagecreatefrompng('vinyl.png');
    $src = imagecreatefromjpeg('cover2.jpg');
    Copier après la connexion
  2. Configurer la fusion alpha :

    Désactiver la fusion alpha et activer la sauvegarde alpha pour l'image de destination :

    imagealphablending($dest, false);
    imagesavealpha($dest, true);
    Copier après la connexion
  3. Fusionner les images :

    Utilisez imagecopymerge() pour fusionner $src sur $dest aux coordonnées spécifiées et avec l'opacité spécifiée :

    imagecopymerge($dest, $src, 10, 9, 0, 0, 181, 180, 100);
    Copier après la connexion
  4. Sortir l'image fusionnée :

    Définir le type de contenu correct et générer l'image fusionnée à l'aide de imagepng() :

    header('Content-Type: image/png');
    imagepng($dest);
    Copier après la connexion
  5. Nettoyage :

    Libérez les ressources d'image pour la gestion de la mémoire :

    imagedestroy($dest);
    imagedestroy($src);
    Copier après la connexion

Exemple de code

Voici un exemple d'extrait de code qui montre la fusion de deux images :

<?php
$dest = imagecreatefrompng('vinyl.png');
$src = imagecreatefromjpeg('cover2.jpg');

imagealphablending($dest, false);
imagesavealpha($dest, true);

imagecopymerge($dest, $src, 10, 9, 0, 0, 181, 180, 100); 

header('Content-Type: image/png');
imagepng($dest);

imagedestroy($dest);
imagedestroy($src);
?>
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal