使用PHP合并图像时的图像透明度和alpha
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了使用PHP合并图像时的图像透明度和alpha,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2227字,纯文字阅读大概需要4分钟。
内容图文
![使用PHP合并图像时的图像透明度和alpha](/upload/InfoBanner/zyjiaocheng/800/7c81db87b45d49bfb7c7a32db260b051.jpg)
所以我在PHP Doc上找到了一些代码,并稍微编辑它以合并我拥有的两个图像.然后将图像保存在服务器上的文件夹中.然而,有一个小问题,我无法弄清楚它为什么会发生.
首先是我的代码:
$glassurl = $_GET['GlassImg'];
$frameurl = $_GET['FrameImg'];
$filename = (int)date("H:i:s");
$src = imagecreatefromgif($frameurl);
$dest = imagecreatefromjpeg($glassurl);
imagecolortransparent($src, imagecolorat($src, 0, 0));
imagealphablending($dest, false);
imagesavealpha($dest, true);
imagealphablending($src, false);
imagesavealpha($src, true);
$src_x = imagesx($src);
$src_y = imagesy($src);
imagecopymerge($dest, $src, 0, 0, 0, 0, $src_x, $src_y, 100);
// Output and free from memory
imagepng($dest, 'uploads/imagetest.png');
imagegif($dest);
imagedestroy($dest);
imagedestroy($src
);
其次有关图像的一些信息:
>两个图像的大小完全相同
>“图案”图像只是块颜色/图案
>帧图像在帧内具有透明部分(允许图案显示)
>框架周围的区域是白色到多余的图案
我希望当我将框架重叠到图案上时,由于这些部件会产生一个窗框,内部有玻璃图案,白色会隐藏剩余的图案.
为了说明我提供了图像.会发生什么.
图案:
帧:
结果:
正如你所看到的那样,它并没有达到我的预期.谁能告诉我哪里出错了?我想将框架叠加到图案上,保持透明中心并使用多余的白色覆盖其余的图案.任何帮助是极大的赞赏.
解决方法:
请注意你的框架有白色的边缘,如果你想要窗户是你需要裁剪它并删除下面添加的imagecolortransparent如果不是你可以使用这个
$imgl = "thumb/pattern.png";
$img2 = "thumb/frame.png";
$dest = imagecreatefrompng($imgl);
$src = imagecreatefrompng($img2);
imagecolortransparent($src, imagecolorat($src, 0, 0));
$src_x = imagesx($src);
$src_y = imagesy($src);
imagecopymerge($dest, $src, 0, 0, 0, 0, $src_x, $src_y, 100);
// Output and free from memory
header('Content-Type: image/png');
imagegif($dest);
imagedestroy($dest);
imagedestroy($src);
产量
你也可以
$imgl = "thumb/pattern.png";
$img2 = "thumb/frame.png";
$dest = imagecreatefrompng($imgl);
$src = imagecreatefrompng($img2);
$src_x = imagesx($src);
$src_y = imagesy($src);
$srcNew = imagecreatetruecolor($src_x, $src_y);
ImageColorTransparent($srcNew, imageColorAllocate($srcNew, 0, 0, 0));
imagecopy($srcNew, $src, 70, 50, 78, 60, 473, 293);
imagecopymerge($dest, $srcNew, 0, 0, 0, 0, $src_x, $src_y, 100);
header('Content-Type: image/png');
imagegif($dest);
imagedestroy($dest);
imagedestroy($src);
产量
内容总结
以上是互联网集市为您收集整理的使用PHP合并图像时的图像透明度和alpha全部内容,希望文章能够帮你解决使用PHP合并图像时的图像透明度和alpha所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。