[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Наложение изображений (GD)
REZzANATOR
Подскажите как на имеющийся jpg положить в центр другую меньшую картинку

* как открыть понятно, вот как положить((



Спустя 23 часа, 44 минуты, 21 секунда (15.10.2008 - 09:24) REZzANATOR написал(а):
Решил, кому интересно

Код
function win2uni($s){

$s = convert_cyr_string($s,’w',’i'); // преобразование win1251 -> iso8859-5

for ($result=”, $i=0; $i<strlen($s); $i++) {
$charcode = ord($s[$i]);
$result .= ($charcode>175)?”&#”.(1040+($charcode-176)).”;”:$s[$i];
}
return $result;
}

function copyimg($bg_src, $src, $text){

//**********Работа с текстом
$text = win2uni($text);
$coord = imagettfbbox(
11,            // размер шрифта
0,           // угол наклона шрифта (0 = не наклоняем)
‘arial.ttf’, // имя шрифта, а если точнее, ttf-файла
$text        // собственно, текст
);

$text_width = $coord[2] - $coord[0];

//**********Работа с картинками
$im = imagecreatefromjpeg($bg_src);
$im2 = imagecreatefromjpeg($src);

$bg_imgscrsize = getimagesize($bg_src);
$imgscrsize = getimagesize($src);

//вычисляем откуда на бэкграйнде рисовать
$bg_x = $bg_imgscrsize[0]/2 - $imgscrsize[0]/2;
$bg_y = $bg_imgscrsize[1]/2 - $imgscrsize[1]/2;
//вычисляем координату х откуда писать текст
$text_x = $bg_imgscrsize[0]/2 - $text_width/2;

//*****Финал для собирания картинки
imagecopymerge($im, $im2, $bg_x, $bg_y-20, 0, 0, $imgscrsize[0], $imgscrsize[1], 100);
imagettftext(
$im,      // как всегда, идентификатор ресурса
10,   // размер шрифта
0,           // угол наклона шрифта
$text_x , $bg_y + ($imgscrsize[1] + 20), //положение текста
0×666666,    // цвет шрифта
‘arial.ttf’,   // имя ttf-файла
$text
);
return $im;

}

$img = copyimg(”ramka_1.jpg”, “26.jpg”, “Модель 123″);
header(”Content-type: image/jpeg”);
imagejpeg($img);

Спустя 3 года, 1 месяц, 12 дней, 8 часов, 45 минут, 53 секунды (27.11.2011 - 18:09) I++ написал(а):
Было бы еще не плохо, подобающе оформить код... Вычистить мусор, и сделать его читаемым.


_____________
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.