Imagemagick конвертировать PDF в PNG

1

Я новичок в использовании командной строки и php. При этом я пытался выяснить, как использовать ImageMagick с помощью функции exec(). У меня есть это сейчас,

$command="/usr/local/lib/ImageMagick  convert images/a.pdf images/a.png"; 

if(exec($command)){
    echo 'yes';
}
else{
    echo 'no';
}

Что возвращает "нет". Я считаю, что мне не хватает чего-то о том, как выполнить преобразование из правильного каталога. Правильно ли настроена моя команда? (Мне дали путь к ImageMagick с моего веб-хоста, Lunarpages).

Я прочитал некоторые другие вопросы, касающиеся ImageMagick, но я не нашел много, чтобы помочь мне настроить мою команду.

Спасибо за любую помощь,
Леви

Теги:
imagemagick
command-line

2 ответа

4
Лучший ответ

В настоящее время ваша команда пытается выполнить программу с именем /usr/local/lib/ImageMagick, которую я предполагаю, это не то, что вы намеревались. Если это путь к ImageMagick и вы хотите использовать утилиту преобразования, вам нужно изменить свою команду на следующее:

/usr/local/lib/ImageMagick/convert images/a.pdf images/a.png

В этот момент он должен работать без проблем! Возможно, вам захочется еще раз поработать над тем, что может сделать команда convert!

  • 0
    Я попробовал это, и я все еще получаю ошибку, я попытался добавить / удалить косую черту для путей к именам файлов, таким как 'images / a.pdf' к '/images/a.pdf'. Это не сработало для меня, но вы думаете, что пути могут быть прочитаны неправильно?
  • 1
    Попробуйте добавить диагностический вывод PHP echo getcwd(); Команда для отображения текущего рабочего каталога. Возможно, когда exec() запускает рабочий каталог не так, как ожидалось (чуть выше images ).
Показать ещё 6 комментариев
0

используйте exec() правильно, так как ваш exec возвращает строку по умолчанию, а результаты выполнения передаются по одному из следующих параметров:

$command="/usr/local/lib/ImageMagick/convert images/a.pdf images/a.png"; 

exec($command,$output,$result);
if ($result == true ){
    echo 'yes';
}
else{
    echo 'no, here what happened with command output';
    print_r($output);
}

обратитесь к http://php.net/manual/en/function.exec.php

Ещё вопросы

Сообщество Overcoder
Наверх
Меню