Copper PDFは、様々なOS(Windows, MacOS X, Linuxなど)で動かすことができます。
例えばWindowsで動かしてみましょう。Copper PDFはJava(JDK)を必要とします。 また、Copper PDFが出力したPDFを見るためにはAdobe Readerが必要です。 お手元の環境に入っていない場合は、それぞれ以下のアドレスからダウンロードしてインストールして下さい。
以下のアドレスから「Windows用ZIPアーカイブ」をダウンロードしてください。これがWindows版のCopper PDFの本体です。
ZIPファイルを展開し、CopperPDFディレクトリ内のcopper-webapp.exeをダブルクリックして実行してください。 ブラウザが起動し、Copper WEBAPPというタイトルのページが開きます。 これでCopper PDFが無事に動作しました。
とりあえず、何か表示させてみましょう。例えば上部の入力欄に https://ja.wikipedia.org/ (Wikipediaのアドレス)を入力し、読込ボタンを押してください。 しばらく待つと、ウィキペディアのトップページがPDF化されて、ブラウザ内に表示されます。
同じように、 https://www.w3.org/TR/xslt20/ (XSLT 2.0の仕様書)を読み込んでみてください。みるみるうちに300ページを超える仕様書のPDFが生成されます。 このような大きな文書でも高速処理できることがCopper PDFの特徴です。
手元のPCの中のファイルは、右側のファイルツリーから選択して変換することができます。 ドラッグ&ドロップはできませんのでご注意ください。 Copper WEBAPPを終了させるには、右上の赤いボタンを押してください。
Copper WEBAPPは、Copper PDFでPDF変換するためのHTMLデザインの補助ツールとしてご利用ください。
Copper PDFは、コマンドアプリケーションとしても動作します。 コマンドライン上での簡単な作業や、バッチ処理には便利です。 コマンド・プロンプトを起動しCopperPDFディレクトリに移動して、copper を実行してください。 例えXSLT 2.0の仕様書の変換は次のとおりに行います。
copper -uri https://www.w3.org/TR/xslt20/ -out test.pdf
しばらくした後、変換結果としてtest.pdfというファイルが生成されます。
Copper PDFが真価を発揮するのは、ここで説明する他のプログラムとの連携です。 プログラムから文書の変換を行うには、あらかじめCopper PDFサーバーを起動した状態にする必要があります。 コマンドラインからサーバーブログラム(copperd)を起動するには、 コマンド・プロンプトを起動しCopperPDFディレクトリに移動して、 copperd -start を実行します。
つぎに、ウェブ開発で広く使われているPHPを使ってCopper PDFにアクセスしてみましょう。 すでにマシンにPHPがインストールされているか、あるいはLANでつながった他のマシンにPHPがインストールされている場合は、それを使って構いません。 copperdは初期設定の状態では、ローカルマシンだけからアクセスできるようになっています。 confディレクトリ内のaccess.txtを編集して、
allow 接続元のIPアドレス
という行を先頭に加えて、特定のマシンからのアクセスを許可するか、あるいは
allow *
という行を加えてネットワークからのアクセスを全て許可してください(セキュリティにご注意ください)。
Windowsマシンにインストールする場合は、以下のアドレスから Installer をダウンロードして、インストールしてください。
Copper PDF のプログラムインターフェースは、本体とは別に配布されています。 以下のアドレスから、cti-php-2.x.x.zip という名前のファイルをダウンロードしてください。
展開してできたcti-php-2.x.xというディレクトリに、次の中身のファイルを保存してください(文字コードはシフトJISです)。
<?php require_once ('code/CTI/DriverManager.php'); //セッションの開始 $session = cti_get_session('ctip://localhost:8099/', array('user' => 'user', 'password' => 'kappa')); //ファイル出力 $session->set_output_as_file('test.pdf'); //文書の送信 $session->start_main('.'); $date = date('Y-m-d H:m:s'); ?> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=SJIS" /> <title>TEST</title> </head> <body> <h2>Hello World!</h2> ただいまの時刻は<?php echo $date ?> </body> </html> <?php $session->end_main(); //セッションの終了 $session->close(); ?>
コマンド・プロンプトを起動し、cti-php-2.x.xディレクトリ内で、
php test.php
を実行してください。 同じディレクトリ内にtest.pdfというファイルができれば成功です。