Soffice PDF変換時にユーザプロファイル変更するとエラーになる

初めて質問を投稿致します。よろしくお願い致します。

Microsoft ExcelがバージョンアップするにつれてPDF変換はどんどん遅くなっており、特にExcel2021はPDF変換が異常に遅く、ExcelのPDF変換に見切りをつけようと思い、LibreOffice CalcのsofficeによるPDF変換処理を調べていました。

実際に処理を動かしてみて、Excel2021よりもsofficeによるPDF変換のほうが処理が早いことがわかりました。

また、sofficeによるPDF変換時に私が使用しているPCのCPU使用率にかなりの空きがあったので、さらなる処理の高速化を図るため、以下の記事を参考にしてWindows環境でPDF変換の並列処理を実現しようと調べていました。

ちなみにこちらの記事は、Ubuntu環境で、元のユーザプロファイルをコピーし、新しいユーザプロファイルを複数作成して、PDF変換の並列処理を実現する、というものです。

これをWindows環境で実現しようと思い、Windows10環境にLibreOffice7.4.6(64-bit)を用意し、新しいユーザプロファイルを使用した以下のコマンドを実行してみたのですが、実行直後にエラーメッセージが出てしまい、処理がうまくいきませんでした。

《実行コマンド》
soffice -env:UserInstallation=file://C:\tmp\user1 --headless --convert-to pdf test1.xlsx --outdir ./out

《エラーメッセージ》
『プログラムは起動できません。
設定ファイル “C:\Program Files\LibreOffice\program\bootstrap.ini” は破損しています。』

なお、ユーザプロファイルを指定しない、

「soffice --headless --convert-to pdf test1.xlsx --outdir ./out」

というコマンドは正常にPDF変換を行ったので、bootstrap.iniが実際に破損しているとかではなく、ただ単にユーザプロファイル変更で問題が起きているようです。

ユーザプロファイル変更ができないとPDF変換の並列処理もうまくいかないようなので、どうにかしてエラーが発生しないようにしたいのですが、何が足りなかったのか、心当たりありませんでしょうか。

LibreOfficeの情報が少なく、周囲に聞ける者もおらず、もし可能ならば何かアドバイスいただけると幸いです。

ご迷惑と思いますが、よろしくお願いいたします。

実行コマンドを次のようにしてみるとどうでしょうか?

soffice -env:UserInstallation=file:///C:/tmp/user1 --headless --convert-to pdf test1.xlsx --outdir ./out

4 Likes

アドバイスありがとうございます。

ご教示いただいたコマンド書式でエラーが無くなりました。
スラッシュの数と、フォルダパスの文字の問題だったんですね。

今回のアドバイスのおかげで、私が目指していた、Windows環境でのsofficeによるPDF変換の並列処理も実現できました。
使用しているPCのCPUを有効活用することで、処理が格段に早くなりました。

私はExcel2021でのPDF変換の遅さに絶望感を感じて、LibreOfficeに辿り着いたのですが、今回の件でLibreOfficeと、このコミュニティの方が大好きになりました。

本当にありがとうございました。

3 Likes