2010-12-27 4 views
2


J'ai essayer dur, mais ne peut pas faire cette méthode fonctionne correctement.
Le format d'utilisation estphp Imagick :: utilisation de levelImage

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

J'essaie d'utiliser comme

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

et

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

ou même comme

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

mais sans succès s.
L'image de sortie est presque noire ou presque blanche.
Toutes les autres méthodes imagick que j'utilise fonctionnent bien, mais celle-ci est juste un back-breaker pour moi))
Je ne trouve pas d'exemples d'utilisation de cette méthode imagick sur le net alors j'ai besoin d'aide! Peut-être quelqu'un
ont un bon exemple de travail, aide-moi s'il vous plaît :)

Répondre

2

regardant la documentation ImageMagick pour LevelImage:

précisent les niveaux où les points blancs et noirs ont la gamme de 0- MaxRGB et gamma a la gamme 0-10

donc un appel raisonnable de PHP pourrait ressembler à ceci:

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

Je devine que le MaxRGB est fixé à 255, sinon, essayez d'appeler Imagick::getQuantumRange pour savoir ce qu'il est.

Si cela ne semble pas fonctionner, je vais comprendre ce qui ne va pas en écrivant du code exemple.