Domanda

Sto cercando di convertire i documenti da HTML, TXT in PDF, ODT e viceversa .. Ma solo ODT in PDF sembra funzionare .. Nessun altro formato di file è convertito

Ecco i miei comandi

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]
.

È stato utile?

Soluzione

Questo è Un problema noto in LibreOffice che è stato fissato nella versione 5.3. 0. Prima di questa correzione quando un'istanza di LibreOffice è in esecuzione --Convert-in o qualsiasi altro comando terminare silenziosamente senza fare nulla.

Se la tua versione è più vecchia di quella che potresti prendere in considerazione il soluzione suggerita da Frank Yin qui. Questo è chiudere tutti i documenti aperti LibreOffice prima di eseguire la conversione.

Se non riesci a chiudere tutti i documenti di libreoffice aperti per eseguire la conversione, o se lo trovi inconveniente, potresti provare a Soluzione suggerita nei commenti del bug originale.

Se hai la versione di LibreOffice Before 4.5 Esegui

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

Se si esegue la versione di LibreOffice tra 4.5 e 5.3 Esegui

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

Qui $HOME/.libreoffice-headless è una nuova directory del profilo diversa dal tuo profilo principale LibreOffice.

Altri suggerimenti

Prova a chiudere tutte le istanze di esecuzione di LibreOffice prima di eseguire il comando.Questa era la causa principale del mio dolore.

Il problema reale è che la riga di comando LibreOffice / Soffice non fornisce alcun messaggio di errore o informazioni di debug, quindi è tutta congettura.Se stai facendo, prova a straziare per suggerimenti.

Nel mio caso (Linux), non ho installato i pacchetti corretti, ad esempio, per convertire fogli di calcolo, è necessario LibreOffice-calc (DUH), e anche LibreOffice-Headless (Double-Duh).Ma la riga di comando non ti dirà che - si blocca o funziona e non fa niente.

I seguenti lavori

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

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

L'opzione --invisible non avvia la GUI ma fornisce alcuni indizi sulla riga di comando Cosa sta succedendo.

Testato su Linux Mint 13.

Questo ha funzionato per me su LibreOffice 4.2 / Linux:

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

Credito: http://ask.libreoffice.org/en/question/14130/how-do-iinstall-filters-for-the-soffice-command/

per me.Il problema che avevo era quello --Headless non funziona affatto (solo ritorni in 15 milli-secondi), se un processo di libreoffice locale ha già il documento aperto.

Assicurati di fare solo operazioni senza testa su un documento che non è già aperto in LibreOffice.

Per me, i seguenti due pacchetti sono stati i minimi necessari per ottenere la conversione DOCX senza testa in PDF che lavora a Centos 7:

yum install libreoffice-headless  libreoffice-writer
.

Su Windows ho riscontrato il seguente problema: Ho provato a convertire tutti i file DOC in PDF utilizzando il seguente comando:

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

Non è riuscito senza alcun messaggio di errore.Ma ha funzionato quando metto un nome file di uno dei file invece di *.doc.Quindi apparentemente è stato un problema con la risoluzione del carattere jolly in *.doc.Quello che ho fatto è eseguire esattamente lo stesso comando sopra ma da Git Bash invece del normale prompt dei comandi (cmd.exe).Ha funzionato.Qual è il più: in Git Bash ha visualizzato le informazioni di avanzamento dei progressi e i messaggi informativi !

Quindi il mio consiglio è: Se stai eseguendo Soffice.exe su Windows e non ottenere alcuna output, esegui il comando da Git Bash (puoi ottenere Git Bash installando Git per Windows )

Uno dei problemi che ho incontrato con LibreOffice era il problema con gli spazi vuoti.Dopo aver iniziato il nome ("test-document.docx" invece di test "Documnet.docx") ha funzionato perfettamente. Dalla versione 4.2.8.2 - 5.3.

Ho dovuto installare il pacchetto xvfb (yum install xorg-x11-server-Xvfb), è il manichino xserver.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top