hallo, als ik vanuit 2 verschillende omgevingen/users een identify of convert commando aanroep, met dezelfde opties en hetzelfde beeld, dan krijg ik verschillende resultaten. specifieker:
Omgeving 1: vanuit SSH (putty) als user root roep ik aan:
resultaat is als verwacht: een geconverteerd plaatje in kleur.
NB: als ik een identify op het plaatje doe dan geeft deze DirectClassRGB aan
Omgeving 2: vanuit PHP voer ik een exec() uit als user nobody:
resultaat niet goed: een heel vies lores grijs-plaatje.
NB: als ik een identify op het plaatje doe dan geeft deze DirectClassGray aan
Vraag: waarom gaat het goed vanuit SSH en fout vanuit PHP exec()-aanroep? ik vermoed iets met de environment variabelen maar wat?
NB: in php heb ik een drietal environment variabelen gezet voor de tempfiles van imagemagick. het maakt overigens geen verschil of ik dit aan of uitzet op het resultaat van het plaatje.
info:
PHP versie 4.4.2 hoewel dit er volgens mij niet veel toe doet
ImageMagick 6.2.5
FreeBSD 5.4
testplaatje is een RGB .eps bestand gemaakt in Photoshop 6.0
Omgeving 1: vanuit SSH (putty) als user root roep ik aan:
code:
1
2
3
4
5
| /usr/local/bin/convert -verbose -limit file 10 -limit area 100 -limit memory 250 -limit map 500 -limit disk 1 -geometry 709x234 -density 300 -quality 100 "/usr/www/uli.eps" -flatten -colorspace RGB -strip "/usr/www/uli3.jpg" |
resultaat is als verwacht: een geconverteerd plaatje in kleur.
NB: als ik een identify op het plaatje doe dan geeft deze DirectClassRGB aan
Omgeving 2: vanuit PHP voer ik een exec() uit als user nobody:
code:
1
2
3
4
5
| /usr/local/bin/convert -verbose -limit file 10 -limit area 100 -limit memory 250 -limit map 500 -limit disk 1 -geometry 709x234 -density 300 -quality 100 "temp/2db3828d8d6b6184926c1d553128d4fc/uli.eps" -flatten -colorspace RGB -strip "temp/2db3828d8d6b6184926c1d553128d4fc/uli3.jpg" |
resultaat niet goed: een heel vies lores grijs-plaatje.
NB: als ik een identify op het plaatje doe dan geeft deze DirectClassGray aan
Vraag: waarom gaat het goed vanuit SSH en fout vanuit PHP exec()-aanroep? ik vermoed iets met de environment variabelen maar wat?
NB: in php heb ik een drietal environment variabelen gezet voor de tempfiles van imagemagick. het maakt overigens geen verschil of ik dit aan of uitzet op het resultaat van het plaatje.
code:
1
2
3
| putenv("MAGICK_TMPDIR={$cfg['imtemp']}");
putenv("TMP={$cfg['imtemp']}");
putenv("TMPDIR={$cfg['imtemp']}"); |
info:
PHP versie 4.4.2 hoewel dit er volgens mij niet veel toe doet
ImageMagick 6.2.5
FreeBSD 5.4
testplaatje is een RGB .eps bestand gemaakt in Photoshop 6.0