Войти через VK Войти через FB Войти через Google Войти через Яндекс
Поиск по сайту
Объединение нескольких изображений в одно
Вы наверно сталкивались с показом аватарки группы, состоящей из нескольких аватарок участников. Если пойти по пути создания универсального скрипта, вас будет подстерегать множество "подводных камней", например, изображения могут быть разного размера, разных соотношений сторон, разного фонового цвета. Данный скрипт пытается решить все эти проблемы.
Этот функционал доступен в телеграм боте, - просто отправьте ему файлы с картинками.
<form enctype='multipart/form-data' method='POST'>
Изображение1: <input type='file' name='p[]' size='45' accept="image/*"><br>
Изображение2: <input type='file' name='p[]' size='45' accept="image/*"><br>
Изображение3: <input type='file' name='p[]' size='45' accept="image/*"><br>
Изображение4: <input type='file' name='p[]' size='45' accept="image/*"><br>
<input type='submit' value='Создать новое изображение'>
</form>
<?
if(!empty($_FILES['p']['tmp_name'])){
$width = $height = 512; // размер результата
$resImage = imagecreatetruecolor($width, $height);
$f = $_FILES['p']['tmp_name'];
for ($i = 0; $i < count($f); $i++) {
$srcImage = imagecreatefromjpeg($f[$i]);
$srcWidth = imagesx($srcImage);
$srcHeight = imagesy($srcImage);
$x = ($i == 1 || $i == 2 ? $width / 2 : 0);
$y = ($i > 1 ? $height / 2 : 0);
$h2 = intval($height / 2);
$w2 = intval($width / 2);
imagecopyresampled($resImage, $srcImage, $x, $y, 0, 0, $w2, $h2, $srcWidth, $srcHeight);
imagedestroy($srcImage);
}
$filename='tmp.jpg'; // результат
imagejpeg($resImage, $filename, 100);
imagedestroy($resImage);
header('Content-Type: image/jpeg');
readfile($filename);
}
?>
Приведенный пример максимально упрощен и манипулирует только с 4-мя файлами JPEG - формата.
Смотрите также:
- Пример скрипта анимации любых изображений.
- Пример скрипта изменения размера изображения.
- Сервис внедрения изображения в код страницы.
- Сервис создания анимированного изображения.
- Наложение логотипа(водяного знака) на изображение.
Всего за 599 рублей (~7$) Вы можете приобрести готовый скрипт объединения изображений, который поддерживает весь описанный функционал. Код скрипта реализован на PHP, полностью открытый и не использует никаких дополнительных библиотек.
- Соглашение по использованию платной версии:
- Вы можете использовать полученный код в любых своих разработках, вы не обязаны указывать ссылку на источник.
- Вы НЕ имеете права перепродавать её, размещать в свободном или ограниченном доступе, а также публиковать в любом виде.
- Все остальные права сохраняются за автором.
Регистрация Войти Войти через VK Войти через FB Войти через Google Войти через Яндекс
.
Прокомментировать/Отблагодарить