2010-03-14 2 views
4

Я хочу преобразовать PPT в png или другие форматы изображений с помощью Python.Преобразование PPT в PNG через python

Этот вопрос задал вопрос SO, но по существу рекомендует использовать OpenOffice в безголовом X-сервере, который был абсолютной болью в последний раз, когда я его использовал. (В основном из-за трудно повторить ошибки из-за OO сбой.)

Есть ли другой способ,

+0

1. У вас есть PowerPoint? 2. Какая ОС работает? –

+0

1. № 2. Ubuntu – agiliq

ответ

2

Основной рабочий процесс (Надеюсь, используя только утилиты Linux CLI, и чистый Python над ними?):

  • конвертировать PPT в PDF с помощью PDF-принтера из PowerPoint или OpenOffice, построенный в PDF конвертер

  • использования Ghostscript конвертировать PDF в PNG или другой формат изображения (что-то вдоль линии gs -dSAFER -dBATCH -dNOPAUSE -sDEVICE=png16m -r100 -sOutputFile=out.png in.pdf)

Вы можете использовать Python для сценария этого (и пилотного OOo/MSPP с использованием Uno/COM) или любого скрипта, который вы хотите.

Насколько я знаю, библиотека Python не обрабатывает файлы PPT или конвертирует PDF-файлы в PNG.

Что касается обработки аварийных сообщений OOo, я бы поймал Исключения и попытался перезапустить OOo, когда произойдет такое событие (возможно, пропустите файл, добавив его в список подозрительных файлов, требующих ручной обработки).

Возможно, вам интересна эта статья http://www.linuxjournal.com/node/1007788, поскольку она предоставляет класс, который использует существующий экземпляр OOo для подключения или запускает один, если требуется прозрачным способом. Он поставляется с примером преобразования xls -> csv (http://www.linuxjournal.com/content/convert-spreadsheets-csv-files-python-and-pyuno), который может использоваться в качестве основы для преобразования, которое вы хотите попробовать.

+0

HOw вы обрабатываете сбой OpenOffice из-за любого файла? Запустите демон монитора и перезапустите, если он разбился? – agiliq

Смежные вопросы