Как создать PDF-файл из .docx с сервера Linux? - PullRequest
4 голосов
/ 16 января 2011

Мы используем на нашем производственном сервере: Ubuntu 10 server edition. Нам нужно создать документ, содержащий текст, изображения и таблицы в содержании и изображения в верхнем и нижнем колонтитулах. Теперь мы используем http://phpword.codeplex.com/ для его создания, и он отлично справляется с генерацией docx-файлов, но нам нужна pdf-версия этого файла. Как мы можем конвертировать DOCX в PDF? Или любая другая библиотека для создания PDF-файлов, которые позволяют изображения в верхнем / нижнем колонтитуле? Использование компонентов Windows не является решением. Возможно, вы используете openOffice? это может быть использовано на Ubuntu Server Edition? любой другой конвертер для docx в pdf в среде linux - server?

Ответы [ 2 ]

6 голосов
/ 28 октября 2011

Если ваши документы содержат изображения, использование OpenOffice, безусловно, является хорошим решением. Проверьте PyODConverter , если хотите попробовать это.

Если это простой текст, вы можете рассмотреть возможность использования более простого решения, такого как PHPDocx, unoconv, AbiWord или LiveDocx.

В прошлом для этого я использовал OOo (и до сих пор использую его для преобразования файлов Odt в Pdf), и он отлично работает. :) У меня только одна проблема, но она уже решена. Вы можете проверить это здесь: Docx в pdf, используя openoffice без заголовка, слишком медленно

EDIT:

Я создал скрипт bash "/etc/init.d/openoffice", чтобы запустить openoffice с правильными параметрами. Содержимое файла:

#!/bin/bash
# openoffice.org headless server script
#
# chkconfig: 2345 80 30
# description: headless openoffice server script
# processname: openoffice

OOo_HOME=/usr/lib/openoffice
SOFFICE_PATH=$OOo_HOME/program/soffice

if [ "$1" == "start" ]; then
 echo "Starting OpenOffice headless server"
 $SOFFICE_PATH --headless --accept="pipe,name=beubi_OOffice;urp;StarOffice.ServiceManager" --invisible --norestore --nodefault --nolockcheck --nofirstwizard
 exit
fi

if [ "$1" == "stop" ]; then
 echo "Stopping OpenOffice headless server."
 killall -9 soffice.bin && killall -9 soffice
 exit
fi

echo "Usage: $0 {start|stop}"
exit 1

Затем просто установите для него разрешение на выполнение, и вы должны быть готовы к работе.

1 голос
/ 16 января 2011

Вы можете попробовать docx4j (Java).Он может создавать PDF-файлы, и изображения в заголовках не должны быть проблемой.

Обновление май 2016

В течение последнего года мы предлагаливысококачественный коммерческий конвертер docx в PDF, работающий на Linux (и Solaris);попробуйте по адресу http://converter -eval.plutext.com / , где вы также можете загрузить установщик.

...