Создание PDF командной строки OpenOffice
У меня есть документация, написанная в OpenOffice, и я хотел бы включить некоторые из них в качестве PDF-файлов в окончательные поставки сборки. Я хотел бы сделать это с помощью сценария автоматической сборки.
есть ли способ создать PDF-файл из OpenOffice с помощью команды командной строки?
5 ответов
искусство решения имеет также очень хороший API для выполнения преобразования в Java. Это немного медленно, но достаточно просто. Вот как я его использую:
File inputFile = new File("C:\oreyes\hola.doc");
File outputFile = new File("C:\oreyes\hola.pdf");
OpenOfficeConnection connection = new SocketOpenOfficeConnection(8100);
try {
connection.connect();
} catch(Exception e) {}
DocumentConverter converter = new OpenOfficeDocumentConverter(connection);
converter.convert(inputFile, outputFile);
connection.disconnect();
вы можете создать банку с этим и обработать ее из командной строки.
по состоянию на сентябрь 2012 года LibreOffice может конвертировать документ в PDF из командной строки:
lowriter --headless --convert-to pdf yourfile.odt
Он также имеет поддержку массового преобразования:
lowriter --headless --convert-to pdf yourfiles*.odt
преобразует все файлы, соответствующие шаблону, в соответствующий PDF-файл.
при выполнении этой команды не должно быть открытых окон LibreOffice.
хотя этот вопрос немного староват, здесь что-то для документирования некоторых общих подводных камней с решением LibreOffice:
-
если
lowriter
не работает для вас, потому что он игнорирует параметры командной строки и графический интерфейс просто попробовать вызовlibreoffice
илиloffice
файлы:loffice --headless --convert-to pdf yourfile.odt
-
если вы получите это сообщение
Error: Please reverify input parameters...
попробуйте запустить его от имени root (например, через команда sudo.) Это помогло мне на Ubuntu 12.04 LTS с LibreOffice 3 установлен, а также может быть причиной, почему это преобразование не работает на веб-сервере без надлежащей конфигурации (Libreoffice --headless отказывается конвертировать, если root не будет работать с PHP-скриптом)
также убедитесь, что у вас нет других экземпляров LibreOffice, или он просто не будет работать молча и вообще не будет преобразования.
здесь anytopdf. Сам не пробовал.
цитируешь...
anytopdf-это скрипт perl, который преобразует OpenOffice.org, Microsoft Office (Word DOC, Excel XLS), RTF, HTML и другие openoffice.org читаемые форматы файлов в формате PDF. Он автоматически установит поддержку "AnyToPDF" OpenOffice.org базовая библиотека макросов текущего пользователя OpenOffice.org конфигурация, если она еще не присутствует.
посвящается миру, любви, пониманию и уважению ко всем существам.