2017-09-22 6 views
0

Je suis assez nouveau pour ImageMagick et moi avons récemment je découvert cette merveilleuse ressource tutoriel appelé ImageMagick Fred ScriptsExécutez les scripts ImageMagick de Fred avec PHP Imagick dans un environnement Windows

Cependant, je me demande comment o utiliser ces scripts avec l'extension PHP Imagick sur un environnement Windows (WAMP). Par exemple, il s'agit d'un script de Fred pour corriger le gamma d'une image.

USAGE: autogamma [-c colormode] infile outfile 
USAGE: autogamma [-h or -help] 

-c .... colormode ..... colorspace/channel to use to compute 
....................... gamma statistics; choices are: gray, 
....................... intensity, luminance, lightness, brightness, 
....................... average, magnitude, rgb; default=luminance 
-m .... midrange ...... midrange value from which to compute gamma; 
....................... 0<float<1; default=0.5 

C'est le seul code disponible en page Script de Fred.

Maintenant, je crée un nouvel objet Imagick et je lis l'image que je vais éditer avec le script de Fred.

$im = new Imagick(); 
$im->readImage($imagePath); 

Donc, d'après, comment lier ces deux scripts? Comment ajouter le script de Fred à mon objet Imagick?

Y a-t-il un logiciel ou une bibliothèque supplémentaire à installer? Ou un fichier qui doit être importé?

Mise à jour

$result = chmod("2colorthresh", 0777); 
echo $result; 

$result2 = exec("2colorthresh -help"); 
echo $result2; 

Pour le premier écho, je reçois 1. Je pense VRAI. Mais pour le deuxième écho, je n'obtiens rien.

+0

Essayez de changer exec en système $ result2 – Bonzo

+0

@Bonzo Toujours rien obtenir :( – TharinduLucky

Répondre

1

Vous ne pouvez pas/ne devez pas exécuter de scripts Freds dans Imagemagick ou Imagick car ce sont des scripts bash autonomes.

Vous aurez probablement besoin d'installer Cygwin ou similaire car certaines fonctions de type Linux ne sont pas disponibles dans un environnement Windows localhost.

Si vous obtenez l'installation de tout pour fonctionner sur Windows et que vous voulez utiliser php vous whould devez d'abord CHMOD le script à 777 ou tout ce que vous devez faire pour les autorisations et ensuite utiliser un code comme ceci:

exec("/FULL PATH TO/script.sh input.png output.png 
+0

Merci pour la réponse J'ai installé Cygwin et maintenant je peux utiliser certaines des commandes Linux comme 'ls',' pwd', 'cd 'dans le terminal de Windows.Cependant, pour le script PHP, j'ai créé, ne recevant toujours aucun effet.J'ai mis à jour la question avec plus de détails.Veuillez s'il vous plaît vérifier. – TharinduLucky

0

Mes scripts ne s'exécutent pas dans Imagick. Vous pouvez les exécuter en utilisant PHP exec().

Essayez quelque chose comme:

<?php 
exec("bash 2colorthresh logo: logo.gif 2>&1",$out,$returnval); 
foreach($out as $text) 
{echo "$text<br>";} 
?> 

Si cela échoue, indiquez le chemin complet 2colorthresh et vos images au besoin. Si le fichier téléchargé contient .sh, renommez-le ou utilisez 2colorthresh.sh dans la commande.