作成日: 2009年3月5日 | |
作成者:(株)エスアイヤ | 代表取締役 河野俊之 CTO 木戸間 周平 チーフシステムエンジニア 江上 新一 |
最終更新日: 2009年3月5日 |
今回は、ColdFusionを使って行うPDFの操作やZIPファイルの操作について解説します。
PDFはアドビシステムズ社によって開発された電子文書フォーマットです。特徴としてホストコンピューターの環境に依存することなく、作成した文章のフォントや文字の大きさ、字飾り、埋め込まれた画像、レイアウトをかなり正確に再現することができるというものがあります。また、世界中の企業や行政機関にも認められたフォーマットであり、利用者も多いことから、事実上の世界標準電子文書フォーマットと言えます。ColdFusion8からは、そのPDFを作ったアドビシステムズ社の製品となったこともあり、PDFとの連携が大幅に強化されました、ColdFusion8から追加されたcfpdfタグの機能を見るだけでもColdFusionとPDFの連携がいかに強力なものか分かっていただけると思います。
cfpdfタグの機能には以下のものがあります。
・既存のPDFファイルに、電子透かしをつける。
・既存のPDFファイルから、電子透かしを取り除く。
・既存のPDFファイルから文書情報を取得する。
・既存のPDFファイルに文書情報をつける。
・既存のPDFファイルのサムネイルを作成する。
・複数のPDFファイルを1つのPDFファイルに結合する。
・既存のPDFファイルから特定ページを削除する。
・DDX命令によってPDFファイルを作成する。
・既存のPDFファイルを暗号化する。
・PDFファイルのドキュメント変数の名前を指定する。
・PDFファイルのドキュメントを出力ファイルに書き出す。
ColdFusionには、cfpdfタグが用意される以前にもHTMLからPDFを生成することができるcfdocumentタグなどが用意されており、ColdFusionは、もともと優れたPDF連携機能を持っていたと言えます。そこにcfpdfタグやcfpdfformタグが追加されたことで、ColdFusionとPDFの連携機能はさらに充実し自由度の高いものになりました。これらの機能は特別な知識を必要とすることなく、ColdFusionに馴染みのある開発者でなくとも非常に簡単に使用する事ができるようになっています。
これまでColdFusionでZIPファイルを操作する際には、Javaのライブラリを呼び出して、独自にZIPファイルを扱う処理を実装していました、これらはCFXや、CFCなどとしてモジュール化することで再利用することもできますが、共通のモジュールではないため、このようにして作られたモジュールを開発した者以外が使おうとした場合、利用方法に戸惑うことになるかもしれません。またColdFusionを共有ホスティングで利用しているような場合はこれらの機能を実装すること自体、ホスティング会社のセキュリティポリシー上、難しいケースもありました。ColdFusion8では、これらの問題を解決できるcfzipタグが標準で用意されました。cfzipタグでは、ZIPファイル、JARファイルの圧縮、展開を行うことができ、圧縮されているファイルの中身をリストとして取り出すこともできるため、ウェブアプリケーションでZIPファイルを扱うために必要なものは一通り揃っています。そしてこの機能もまた、その他のColdFusionの機能と同じく簡単に利用することができます。
ColdFusion以外の言語にもPDFを操作するライブラリなどは存在しますが、商用で利用する場合は別途高額なライセンスが必要であることや、言語に標準で用意されたライブラリではないため、システムに組み込むために連携部分を作りこむ必要があることもあります。しかし、ColdFusionで用意されたPDF連携機能は標準で用意されたものであり、別途ライセンスを必要とすることなく、非常に簡単にPDFファイルを操作することができます。それらの機能がPDFを開発したアドビシステムズ社から提供されているという安心感は、他の言語に比べて大きなアドバンテージになっています。
また、cfzipタグが用意されたことでZIPファイルを使った処理も簡単に構築することができるようになりました。ZIPファイルをうまく活用することで、ウェブアプリケーションの利用者、管理者ともに多くのメリットを享受することができ、さらに使いやすいウェブアプリケーションを開発することができるのではないでしょうか。
今回扱った内容は、ColdFusion 8プロフェッショナルガイドのChapter8にて、cfpdfタグを使ってできるPDF操作、ZIPファイル操作のサンプルコードを含め、詳しく解説しています。こちらも是非ご覧頂ければと思います。
いよいよ最終回となる次回は、ColdFusion Administratorに追加された新機能を中心に、ColdFusion 8の設定項目の詳細について解説します。