php图像操作-淡入透明


php image manipulation - fade to transparency

有人知道如何使用PHP将淡入淡出效果应用于图像吗?我正在寻找一种应用渐变透明度的方法(我的意思是:在顶部,图像是不透明的,逐渐变得越来越透明,在底部,它是完全透明的)。

我一直在读http://php.net/manual/en/function.imagecolortransparent.php,但没有看到任何关于将渐变效果应用于图像的内容。

我还读到:PHP-使用图像生成透明度(或不透明度)梯度,但它有点落后,没有任何解决方案!

我也愿意接受任何其他可以从命令行执行此操作的建议/库。

显然,您需要使用png才能获得这种效果,但您可以使用php将任何png转换为jpg。我相信下面的问题涵盖了你所问的内容。为了清除图像反射效果,必须删除部分代码。

使用PHP ImageMagick可以获得透明渐变吗?

这段代码似乎能完成你想要完成的任务,它是:

$im = new Imagick('image.jpg'); //Reference image location
if (!$im->getImageAlphaChannel()) {
    $im->setImageAlphaChannel(Imagick::ALPHACHANNEL_SET);
}
$refl = $im->clone();
$refl->flipImage();
$gradient = new Imagick();
$gradient->newPseudoImage($refl->getImageWidth() + 10, $refl->getImageHeight() + 10, "gradient:transparent-black");