Слияние двух изображений * созданных * в php в одно

У меня есть следующие сценарии PHP, которые выводятся / отображаются в виде изображений PNG / PHP:

-image.php

-background.php

Я хотел бы иметь возможность открыть третий скрипт «main.php», и он показывает image.php, наложенный на background.php

Я пытался использовать общий метод:

    <?php

$url1="image.php"$url2="background.php";

$dest = imagecreatefrompng($url1);
$src = imagecreatefromjpeg($url2);imagecopymerge($dest, $src, 10, 9, 0, 0, 181, 180, 100);

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

imagedestroy($dest);
imagedestroy($src);

?>

Но это не сработало (предположительно, потому что образы курсов — php).

Любые идеи о том, как объединить эти два изображения? заранее спасибо

0

Решение

Вам нужно объяснить php, что он должен выполнять image.php вместо того, чтобы включать его в «сырой» форме.
Самый простой способ сделать это — использовать что-то вроде curl_init или file_get_contents и добавить полный URL-адрес в скрипт php, чтобы вы открыли файл через http и попросили веб-сервер выполнить его для вас.

Поэтому измените ваш код на что-то вроде этого:

<?php

$url1= file_get_contents("http://example.com/image.php");
$url2= file_get_contents("http://example.com/background.php");

$dest = imagecreatefrompng($url1);
$src = imagecreatefromjpeg($url2);imagecopymerge($dest, $src, 10, 9, 0, 0, 181, 180, 100);

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

imagedestroy($dest);
imagedestroy($src);

?>

НТН,

bovako

0

Другие решения

Вы должны попробовать использовать include читать содержимое файла, а затем imagecreatefromstring создать изображение:

<?php

$handle = imagecreatefromstring(include('image.php'));
0

Спасибо, похоже, сейчас работает. Мне пришлось изменить функции imagecreate с png / JPEG на string (как показано ниже):

Еще раз спасибо! Спас мой разум от сумасшествия

$url1= file_get_contents("http://example.com/image.php");
$url2= file_get_contents("http://example.com/background.php");

$dest = imagecreatefromstring($url1);
$src = imagecreatefromstring($url2);imagecopymerge($dest, $src, 10, 9, 0, 0, 181, 180, 100);

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

imagedestroy($dest);
imagedestroy($src);

?>
0
По вопросам рекламы [email protected]