Pergunta

Eu estou tentando converter documentos de html,txt para pdf,odt e vice-versa..Mas só odt, pdf, parece funcionar..Não há outros formatos de arquivo são convertidos

Aqui estão os meus comandos

libreoffice --headless --convert-to pdf test.html [Not working]
libreoffice --headless --convert-to odt test.html [Not working]
libreoffice --headless --convert-to pdf test.docx [Not working]
libreoffice --headless --convert-to pdf test.odt  [Working]
Foi útil?

Solução

Este é um problema conhecido no LibreOffice, que foi corrigido na versão 5.3.0.Antes dessa correção, quando uma instância do LibreOffice está em execução --converter-ou qualquer outro comando silenciosamente terminar sem fazer nada.

Se sua versão é mais antiga do que você poderia considerar a solução sugerida por Frank Yin aqui.Que está perto de abrir todos os documentos do LibreOffice antes de executar a conversão.

Se você não conseguir feche todos os documentos do LibreOffice para executar a conversão, ou se você achar inconveniente, você pode tentar uma solução sugeriu nos comentários para o original bug.

Se você tem o Broffice versão antes de 4.5 executar

soffice -env:UserInstallation=file:///$HOME/.libreoffice-headless/ \
--headless --convert-to pdf test.docx

Se você estiver executando o Broffice versão entre 4.5 e 5.3 executar

soffice -env:UserInstallation=file:///$HOME/.libreoffice-headless/ \
--convert-to pdf test.docx

Aqui $HOME/.libreoffice-headless é um novo directório de perfil diferente do seu principal LibreOffice perfil.

Outras dicas

Tente fechar todas as instâncias em execução do LibreOffice antes de executar o comando.Esta foi a causa da minha dor.

O problema real é que o broffice/soffice de linha de comando não fornece qualquer mensagem de erro ou informações de depuração, então é adivinhação.Se você for até ele, em seguida, tente strace para sugestões.

No meu caso (Linux), eu não tenho o correto pacotes instalados - por exemplo, a conversão de planilhas, broffice-calc é necessário (duh), e também o broffice-sem cabeça (duplo-duh).Mas a linha de comando não irá dizer-lhe que ele só trava, ou corre e não faz nada.

As seguintes obras

libreoffice  --invisible -convert-to pdf myFile.html

libreoffice --invisible -convert-to docx myFile.odt

A opção --invisible não iniciar a GUI, mas dá algumas pistas sobre a linha de comando que está acontecendo.

Testado no Linux Mint 13.

Isso funcionou para mim no LibreOffice 4.2 / Linux:

soffice --headless --convert-to txt:Text /path_to/document_to_convert.odt

Crédito: http://ask.libreoffice.org/en/question/14130/how-do-i-install-filters-for-the-soffice-command/

Para mim.O problema que eu tive foi a de que --sem cabeça não funciona, (só retorna em 15 de mili-segundos), se um local libreoffice processo já está com o documento aberto.

Certifique-se de que você só faça sem cabeça operações em um documento que já NÃO é aberto no LibreOffice.

Para mim, os dois seguintes pacotes foram o mínimo necessário para se obter sem cabeça docx para pdf, conversão de trabalho em CentOS 7 :

yum install libreoffice-headless  libreoffice-writer

No Windows eu encontrei o seguinte problema:Eu tentei converter todos os arquivos DOC para PDF usando o seguinte comando:

soffice --invisible --convert-to pdf *.doc

Ele falhou sem qualquer mensagem de erro.Mas funcionou quando eu colocar um nome de um dos arquivos, em vez de *.doc.Então, aparentemente, foi um problema com a resolução de curinga no *.doc.O que eu fiz é executar exatamente o mesmo comando acima, mas a partir do Git Bash em vez do normal prompt de comando (cmd.exe).Ele trabalhou.O que é mais: no Git Bash é exibida a informação de progresso e mensagens informativas!

Portanto, meu conselho é:se você estiver executando o soffice.exe no Windows e não obter qualquer resultado, execute o comando Git Bash (você pode obter o Git Bash através da instalação de O Git para Windows)

Um dos problemas que eu encontrei com o libreoffice foi o problema com espaços vazios.Depois que eu slugged o nome ("test-document.docx" em vez de teste "documnet.docx") funcionou perfeitamente.A partir da versão 4.2.8.2 - 5.3.

Eu tinha que instalar o xvfb pacote (yum install xorg-x11-server-Xvfb), é o xserver manequim.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top