自社の特定の目的で、PDFを扱う機能を使ったツールやソフトウェアを用意したいとき、開発用のライブラリ製品などを使うことがあります。開発用のライブラリには様々なものがありますが、中でもPDFの本家本元、Adobe製のものと言えば、「Adobe PDF Library」と「Acrobat SDK」の2つがあります。この2つにはどんな違いがあるのでしょうか。
今回はその違いについてご説明したいと思います。

Adobe PDF Library 概要

まずこのブログでも何度かお伝えしてきました、イーストから提供している「Adobe PDF Library」について、改めて簡単にまとめてみましょう。

Adobe PDF Libraryは、AcrobatやIllustratorと言ったいくつかのAdobe製品の内部で、PDFの出力や操作をするために使われている処理を、開発用のライブラリ製品として提供しているものになります。
このライブラリを使って開発をすることで、自社開発のソフトウェアやツール、プログラムの中に機能を組み込んで、Adobe製品で使われているものと同一のPDF処理が利用できるようになります。Adobe PDF Libraryは、C/C++、C#または VB .NET、.NET6、および Java から呼び出すことができます。

Acrobat SDK 概要

「Acrobat SDK」は、Adobeから提供されているAcrobatプラグインなどを作るための開発環境です。その名の通りAcrobatに独自の機能を追加することや、Acrobatを外部から制御するために使われます。
詳しく言うと、Acrobat 本体に動的にリンクされる DLL (Acrobat プラグイン) の開発、そしてアプリケーション間通信により、外部から Acrobat を制御するアプリケーションの開発が可能となります。

2つの違いとは?

今回挙げた2つの開発ツールの最も大きな違いは、実行時にAcrobatを必要とするか否か、ではないでしょうか。Acrobat SDK で作れるのはあくまでAcrobatのプラグインであるため、Acrobatがインストールされていなければ動作させることができません。ただし、Acrobatの豊富な機能を使いつつ、自社独自に加えたい機能をプラスして運用できることは、大きなメリットと言えます。

一方、Adobe PDF Libraryを使った場合は、利用者が作成するプログラムやシステムの中でその機能を呼び出すことができ、他に製品やソフトウェアを必要としません。そのため、自社用途のみならず販売用の製品にその機能を組み込み再配布することも可能となります。
また、Adobe PDF Libraryはサーバーソリューションとして稼働する際にも使用可能ですが、Acrobat SDK で作ったプラグイン=Acrobat は、サーバー上での稼働がライセンス上認められていませんので、そういった用途ではAdobe PDF Libraryを使う必要があります。

まとめ

Adobe PDF LibraryとAcrobat SDK、呼び出される方法は大きく異なりますが、PDFを扱う機能としては、似通ったものと言ってもよいでしょう。機能別に見ても重複しているものが数多くあります。また異なる点もあります。下記のページに一覧としてまとめられていますので、ご参照ください。

Acrobat and PDFL Developer Guides – Getting Started

元々高機能な製品でありUIを持っている AcrobatのSDKのほうが、機能がやや多いのですが、ユーザープログラム内部で使用するか、Acrobatのインストールを必要とするかで、そもそもの動作環境上の前提が異なります。実現したいことは似ていても、サーバー/クライアント環境なのか、またAcrobatの機能も必要なのか、そういった要素でどちらを使うかが決まってくるのではないでしょうか。
Adobe PDF Library や Acrobat については、イーストでご提案が可能ですので、もしご興味がありましたら、お気軽にお声がけください。