2 votes

quel est le moyen le plus rapide de concaténer deux images en php ?

J'ai besoin de concaténer des images en php (deux ou plus), à la fois verticalement et horizontalement. Quel est le moyen le plus rapide de le faire ?

obs : je ne veux pas utiliser de bibliothèques non natives

un autre doute. l'image résultante aura-t-elle la somme des tailles des images ou pourra-t-elle être nettement plus grande ?

Merci ( :

3voto

Michael Points 1418
$newWidth = $w1 + $w2;
$newHeight = $h1 + $h2;
$newImage = imagecreatetruecolor($newWidth, $newHeight);

imagecopyresampled($newImage, $image1, 0, 0, 0, 0, $w1, $h1, $w1, $h1);
imagecopyresampled($newImage, $image2, $w1, 0, 0, 0, $w2, $h2, $w2, $h2);

Maintenant, je viens de coder cela dans l'éditeur de débordements de pile et ce n'est pas testé, mais cela devrait utiliser toutes les bibliothèques natives et probablement être le plus rapide. Il suffit de copier et de rééchantillonner l'image 1 dans la première moitié (dans le sens de la largeur) puis de copier la deuxième image dans la deuxième moitié (dans le sens de la largeur), si vous vouliez le faire en empilant sur la hauteur, il faudrait juste changer l'emplacement du dest_h. Voici quelques informations... http://php.net/manual/en/function.imagecopyresampled.php

oh BTW, c'était pour sauvegarder une image. C'est ce que je suppose que vous faites. Sinon, la réponse concernant l'empilement de 2 images l'une à côté de l'autre avec des balises serait la plus rapide.

En ce qui concerne l'image résultante, rappelez-vous. Si elles sont disposées horizontalement, alors la largeur sera de $w1 + $w2 et la hauteur serait math.max($h1, $h2) et inversement si les images sont empilées verticalement

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X