我有一个处理/缩放上传图片的脚本。我注意到一些图像显着变暗,并通过一个消除过程跟踪变暗回到这部分代码:
$scaled = new IMagick();
$scaled->newPseudoImage($original->getImageWidth(), $original->getImageHeight(), 'xc:white');
$scaled->compositeImage($original, Imagick::COMPOSITE_DEFAULT, 0, 0);
$scaled->flattenImages();
我在这里做的是尝试在转换为jpg时消除某些图像中透明背景的问题。
有没有人知道这段代码的哪一部分会使图像变暗,以及修复它的好方法可能是什么?
编辑:仍然没有弄清楚这个问题的核心,但我确实发现我可以通过将它包装在不需要它的图像中来避免这样做:
if($original->getImageAlphaChannel()){