PDFファイルはAdobeが開発した電子文書フォーマットです。
C#からこのPDFファイルを操作する方法として iTextSharp というオープンソースライブラリの使い方について解説します。
iTextSharp とは
iTextSharp は、元々Javaで開発されていた iText というライブラリのC#版です。
iTextSharp にはいくつかバージョンがありますが、バージョンによってライセンス形態が異なるので注意が必要です。(バージョン7以降は iText for .NETと呼ばれるようになりました)
- iText for .NET 7.1.14 ・・・ AGPLライセンス
- iTextSharp 5.5.13.2 ・・・ AGPLライセンス
- iTextSharp 4.1.6 ・・・ LGPLライセンス
LGPLとAGPLではコピーレフトの適用範囲が異なります。
コピーレフトとは「オープンソースソフトウェア(OSS)から派生したソフトを作成して配布する時は同じ条件でソースコードを公開する」というものです。
AGPLライセンスはコピーレフト型と呼ばれるライセンスで、OSSのソースコートを再利用する場合、ライブラリとして利用する場合のどちらにもコピーレフトが適用されます。
LGPLライセンスは準コピーレフト型と呼ばれるライセンスで、OSSのソースコートを再利用する場合はコピーレフトが適用されますが、ライブラリとして利用する場合は適用されません。
AGPLでは作成したソフトのソースを公開する必要があるのに対して、
LGPLではライブラリとして利用すれば自由に使う事ができます。
(著作権表記は必要です)
※コピーレフトは個人で利用する場合や自社内のみで利用する場合は当てはまらないようです
iTextSharp 4.1.6 のインストール
バージョンは古いですがライセンスの状況から利用しやすいバージョン4系のライブラリを利用してみます。
Visual Studio を使っているなら NuGet を使って簡単にライブラリのインストールが可能です。
メニューから「ツール(T)」→「NuGet パッケージ マネージャー(N)」→「ソリューションのNuGet パッケージ管理(N)...」を選択します。
「参照」をクリックしてから検索欄に「iTextSharp」と入力しましょう。
いくつかのバージョンが表示されますが「iTextSharp-LGPL」というパッケージを選択しましょう。
パッケージを選択すると右側にインストール画面が出てきます。
右画面の中で適用するプロジェクトにチェックを付けてから「インストール」ボタンをクリックします。
インストールが完了するとソリューションエクスプローラの参照に iTextSharp が追加されます。
コメントをお書きください