Поместите PNG поверх JPG в PHP [дубликат]
На этот вопрос уже есть ответ здесь:
- Прозрачный PNG поверх JPG в PHP 2 ответа
Я хочу сделать следующее на PHP:
У меня есть два изображения, jpg и png. Я хочу изменить размер jpg до того же размера, что и png, а затем поместить png сверху. PNG имеет прозрачность, поэтому я хотел бы сохранить ее, чтобы jpg отображал под.
Если бы кто-нибудь мог помочь, это было бы здорово!
Спасибо
15
3 answers
<?
$png = imagecreatefrompng('./mark.png');
$jpeg = imagecreatefromjpeg('./image.jpg');
list($width, $height) = getimagesize('./image.jpg');
list($newwidth, $newheight) = getimagesize('./mark.png');
$out = imagecreatetruecolor($newwidth, $newheight);
imagecopyresampled($out, $jpeg, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
imagecopyresampled($out, $png, 0, 0, 0, 0, $newwidth, $newheight, $newwidth, $newheight);
imagejpeg($out, 'out.jpg', 100);
?>
40
Author: skyman, 2010-02-15 22:41:17
Это рабочий код, который я использую
$dest = imagecreatefrompng('mapCanvas.png');
$src = imagecreatefromjpeg('si.jpg');
imagealphablending($dest, false);
imagesavealpha($dest, true);
// Copy and merge
imagecopymerge($dest, $src, 17, 13, 0, 0, 60, 100, 100);
// Output and free from memory
header('Content-Type: image/png');
imagepng($dest);
imagedestroy($dest);
imagedestroy($src);
5
Author: webkul, 2010-06-24 21:35:49
Вот ссылка на пример наложения прозрачного водяного знака на изображение. Может быть, это ваш вариант использования, может быть связано.
Http://www.php.net/manual/en/image.examples.merged-watermark.php
Также существует способ загрузки изображений JPG, изменения размера изображений, включения альфа-отслеживания и экспорта изображений в GD.
Джейкоб
3
Author: TheJacobTaylor, 2010-02-15 22:32:40