guiでせっせと作るのも良いのだが、
ボタン一つで作成させたい。
そこで、エクセルをpdfに変換するものをいろいろ探したところ、
libreofficeのCUIを使うのが一番崩れないようだ。
早速だが、CUIの環境を構築
#yum install libreoffice libreoffice-langpack-ja
早速コマンドを投げてみる。
libreoffice --nologo --nofirststartwizard --convert-to pdf /var/www/html/pdf/000001.xlsx
エラーが返ってきた。
/usr/lib64/libreoffice/program/soffice.bin X11 error: Can't open display:
Set DISPLAY environment variable, use -display option
or check permissions of your X-Server
(See "man X" resp. "man xhost" for details)
https://help.libreoffice.org/Common/Starting_the_Software_With_Parameters/ja
調べてみると、
オプションで --headless を付けないと、ユーザーインタフェースが動いてしまい、NGらしい。
そこで、追加でオプションを実装。
#yum install libreoffice-headless
libreoffice --headless --nologo --nofirststartwizard --convert-to pdf /var/www/html/excel/pdf/00001.xlsx
convert /var/www/html/excel/pdf/00001.xlsx -> /home/<
変換できた。
線種や文字化けはなさそう。
サイズが大きいと、ページを跨いでしまうようなので、余白の設定等で、そこをなんとかできれば、
十分使えそう。
0 件のコメント:
コメントを投稿