web-dev-qa-db-ja.com

Libreofficeの変換先が機能しない

ドキュメントをhtml、txtからpdf、odt、またはその逆に変換しようとしています。しかし、odtからpdfのみが機能するようです。他のファイル形式は変換されません。

これが私のコマンドです

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]
16
casper123

これは、バージョン5.3.0で修正されたLibreOfficeの 既知の問題 です。この修正の前は、LibreOfficeのインスタンスが実行されているときに--convert-toまたは他のコマンドを実行すると、何もせずにサイレントで終了していました。

お使いのバージョンがそれより古い場合は、ここで Frank Yinが提案したソリューション を検討できます。これは、変換を実行する前に、開いているすべてのLibreOfficeドキュメントを閉じます。

開いているすべてのLibreOfficeドキュメントを閉じて変換を実行できない場合、または不便である場合は、元のバグへのコメントで提案されている solution を試すことができます。

LibreOfficeバージョンが4.5より前の場合実行

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

LibreOfficeバージョンを実行している場合、4.5と5.3の間を実行します。

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

ここに $HOME/.libreoffice-headlessは、メインのLibreOfficeプロファイルとは異なる新しいプロファイルディレクトリです。

12
Dmitri Chubarov

コマンドを実行する前に、実行中のLibreOfficeのインスタンスをすべて閉じてください。これが私の痛みの根本的な原因でした。

29
Frank Yin

本当の問題は、libreoffice/sofficeコマンドラインがエラーメッセージやデバッグ情報を提供しないことです。そのため、それはすべて推測です。あなたがそれまでなら、ヒントのためにstraceを試してください。

私の場合(Linux)、正しいパッケージがインストールされていませんでした。たとえば、スプレッドシートを変換するには、libreoffice-calcが必要です(duh)、libreoffice-headless(double-duh)。しかし、コマンドラインはそれを教えてくれません-ハングするか、実行されて何もしません。

9
Arnon Weinberg

以下の作品

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

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

オプション --invisibleはGUIを起動しませんが、コマンドラインで何が起こっているかについての手がかりを与えます。

Linux Mint 13でテスト済み。

6
z--

これはLibreOffice 4.2/Linuxで私のために働きました:

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

クレジット: http://ask.libreoffice.org/en/question/14130/how-do-i-install-filters-for-the-soffice-command/

2
markling

私のために。私が抱えていた問題は、ローカルのlibreofficeプロセスが既にドキュメントを開いている場合、-headlessが機能しないこと、AT ALL(15ミリ秒で戻るだけ))でした。

LibreOfficeでまだ開いていないドキュメントに対してのみヘッドレス操作を実行するようにしてください。

2
Wayne Walker

私にとって、CentOS 7でヘッドレスdocxからpdfへの変換を機能させるには、次の2つのパッケージが最低限必要でした。

yum install libreoffice-headless  libreoffice-writer
1
CompuLingus

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 をインストールするとGit Bashを取得できます)。

1
JustAC0der

Libreofficeで遭遇した問題の1つは、空のスペースの問題でした。名前(テスト「documnet.docx」ではなく「test-document.docx」)をスラッグした後、完全に機能しました。バージョン4.2.8.2から5.3まで。

0
Maky