与Imagick Transparent兼容的问题?

时间:2012-05-07 09:49:42

标签: php image imagemagick transparent

我的本​​地版本为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 个答案:

答案 0 :(得分:4)

对我而言,“没有”也没有“透明”,但是“rgba(250,15,150,0)”结束了我对Imagick完全稀疏文档的长期痛苦。

答案 1 :(得分:2)

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

Stackoverflow的另一个答案:Setting an alpha channel when constructing an ImagickPixel

答案 2 :(得分:1)

确保以实际支持透明度的格式保存结果...因此不是JPG,而是GIF或PNG ....这听起来很简单,但这种情况经常被遗忘(特别是未明确定义时)< / p>

答案 3 :(得分:1)

我在本地开发的代码在透明像素的生产中没有遇到同样的问题。我尝试了上面的所有解决方案,透明度根本无法正常工作。最后,我将$im->setImageFormat( 'png24' );更改为$im->setImageFormat( 'png' );,这一切都重新开始了。 “png24”格式必须在以后添加。