Я использую библиотеку PHP GD для создания изображения на макете изображения. Сначала я беру макет изображения и создаю холст в центре шириной 250 и высотой 300, и я вставляю изображение в этот холст. работает нормально, когда большое изображение входит, потому что оно покрывает все пространство холста, но проблема возникает, когда маленькое изображение приходит размером меньше, чем размер холста, например ширина 210 и высота 280, потому что оно меньше, чем размер холста, который он оставляет черное пространство вокруг изображения. а также я не хочу уменьшать размер холста, потому что это фиксированный размер. Я просто хочу, чтобы этот черный цвет был прозрачным.
это мой код:
define("WIDTH", 600);
define("HEIGHT", 600);
$dest_image = imagecreatetruecolor(WIDTH, HEIGHT);
$trans_background = imagecolorallocate($dest_image, 255, 255, 255);
imagecolortransparent($dest_image, $trans_background);
imagefill($dest_image, 0, 0, $trans_background);
$design_image = 'captain.png';
$mockup_image = 't-shirt.png';
$a = imagecreatefrompng($design_image);
$b = imagecreatefrompng($mockup_image);
$pos_left = -19.75;
$pos_top = 37.075;
imagecopy($dest_image, $a, 168, 155, $pos_left, $pos_top, 250, 300);
imagecopy($dest_image, $b, 0, 0, 0, 0, WIDTH, HEIGHT);
imagepng($dest_image, 'final_image.jpg');