Подтвердить что ты не робот

Объединение двух изображений с помощью PHP

Я пытаюсь объединить два изображения вместе с PHP.

Например... как я могу поместить размещение одного изображения поверх изображения два или объединить с базовым PHP? Я пробовал что-то вроде водяных знаков, но, похоже, он не работает.

Изображение 1

alt text

Изображение два

alt text

... и превратить это в это? ЗАКЛЮЧИТЕЛЬНЫЙ РЕЗУЛЬТАТ:

alt text

4b9b3361

Ответ 1

Я получил его от одного из них.

<?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); //have to play with these numbers for it to work for you, etc.

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

imagedestroy($dest);
imagedestroy($src);
?>

Ответ 2

Вопрос о слиянии двух изображений, однако в этом конкретном случае вы не должны этого делать. Вы должны поместить Content Image (т.е. Обложку) в тег <img /> и стиль изображения в CSS, почему?

  • Как я уже сказал, обложка относится к контенту документа, а виниловая запись и тень - лишь часть стилей страниц.
  • Такое разделение гораздо удобнее использовать. Пользователь может легко скопировать это изображение. Это проще индексировать веб-пауками.
  • Наконец, это намного проще поддерживать.

Итак, используйте очень простой код:

<div class="cover">
   <img src="/content/images/covers/movin-mountains.png" alt="Moving mountains by Pneuma" width="100" height="100" />
</div>

.cover {
    padding: 10px;
    padding-right: 100px;

    background: url(/style/images/cover-background.png) no-repeat;
}

Ответ 3

Используйте библиотеку GD или ImageMagick. Я googled 'PHP GD слияние изображений' и получил несколько статей об этом. В прошлом то, что я сделал, это создать большое пустое изображение, а затем использовать imagecopymerge(), чтобы вставить эти изображения в мою первоначальную пустую. Просмотрите статьи в Google, вы найдете исходный код, который вы можете сразу начать использовать.

Ответ 4

Библиотека GD Image Manipulation Library в PHP, вероятно, лучше всего подходит для работы с изображениями на PHP. Попробуйте одну из функций imagecopy (imagecopy, imagecopymerge,...). Каждый из них объединяет 2 изображения по-разному. Для получения дополнительной информации см. Документацию php на imagecopy.

Ответ 5

ImageArtist - это чистая gd-оболочка, созданная мной, это позволяет вам делать сложные манипуляции изображения безумно легко, для решения вопроса может быть сделано с использованием очень небольшого количества шагов, используя эту мощную библиотеку.

вот пример кода.

$img1 = new Image("./cover.jpg");
$img2 = new Image("./box.png");
$img2->merge($img1,9,9);
$img2->save("./merged.png",IMAGETYPE_PNG);

Вот как выглядит мой результат.

введите описание изображения здесь

Ответ 6

Вы можете сделать это с помощью расширения ImageMagick. Я предполагаю, что метод combImages() будет делать то, что вы хотите.