2

我的本地版本为 ImageMagick 6.7.3-10 (PHP 5.2.10),服务器端版本为 ImageMagick 6.5.4-7 (PHP 5.3.9)。碰巧服务器端没有生成透明背景,但其他颜色仍然有效。然而,透明背景下本地效果很好。无论如何我可以解决以便在服务器端使用透明背景?

$canvas  = new Imagick();
$canvas->newImage( $size, $size, new ImagickPixel( 'transparent' ) );
4

4 回答 4

4

对我来说,“无”或“透明”都不起作用,但“rgba(250,15,150,0)”用 Imagick 真正稀疏的文档结束了我长期的痛苦。

于 2012-11-10T15:25:08.183 回答
2

您是否尝试过不透明而不是透明?

Stackoverflow 的另一个答案:在构建 ImagickPixel 时设置 Alpha 通道

于 2012-05-07T11:20:39.587 回答
1

确保将结果保存为实际支持透明度的格式……因此不是 JPG,而是 GIF 或 PNG……听起来很简单,但经常被遗忘(尤其是在未明确定义时)

于 2014-03-12T22:23:58.407 回答
1

我在本地开发的代码中遇到了同样的问题,但在透明像素的生产环境中却没有。我尝试了上述所有解决方案,但透明度根本不起作用。最后我换$im->setImageFormat( 'png24' );$im->setImageFormat( 'png' );,一切又开始工作了。“png24”格式必须是后来添加的。

于 2014-10-29T23:51:07.660 回答