php - 当我合并 2 个图像时出现问题,png 以白色显示背景
问题描述
我有这个问题,当我合并 2 个图像时,图像 .png 显示为背景,我尝试使用 imagecolortransparent() 和其他函数删除但无法正常工作。该图像是在没有背景的情况下创建的,但我认为当图像由 imagecreatefrompng() 创建时,会自动放置背景。
这是代码:
$dest = imagecreatefromjpeg("1.jpg");
$src = imagecreatefrompng("2.png");
imagecopymerge($dest, $src, 10, 10, 0, 0, 1000, 900, 50);
$white = imagecolorallocate($src, 255, 255, 255);
imagecolortransparent($src, $white);
imagejpeg($dest, "1.png");
imagedestroy($dest);
imagedestroy($src);
非常感谢你!
解决方案
问题已解决。解决方案是使用以下代码:
imagecopy($imagen1, $imagen2, 180, 135, 0,0, 201, 201);
如
imagecopymerge($dest, $src, 10, 10, 0, 0, 1000, 900, 50);
听到所有代码:
$rutaImagen1 = 'directory/azul-gris.jpg';
$rutaImagen2 = 'directory/lobo_geometrico.png';
// Crear instancias de imágenes
$imagen1 = imagecreatefromjpeg($rutaImagen1);
$imagen2 = imagecreatefrompng($rutaImagen2);
//Procesar imagenes y guardarlas
imagealphablending($imagen2, true);
imagesavealpha($imagen2, true);
imagecopy($imagen1, $imagen2, 180, 135, 0,0, 201, 201);
imagepng($imagen1, 'prueba.png');
推荐阅读
- cognos - Cognos 数据源连接问题
- mongodb - MongoDB 基于文档值而不是显式条件匹配数组
- java - 使用 MockMvc StandaloneSetup 时 MockBean 未初始化服务 bean
- html - 坚持使用媒体查询
- c++ - 如何将音频数据放入 AVFrame 进行编码
- android - 发送 Intent.extra 参数时 Koin 崩溃时的 stateViewModel 注入
- html - 删除值时反应样式化组件输入值变为非
- python - 插入枚举列的 Postgres 数组时,SQLAlchemy 引发错误
- bash - 首先找到文件夹并将其用作 7zip 的参数
- python - 如何解决我的项目中的文件管理器和站点依赖问题