Я хочу изменить размер и добавить водяной знак к загруженному изображению. Я могу изменить размер изображения успешно, но как только я применил водяной знак, водяной знак имеет черный фон, а не прозрачный.Изменение размера и водяных знаков для изображения в PHP
$watermark_l = "source/watermark_l.png";
$size_wm_l = getimagesize($watermark_l);
$watermark_l = imagecreatefrompng($watermark_l);
$filename = "input/$gallery/$file";
header('Content-Type: image/jpeg');
list($width, $height) = getimagesize($filename);
$x_large = 2000;
$y_large = 1333;
$image_p = imagecreatetruecolor($x_large, $y_large);
$image = imagecreatefromjpeg($filename);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $x_large, $y_large, $width, $height);
imagecopy($image_p, $watermark_l, 0, 0, 0, 0, $size_wm_l[0], $size_wm_l[1]);
imagejpeg($image_p, "output/$gallery/2000x1333_$file", 100);
вас 'применяя его к jpeg, который не использует прозрачность. Я предлагаю вам изменить формат на png. –
измените свое изображение и выберите красивое прозрачное изображение в формате png. даже у меня была эта проблема. Изображение было png, но имело небольшой черный фон. Просто измените образ образца водяного знака, и вы будете знать –