OpenOffice comando de criação de linha PDF
-
21-08-2019 - |
Pergunta
Eu tenho alguma documentação escrita em OpenOffice, e eu gostaria de incluir alguns deles como arquivos PDF nas entregas versão final. Eu gostaria de fazer isso com o script de construção automatizado.
Existe uma maneira de criar um arquivo PDF a partir de OpenOffice com um comando de linha de comando?
Solução
arte de resolver também tem uma boa API para executar a conversão em Java. É um pouco lento, mas é o suficiente simples. Isto é como eu usá-lo:
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();
Você pode criar um frasco com isso e processá-lo a partir da linha de comando.
Outras dicas
Em setembro de 2012, LibreOffice pode converter um documento em PDF a partir da linha de comando:
lowriter --headless --convert-to pdf yourfile.odt
Ele também tem suporte conversão em massa:
lowriter --headless --convert-to pdf yourfiles*.odt
irá converter todos os arquivos que correspondem ao padrão para o arquivo PDF correspondente.
Não deve haver janelas do LibreOffice abrir quando você executar este comando.
Embora esta pergunta é um pouco velho, aqui algo com a finalidade de documentar algumas armadilhas comuns com a solução LibreOffice:
-
Se
lowriter
não funciona para você, porque ele ignora os parâmetros de linha de comando e traz o gui apenas tentar chamar oslibreoffice
ouloffice
binários:loffice --headless --convert-to pdf yourfile.odt
-
Se você receber esta mensagem
Error: Please reverify input parameters...
tente executá-lo como root (por exemplo, via sudo). Isso me ajudou no Ubuntu 12.04 LTS com LibreOffice 3 instalado e também pode ser uma razão pela qual esta conversão não está sendo executado em um servidor web sem configuração adequada ( LibreOffice --headless se recusa a converter a menos de raiz, não vai funcionar a partir de script PHP )
-
Também certifique-se que você não tem quaisquer outras instâncias do LibreOffice em execução ou ele só irá falhar silenciosamente e fazer nenhuma conversão em tudo.
Há anytopdf . Já não tentei me.
Citando ...
anytopdf é um script perl que converte OpenOffice.org, Microsoft Office (Word DOC, XLS Excel), RTF, HTML e outros formatos de arquivo legível o OpenOffice.org para o formato PDF. Ele irá instalar automaticamente o 'AnyToPDF' apoiar biblioteca macro OpenOffice.org Básico no usuário atual OpenOffice.org configuração se ele já não está presente.
Dedicado à paz, amor, compreensão e respeito por todos os seres.