Как я могу преобразовать ppt в pdf из командной строки?

60

У меня есть папка, содержащая кучу ppts, каждый из которых я хочу преобразовать в отдельный pdf.

Джеймс
источник
1
Я думаю, что вы имели в виду «папку, содержащую кучу ppts», а не pdfs.
Марсель Стимберг
1
Ваш вопрос нуждается в лучшем объяснении. Вы пытаетесь преобразовать каждый PPT в PDF, или все PPT в один PDF с разными страницами, или ...?
2010 года

Ответы:

43

Вы можете использовать unoconv . Он доступен в репозиториях, так что вы можете просто apt-get: unoconv ( прямая ссылка для установки )

Обратите внимание, что информация на веб-странице устарела. Используйте man или type unoconv -hдля получения актуальных параметров командной строки. Это работает так:

unoconv -f pdf presentation.odt

Эта команда создаст файл presentation.pdf.

Я использовал его только для пакетного преобразования оддсов в PDF, и он отлично работает. Я не пробовал это с презентациями (но для быстрого теста сейчас), но я ожидаю, что это будет работать хорошо.

Обратите внимание, что он не будет работать на Lucid (10.04) из-за ошибки в python-openofficeставках. Если вам нужно использовать его на Lucid, вы можете добавить этот ppa к источникам программного обеспечения, чтобы обновить версию Openoffice.

Хавьер Ривера
источник
1
Ваш пример использует неправильную команду ( uniconvвместо unoconv)
Марсель Стимберг
1
Это приводит к этой ошибке: утечка объектов python, соединенных с UNO, по причине того, что среда выполнения pyuno не инициализирована (нужно вызвать pyuno.bootstrap перед использованием любых классов uno) Ошибка сегментации
James
1
@James: Да, я проверил это 10.04, и это выдает эту ошибку. Небольшой поиск в Google показывает, что есть ошибка в версии Openoffice, поставляемой с Lucid. Он работает на Maverick (10.10) и Hardy (8.04), версиях, которые я использую.
Хавьер Ривера
Для всех, кто интересуется, как преобразовать папку с документами любого типа (* .txt, * .docx, * .pptx и даже * .pdf и т. Д.) В PDF-файлы:unoconv -f pdf <input-folder-path>/* --output <output-folder-path>/*
Рахул Бхарадвадж,
66

Вы также можете использовать командную строку из LibreOffice для вашей цели. Этот пример преобразует все ppt-файлы в текущем каталоге в pdf:

libreoffice --headless --invisible --convert-to pdf *.ppt  

--headless
Запускается в «режиме без головы», что позволяет использовать приложение без пользовательского интерфейса.
Этот специальный режим можно использовать, когда приложение контролируется внешними клиентами через API ...
Он подразумевает - невидимость и строго игнорирует любую среду графического интерфейса.

а также

--invisible
Запускается в невидимом режиме.
Ни стартовый логотип, ни начальное окно программы не будут видны. LO можно контролировать, а документы и диалоги можно открывать через API.
При запуске с этим параметром его можно закрыть только с помощью диспетчера задач (Windows) или команды kill (системы на основе UNIX).

Получите больше информации о параметрах командной строки с:

man libreoffice

(Примечание. Необходимо закрыть все запущенные экземпляры LibreOffice до того, как сработает командная строка.)

телеграфный ключ
источник
1
Это решило мою проблему.
Луис Альварадо
7
Удивительно, что у libreoffice есть такая --convert-toвозможность, но это отстой, что нигде не сказано, что вы также должны пройти --headlessи --invisibleчтобы это работало. +1 за ответ.
scribu
5
--headlessподразумевает --invisible(по крайней мере на LO 3.4). Добавить -env:UserInstallation="file://$HOME/.libreoffice-alt"для работы даже с запущенными экземплярами графического интерфейса (кредит здесь ).
Бени Чернявский-Паскин
(: - Потрясающе! - :)
desgua
1
FWIW, on MacOS, libreofficeдвоичный файл вызывается sofficeи находится в/Applications/LibreOffice.app/Contents/MacOS
ijoseph
2

Самый простой способ конвертировать .ppt файлы в PDF - это установить unoconv через командную строку:

sudo apt-get install unoconv

Затем откройте терминал с диска, на котором доступны файлы ppt. Теперь введите:

unoconv -f [format] pdf  filename.ppt

Вот и все. Готово.

Jazeb_007
источник
Добро пожаловать в AskUbuntu, это сайт вопросов и ответов, а не форум. Спасибо, что делились знаниями, но не нужно дублировать ответы. Высокий голосующий ответ уже упоминавшегося unoconvинструмента.
user.dz
-1

Есть легкий чит.

Используйте unoconvс midnight commanderдля преобразования odtв pdf:

  • запуск mc
  • перемещаться, где odtнаходятся файлы
  • помечать odtфайлы с помощью Ctrl-TзатемF2,@,
  • вставить в unoconv -f pdf

Он извергает кучу ужасных сообщений об ошибках, но это работает!

Carpintonto
источник