Создание 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 конфигурация, если она еще не присутствует.
посвящается миру, любви, пониманию и уважению ко всем существам.
