Topics

All news & informations

JODConverterのインストール方法

エンジニアブログ
OfficeファイルのPDF変換やPPTからのFLASH変換のモジュールに関して、お問い合わせをいただくことが多いのですが、オープンソースのものをそのまま利用しておりますので、こちらを参考にインストールをしていただくとよいと思います。
以前、在籍してくれていたバイトの子が作った手順書です。

---------------------------------------------------------------------
オフィスドキュメントの変換をするための環境構築手順
(Java + Openoffice.org + JODConverter)
  written by K.Motomura in 12.27.2007
---------------------------------------------------------------------
[目次]
0. 概要
1. はじめに
2. Java Runtime Environment 1.6.0.3 のインストール
3-1. Openoffice.org 2.3.x のインストール
3-2. Openoffice.org 2.3.x を listening mode で起動
4. JODConverter のダウンロードとインストール
5. 使用例
==========================================================
概要
==========================================================
Openoffice.org と JODConverter を使って、オフィスドキュメントの
変換を行うための環境を構築する手順書です。
◆読み方
行頭が「 # 」で始まる行は、コマンドの入力です。
==========================================================
1. はじめに
==========================================================
◆JODConverter 公式HP
 http://www.artofsolving.com/opensource/jodconverter
◆JODConverter の動作環境
 ・Java Runtime Environment 1.4 以上
 ・OpenOffice.org 2.0.3 以上
 ・Xvfb (OpenOffice が 2.3.0 以上であれば不要)
※今回は、Openoffice.org 2.3.0 以上を使います。(Xvfb 不要)
------------------------------------------------
◆入力対応フォーマット
文書     : odt, sxw, rtf, doc, wpd, txt, html
表計算   : ods, sxc, xls, csv, tsv
プレゼン : odp, sxi, ppt
ドロー   : odg
◆出力対応フォーマット
文書     : pdf, odt, sxw, rtf, doc, txt, wiki, html
表計算   : pdf, ods, sxc, xls, cvs, tsv, html
プレゼン : pdf, swf, odp, sxi, ppt, html
ドロー   : svg, swf
------------------------------------------------
【HTML の扱いについての注意事項】(公式の注意書き直訳)
◆HTML の入力
HTML 解釈は完全ではなく、あまり複雑な WEB ページは解釈できません。
シンプルで、「プリンタに優しい設計」になっている WEB ページにしか
使えません。
◆HTML の出力
HTML を出力すると、変換元のファイルに含まれる画像なども
同一ディレクトリに出力されます。アップロードされたファイルを
変換して、HTML を返すような WEB サービスを提供する場合には、
注意が必要です。
==========================================================
2. Java Runtime Environment 1.6.0.3 のインストール
==========================================================
※Java Runtime Environment = JRE
◆JODConverter は JRE 1.4 以上で動作するということになっています。
 しかし、実際には動かないことが多いので、最新の
 JRE 1.6.0.3 (Version 6 Update 3) をインストールします。
------------------------------------------------
 # mkdir /usr/java
 # cd /usr/java
 # wget http://javadl.sun.com/webapps/download/AutoDL?BundleId=12791 --output-document=jre-6u3-linux-i586.bin
 # chmod 755 jre-6u3-linux-i586.bin
 # ./jre-6u3-linux-i586.bin
##### 使用規約に同意して解凍します。(yes と入力)
 # cd jre1.6.0_03
 # cp bin/* /usr/bin
 # cp -r lib/* /usr/lib
 # cp -r javaws /usr
==========================================================
3-1. Openoffice.org 2.3.x のインストール
==========================================================
◆OpenOffice をインストールします。yum から入れたいところ
 ですが、OpenOffice 2.3.0 以上 (Xvfb 不要) が欲しいので、
 自分で落としてインストールします。
------------------------------------------------
 # wget http://ftp.nluug.nl/ftp/pub/office/openoffice/localized/ja/3.1.0/OOo_3.1.0_LinuxIntel_install_ja.tar.gz
 # tar -zxvf OOo_3.1.0_LinuxIntel_install_ja.tar.gz
 # cd OOO310_m11_native_packed-5_ja.9399
 # rpm -ivh RPMS/*.rpm
------------------------------------------------
◆これで、「/opt/openoffice.org2.3」以下にファイルが展開されます。
 soffice の場所は
   /opt/openoffice.org2.3/program/soffice
 です。
==========================================================
3-2. Openoffice.org 2.3.x を listening mode で起動
==========================================================
◆JODConverter を使うには、OpenOffice.org を listening mode で
 起動しておく必要があります。(localhost 向けに8100番ポートを listen)
 (詳しくは以下を参照)
 http://www.artofsolving.com/opensource/jodconverter/guide
 http://www.artofsolving.com/opensource/jodconverter
------------------------------------------------
◆手動で起動する手順
------------------------------------------------
##### 必要に応じて環境変数 DISPLAY を削除
 # unset DISPLAY      ### 環境変数を削除 (sh/bash)
 # unsetenv DISPLAY   ### 環境変数を削除 (csh/tcsh)
##### 環境変数を設定/Openoffice.org のバグ回避 (2.3.1)
 # export OOO_FORCE_DESKTOP=none    ### sh/bash
 # setenv OOO_FORCE_DESKTOP none    ### csh/tcsh
##### 起動
 # /opt/openoffice.org2.3/program/soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard
------------------------------------------------
◆自動起動の設定
------------------------------------------------
 # vi /etc/init.d/soffice           ## 編集 (※)
 # chmod 755 /etc/init.d/soffice    ## 実行権を付ける
 # /sbin/chkconfig --add soffice    ## chkconfig に xvfb を追加
 # /sbin/chkconfig soffice on       ## 自動起動を設定
 # /sbin/chkconfig --list soffice   ## 自動起動が設定されたか確認
(※)↓編集例 ( /etc/init.d/soffice )
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
#!/bin/bash
#
# chkconfig: 3456 99 01
# description: Starts and stops Soffice. \
#              Openoffice.org deamon for JODConverter.
# processname: /opt/openoffice.org2.3/program/soffice
#####-------------------------- Soffice program
prog=/opt/openoffice.org3/program/soffice
progname=soffice
#####-------------------------- Source function library.
. /etc/init.d/functions
#####-------------------------- start
start() {
echo -n $"Starting $progname: "
unset DISPLAY
export OOO_FORCE_DESKTOP=none
"$prog" -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard &
RETVAL=$?
[ $RETVAL = 0 ] && echo "[  OK  ]" || echo "[ FAILD ]"
return $RETVAL
}
#####-------------------------- stop
stop() {
echo -n $"Shutting down $progname: "
killproc $prog
RETVAL=$?
echo
return $RETVAL
}
#####-------------------------- See how we were called.
case "$1" in
  start)
start
;;
  stop)
stop
;;
  restart|reload)
stop
start
;;
  status)
status $progname
    ;;
  *)
        echo $"Usage: $0 {start|stop|restart}"
        exit 1
esac
#####-------------------------- end
exit $?
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ 以上
==========================================================
4. JODConverter のダウンロードとインストール
==========================================================
◆jar なのでコンパイルは必要ありません。
 適当な場所に解凍するだけです。
------------------------------------------------
 # wget http://downloads.sourceforge.net/jodconverter/jodconverter-2.2.2.zip
 # unzip jodconverter-2.2.1.zip
==========================================================
5. 使用例
==========================================================
◆事前に Openoffice service を起動しておく
 # /etc/init.d/soffice start
◆変換の例
 # java -jar jodconverter-2.2.1/lib/jodconverter-cli-2.2.1.jar hoge.txt hoge.pdf
--------------------------------------
◆コマンドライン書式 (ファイル形式は拡張子で判別してくれます)
 # java -jar jodconverter-cli-2.2.1.jar [入力ファイル] [出力ファイル]
==========================================================
以上