Как объединить два изображения в Laravel - PullRequest
0 голосов
/ 06 октября 2018

Я хочу объединить два изображения друг с другом, используя Laravel.

Первое изображение

First Image

Второе изображение

enter image description here

И мне нужен окончательный результат, например

enter image description here

Изображение должно быть загружено

Ответы [ 2 ]

0 голосов
/ 08 октября 2018

** этот код работает **

<?php

$image1 = 'images/template.png';
$image2 = 'images/1.png';

list($width,$height) = getimagesize($image2);

$image1 = imagecreatefromstring(file_get_contents($image1));
$image2 = imagecreatefromstring(file_get_contents($image2));

imagecopymerge($image1,$image2,40,100,0,0,$width,$height,100);
header('Content-Type:image/png');
imagepng($image1);

imagepng($image1,'merged.png');
0 голосов
/ 06 октября 2018

использовать функции php по умолчанию ( imagecopymerge) (библиотека GD):

<?php

list($new_width, $new_height, $new_type, $new_attr) = getimagesize("newimage.png");
switch(image_type_to_mime_type($new_type)){
     case IMAGETYPE_GIF:
         $new = imagecreatefrompng('newimage.png');
     break;
     case IMAGETYPE_JPEG:
         $new = imagecreatefromjpeg('newimage.png');
     break;
     case IMAGETYPE_PNG:
         $new = imagecreatefromgif('newimage.png');
     break;
}

$master = imagecreatefrompng('master.png');


imagealphablending($master, false);
imagesavealpha($demasterst, true);

imagecopymerge($master, $new, $box_x, $box_y, 0, 0, $box_w, $box_h, 100);
// imagecopymerge ( resource $dst_im , resource $src_im , int $dst_x , int $dst_y , int $src_x , int $src_y , int $src_w , int $src_h , int $pct )

//save image
imagepng($master, "file.png");

imagedestroy($master);
imagedestroy($new);

для формата jpeg использовать функцию удара:

  1. http://php.net/manual/en/function.imagejpeg.php
  2. http://php.net/manual/en/function.imagecreatefromjpeg.php

Если вы не хотите хранить его и просто хотите отправить его пользователю:

...
...
header('Content-Type: image/jpeg');

// Output the image
imagejpeg($master);

// Free up memory
imagedestroy($master);
imagedestroy($new);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...