Libreoffice convert-toが機能しない
-
23-12-2019 - |
質問
ドキュメントをhtml、txtからpdf、odt、およびその逆に変換しようとしています。.しかし、pdfへのodtだけが機能するようです。.他のファイル形式は変換されません
ここに私のコマンドがあります
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]
解決
これはバージョン5.3で修正されたLibreOfficeの既知の問題。 0。 LibreOfficeのインスタンスが実行されているとき - コントローラやその他のコマンドが何もせずに黙って終了すると、この修正が修正される前に。
あなたのバージョンが古くなっている場合は、ソリューションがここに提案されています。それは、変換を実行する前にすべてのLibreOffice文書を開く前に閉じています。
変換を実行するためにすべてのLibreOffice文書を閉じることができない場合、またはそれが不便を見つけた場合は、ソリューション元のバグへのコメントで提案されています。
あなたが4.5 run
の前にlibreOfficeバージョンを持っている場合soffice -env:UserInstallation=file:///$HOME/.libreoffice-headless/ \
--headless --convert-to pdf test.docx
.
LibreOfficeバージョンを実行している場合は、4.5から5.3 run
soffice -env:UserInstallation=file:///$HOME/.libreoffice-headless/ \
--convert-to pdf test.docx
.
ここ$HOME/.libreoffice-headless
は、メインのLibreOfficeプロファイルとは異なる新しいプロファイルディレクトリです。
他のヒント
コマンドを実行する前に、RIBREOFFICEのすべての実行中のインスタンスを閉じてみてください。これは私の痛みの根本的な原因でした。
本当の問題は、libreOffice / sofficeコマンドラインがエラーメッセージまたはデバッグ情報を提供しないため、すべての推測Workです。あなたがそれまでのなら、そのヒントのためにストレープを試してください。
マイケース(Linux)では、私は正しいパッケージをインストールしていませんでした - 例えば、スプレッドシートを変換するために、libreoffice-calc(DUH)、およびlibreOffice-headless(Double-Duh)が必要です。しかし、コマンドラインはあなたに言うことはありません - ハングするだけでなく、何もしません。
以下の作品
libreoffice --invisible -convert-to pdf myFile.html
libreoffice --invisible -convert-to docx myFile.odt
オプション --invisible
GUIを起動しませんが、何が起こっているのかコマンドラインでいくつかの手がかりを与えます。
Linux Mint13でテスト済み。
これはLibreOffice 4.2 / Linuxで私のために働いた:
soffice --headless --convert-to txt:Text /path_to/document_to_convert.odt
.
クレジット:
私にとって。ローカルLibreOfficeプロセスにドキュメントが開いている場合、これが機能しない問題は機能しませんでした(15ミリ秒で返されるだけ)。
LibreOfficeでまだ開いていない文書に対してのみヘッドレス操作しかできることを確認してください。
私にとっては、次の2つのパッケージが、CentOS 7での機能をPDF変換するためにヘッドレスDOCXをPDF変換するのに必要な最小値でした。
yum install libreoffice-headless libreoffice-writer
. Windowsでは、次の問題が発生しました。次のコマンドを使用して、すべてのDocファイルをPDFに変換しようとしました。
soffice --invisible --convert-to pdf *.doc
.
エラーメッセージなしで失敗しました。しかし、*.doc
の代わりにファイルの1つのファイル名を入力するとうまくいきました。それでは、それは*.doc
でワイルドカードを解決するという問題でした。私がしたことは、上記とまったく同じコマンドを正確に実行しますが、通常のコマンドプロンプト(cmd.exe)の代わりにGit Bashから実行されます。動いた。より多くのもの: Git Bashでは進捗情報と有益なメッセージを表示しました!
だから私のアドバイスは、Windowsでsoffice.exeを実行していて、出力を受けていない場合は、Git Bashからコマンドを実行してください( git for Windows )
libreOfficeで遭遇した問題の1つは、空のスペースに関する問題でした。名前をスラグした後( "documnet.docx"のテストの代わりに "test-document.docx")それは完全に機能しました。 バージョン4.2.8.2から - 5.3。
xvfb
パッケージ(yum install xorg-x11-server-Xvfb
)をインストールしなければならなかった、それはxserver
ダミーです。