小编Spi*_*nal的帖子

PHP/GD - 透明背景

我想在PHP中结合GD进行以下操作.不幸的是,ImageMagick不是一个选项,但这似乎是一个常见的问题,必须有一个解决方案,我似乎无法找到它.

我想创建一个透明背景的PNG.然后我想在上面画一个矩形,在上面复制一个图像,然后添加一些文字.一种方法如下:

$image = ImageCreateTrueColor (800, 600);
imagecolortransparent ($image, 0); //0 is pure black, the default fill color
imagerectangle (...);
//code to copy an image
imagettftext ($image, ...);
imagepng ($image);
Run Code Online (Sandbox Code Playgroud)

这样可以正常工作,但复制图像的一部分可能是黑色,和/或文本可能是黑色.这也变得透明,这是我想要的.

imagefill ($image, 0,0, 0x7FFF0000);
imagetransparent ($image, 0x7FFF0000);
Run Code Online (Sandbox Code Playgroud)

上面的代码是我在网上找到的,用红色填充它,然后使红色透明.同样,这会导致图像中的所有红色变为透明.我可以选择一种不太可能出现的颜色,但我无法保证这一点.

有什么我想念的吗?这可以修复吗?谢谢你的回复!

php transparency gd

14
推荐指数
1
解决办法
2万
查看次数

标签 统计

gd ×1

php ×1

transparency ×1