2


我很努力,但无法使这种方法正常工作。
使用格式为

Imagick::levelImage ( float $blackPoint , float $gamma , float $whitePoint [, int $channel = Imagick::CHANNEL_ALL ] );

我尝试像这样使用它

$img->levelImage (0, 1.0, 255);

$img->levelImage (255, 1.0, 0);

甚至喜欢

$img->levelImage (-0.5, 1.0, 5.6);

但没有任何成功。
输出图像几乎是黑色或几乎是白色。
我使用的所有其他 imagick 方法都可以正常工作,但这对我来说只是一个后退))
我在网上找不到任何使用这种 imagick 方法的示例,所以需要帮助!
也许有人有一个很好的工作示例,请帮助我:)

4

1 回答 1

2

查看LevelImage的 ImageMagick 文档:

指定黑点和白点范围为 0-QuantumRange,伽马范围为 0-10 的级别

因此,来自 PHP 的合理调用可能如下所示:

//bool Imagick::levelImage ( float $blackPoint , float $gamma , float $whitePoint [, int $channel = Imagick::CHANNEL_ALL ] )
$img->levelImage (20, 5, 220);

我猜 QuantumRange 设置为 255,如果不是,请尝试调用Imagick::getQuantumRange以找出它是什么。

如果它似乎仍然不起作用,我将通过编写示例代码找出问题所在。

于 2010-12-27T21:13:57.847 回答