Portable Document Format

レイアウトの保持

PDFは、Acrobat Readerに代表されるPDFビューアー（表示用のソフトウェア）がインストールされているコンピュータであれば元のレイアウトどおりに表示・印刷できる。Acrobat ReaderはWindows・macOS・Linuxなど各種オペレーティングシステム (OS) に対応したものが無償で配布されており、他のPDF閲覧ソフトも数多く存在するため、PDFファイルは多くの環境で閲覧・印刷できる。
PDF以外のテキスト形式の電子文書は、ほかのコンピュータ上で元のレイアウトを保持したまま表示・印刷するのは難しい。例えば、WordやExcelなどMicrosoft Officeの文書は、対応するソフトウェアをインストールすれば閲覧することは可能だが、バージョンや設定が違っていたり、フォントの有無が原因で編集者が意図した通りのレイアウトを保てない場合がある。HTML の文書は多くのコンピュータで閲覧できる。しかし、レイアウトの制限が大きい上、OSやウェブブラウザの種類・設定でレイアウトが変わりやすい。
そのため、厳密にレイアウトを保持する必要のある文書はPDF化することが多い。ただし、フォントの設定によっては、PDFでも元のレイアウトを保持できない場合がある。この問題は、フォントを埋め込むことで回避できる。

電子文書の公開・配布

PDFの特長は、PDFファイル作成元と異なるコンピュータ環境において、作成元文書のレイアウトや書式を忠実に再現した表示・印刷ができることにある。その性質を好んで、ウェブページ上の文書やソフトウエアの説明書などの広く公開・頒布する形態で多く利用される。また、同様の理由から、将来のコンピュータの環境変化を想定した長期保存向け文書 (PDF/A) や、 DTP の過程でPDFファイルを作成・利用する (PDF/X) 用途も多くなっている。

印刷物として制作した文書のPDF化

Quark XPressやAdobe InDesignなどのDTPソフトウェアで組版した結果のデータは、しばしばPDFファイルとして出力される。こうして作成されたPDFファイルは、印刷物と同じレイアウトの電子文書となる。一般に、PDFファイルの公開・配布は印刷物を配布するのに比べて低コストである。
そのためPDFを利用して例えば、カタログやパンフレットなどをインターネット上で公開したり、マニュアルや雑誌の収録記事をCD-ROMで配布することが多くなっている。

データの入力と収集

Acrobatは「フォーム」機能を利用し、文書入力のインターフェースとしても利用される。フォームとは記入用紙のことで、PDF内に記入欄を設け、エンドユーザーに入力させてメールで送付させる、あるいはPDFのインタラクティブ機能を使ってサーバに送信させることでデータを収集することができる。
またPDFファイルにはJavaScriptを埋め込むことができる。これにより入力のナビゲーションや入力時の値チェックなどが可能になる。

ISO規格化

国際標準化機構 (ISO) によるPDF 1.7の標準化以降、仕様の改訂はISOが預かるところとなった。アドビ独自のバージョンアップは、ベースとなるバージョン (1.7) に対する "Adobe Extensions" という形で行われている。

PDF 1.7

PDF 1.7の仕様書の最終版は 2008年1月に ISO Technical Committee 171にて採択され,2008年7月1日にISO 32000-1:2008 Document management – Portable document format – Part 1:PDF 1.7として公開された。
ISO 32000-1:2008 はPDFの機能を全て定義した初の規格である。それ以前にISO PDF規格になったもの (PDF/A, PDF/X, 等) は特定分野に適用される物である。ISO 32000-1はAdobe PDF仕様1.0から1.6で定められた物を網羅しているが、以前のバージョンの一部の機能はアドビにより削除されており、PDF 1.7についても同様である。
ISO 32000-1の文書はアドビの PDF Reference, sixth edition, Adobe Portable Document Format version 1.7, November 2006 を元にしており、ISO Technical Committee 171 (ISO/TC 171), Document management application, Subcommittee SC 2, Application issuesによるファストトラック (Fast-track procedure) 制度により審査された。
ISO PDF 規格の要約 (abstract) には以下のように記述されている。:
ISO 32000-1:2008 は電子文書のユーザーが交換と閲覧を行うにあたり、作成した環境に依存することなく再現し、閲覧および印刷するための形式を定義する。その目的とするところはPDFファイルを作成するソフトウェア、既存のPDFファイルを閲覧およびコンテンツを画面に表示するよう解釈しユーザーと対話するソフトウェア、またその他の用途のためにPDFファイルを読み書きする各種製品の開発者に供するものである。
ISO 32000-1 の中にはアドビのプロプライエタリな仕様の部分がいくつか引用規格とされており、（Adobe Acrobat JavaScriptやXFA (XML Forms Architecture) など) ISO 32000-1に準拠するためにはこれらが不可欠となっている。

PDF 2.0

新しいバージョンのPDF規格はISO/CD 32000-2 - Document management – Portable document format – Part 2:PDF 2.0として策定され、2017年7月に公開された。

ISO TC 171 SC 2 WG 8

（TCは「専門委員会」、SCは「分化委員会」、WGは「作業グループ」の略。ISOの組織については国際標準化機構を参照）
2008年にISO標準を策定するために設置された。作業グループ8は年に二度会合を開き、10カ国以上より参加者が集まる。ISO 32000の委員会のミーティングは認定された主題専門家に対しオープンとされている。関心を持つ団体は、ISOの会員団体に参加について問い合わせる。
現在のプロジェクトのリーダーシップはシェリー・エクホルム（マイクロソフト） 、副リーダーはダフ・ジョンソン（独立コンサルタント）が担当している。
以前のリーダーは 2008年より2011までジェイムズ・キング博士（アドビシステムズ）が担当した。ISO幹事はベッツィー・ファニング(AIIM)。

技術概要

PDF文書は1以上のページで構成され、各ページにはテキスト・画像・図形が含まれる。
PDFファイルの生成には、アドビシステムズ社純正の「Adobe Acrobat」やサードパーティー製品を利用する方法がもっとも基礎的である。さらに、クラウド形態などによりサーバサイドでPDFファイルを作成するシステムや、PDFファイル生成とは異なる主目的をもつソフトウエアが PDFファイルを生成する補助機能を搭載している場合もある。
PDFファイルの表示や印刷は、第一にAcrobat Readerなどの専用のビューアーアプリケーションを用いる方法がある。ウェブ上で公開されているPDFファイルについては、パソコンのウェブブラウザ上で閲覧できることがある。当初はAcrobat Readerのプラグインを用いていたが、現在Google Chrome、Mozilla Firefox、Microsoft Edgeなど、PDF表示機能を内蔵する製品も登場している。しかし、これらの製品でも、スマートフォン向けでは、PDF表示機能が除外されている。
PDFの仕様は、ISOで標準化される以前からアドビシステムズから公開されてきている。そのため、アドビシステムズ以外のさまざまな企業・団体や有志が、PDF関連のソフトウェアを開発・公開しており、オープンソースソフトウェア、フリーウェアも数多い。

イメージモデル

PDF内の画像の記述方法はPostScriptに近く、相違箇所は透明の有無である。透明はPDF 1.4で追加された。

ベクター画像

ベクター画像はパスで記述された物で、直線、方形、ベジエ曲線で構成される。
図形を記述するだけでなく、文字のアウトラインを記述する場合もある。
パスはストローク、塗りつぶし、クリッピング（切り抜き）に使われる。ストロークと塗りつぶしは自由な色、模様を指定できる。
模様はタイリング、色なしのタイリング、シェーディングを指定できる。

テキスト

テキストはPDF内のコンテント ストリーム内でテキスト エレメントとして記述される。テキストエレメントはどの文字がどの座標に表示されるかを定義し、どのフォントとエンコーディングを使うかも記述する。

フォント

フォントオブジェクトは、タイプフェースを記述する。どのフォントを使用するか記述するほかに、フォントファイルの埋め込みもできる。
埋め込めるフォントはType1、TrueType、OpenTypeがある。

フォントの埋め込みの注意

電子文書を正しく表示するためには、フォントが正しく設定されている必要がある。一般に、文書作成時に使用されているフォントがインストールされていないコンピュータでは、文書を正しく表示・印刷できない。例えばヒラギノフォントを使って作成した文書は、このフォントがインストールされていないコンピュータでは代替の日本語フォントで表示する必要がある。さらに、日本語フォントがインストールされていないコンピュータではエラーや文字化けが発生し、正しく表示できない。
PDFの文書では、使用しているフォントを埋め込むことで、そのフォントがインストールされていないコンピュータでも正しく表示・印刷できる。フォントを埋め込む方法は2つあり、当該フォントに含まれているすべてのグリフ（字形）を埋め込む方法と、文章に使用されているグリフのみを埋め込む方法である。これらの選択は、PDFを作成する際に行う。フォントを埋め込んで作成したPDFの日本語文書は、日本語フォントがインストールされていないコンピュータでも正しく表示できる。
ただし、フォントを埋め込んだPDFファイルはファイルサイズが大きくなるという問題がある。また、フォントを埋め込む場合は、フォントのライセンスにも注意する必要がある。

エンコーディング

テキストストリーム内では、文字は文字コード（番号）によって記述される。WinAnsi、MacRomanのほか東アジアの各種言語のエンコーディングが定義されているほかに、フォント自身に独自のエンコーディングを持つことも出来る。
基礎がType1フォントを前提に作られたので、TrueTypeフォントなどを記述する場合は、非常に複雑な記述になる。

日本語のエンコード

文字コードについては、全ての文字列が独自のルールで英数字にエンコードされる。英語文書の場合はある程度解読できるが、多バイト文字になると非常に複雑なルールでエンコードしなければならない。
それで得られるメリットは、処理系にかかわらず文字を正確に区別できることで、例えばJIS90形式の文字とJIS2004形式の文字はJIS、Unicode上では同じ文字コードでありながら字形が異なる文字があり、普通の処理系ではどちらかのフォントしか表示できないが、PDF上では一緒に記述できることが挙げられる。
しかしながら例えばWindows 2000とWindows Vista間ではMS明朝、MSゴシックのフォントのバージョンは異なり、フォントを埋め込まないようにPDFを作成すると、片方の環境では文字が全面的に文字化けするケースがある。
また、フォントが埋め込まれているため文字化けしていないように見えても、文面をクリップボードにコピーしてエディタに貼り付けると、テキストストリームが異機種のエンコーディングになっていて文字化けするケースもある。
Adobe製品は比較的問題が起こりにくいが、サードパーティー製品や海外製のソフトウェアでは現在もこの種の問題に遭遇することがある。

インタラクティブ性

PDFファイルには、音楽、動画などのマルチメディアファイルを含めることができる。
そのためPDFファイルは、コンピュータを使ったプレゼンテーション用に使うこともできる。
2005年にアドビシステムズが Flash の開発・推進を進めてきたマクロメディアを買収しており、それ以降アドビシステムズによる Flash と PDF との統合が進められている。
そのためAdobe製品によるPDF表示では、Flash形式のファイルが埋め込まれていてもプラグインなどをインストールせずに再生することが出来る。しかしQuickTimeはサポートされない。これはAppleとAdobeの敵対的な関係を示しており、そのためAppleのiOSデバイスではリッチメディアPDFはインタラクティブ性が損なわれる。
またフォームはユーザーに入力させるメカニズムで、AcroForms(PDF 1.2より)と Adobe XML Forms Architecture(XFA)(PDF 1.5より) の2種類が使える。XFA仕様はPDF仕様に含まれておらす、オプション機能として言及されているだけである。

論理構造とアクセシビリティ

「タグ」機能により、PDFのコンテンツにはセマンティックな（意味に基づく）構造と関連が記述できるようになり、これによりPDFの順序付けた読み上げか可能になった。
タグ付きPDFは印刷用途のPDFには必要ないためオプション扱いとなっており、ISO32000-1の記述も曖昧な物になっている。

スキャンした文書

紙資料をイメージスキャナなどを使って電子文書にする場合も、PDFが利用されることが多い。
紙資料を電子文書化するとき、PDFを利用しない場合には、TIFFなどの画像ファイルとして保存する方法と、OCRソフトウェアを使ってテキストとして保存する方法がある。画像ファイルとして保存された電子文書は画面上で見る場合には紙資料と同じ内容が再現できるものの、文章や文字をコピーすることができないなどテキストの再利用に大きな制限がある。また、OCRソフトウェアを使って作成したテキストファイルではテキストの再利用は可能となるが、OCRソフトウェアの精度の問題もあり、元の内容を完全に再現できない場合が多い。
PDFを利用すれば、紙資料をスキャンした画像の上にOCRソフトウェアで変換して作成した透明テキストを重ね、1つのファイルとして保存することができる。こうしたPDFの文書では、画面上で見る場合には紙資料の内容を完全に再現でき、不完全ではあるがテキストの再利用もできる。例えば、Acrobatにはバージョン6.0以降のStandard版以上でOCR機能が標準で搭載されるようになった。

アクセシビリティ

PDFの役割は印刷物をスクリーンに再現するだけではない。視覚障碍者向けの対応として、バーチャルな印刷物にとどまらず、XMLによる"タグ"を埋め込むことが出来る。これはページ内コンテンツの論理的な構造を表し、読み上げソフトを使う場合にどの順序で読むべきかなどの情報を提供する。
PDF作成用ソフトウェアによってタグ生成への対応度は分かれ、またデフォルトでタグ生成を有効にしていないソフトもある。特に紙からスキャンしてPDFを生成する場合はタグは軽視され、障碍者にとって障壁となることが多い。
PDFのアクセシビリティ対策は(i)フィジカルなビュー（普段目にする印刷物的な表示）と、読み上げソフトウェアが使用する(ii)タグのビュー、そして(iii)PDFを構成するテキストやグラフィックのオブジェクトのストリーム（タグがない場合には読み上げソフトはこのテキストストリームを読みにいく）という3つのビューの整合性を取るという困難な作業を伴う。

閲覧に使用したコンピュータのウイルス感染

PDFはセキュリティが考慮されていない古い時代のフォーマットである。脆弱性のあるAcrobat Readerで有害なJavaScriptを含むPDFファイルを開くと、コードが実行され、パソコンがウイルスに感染する。同時に、ダミーのPDFファイルを表示させて、ユーザーがウイルス感染を気付かないようにする。その脆弱性を悪用した攻撃があり、2009年12月以降、日本で話題になっている「Gumblar」もPDFを媒介としている。
対策として、リーダの最新版へのプログラムアップデートがあるが、新たな脆弱性が発見されてからアップデートまでに時間が必要である。ユーザーによる不要な機能の無効化（例えばAcrobat ReaderにおけるJavaScriptエンジンの無効化）を併用することが推奨される。

DRM

Adobe LiveCycleen製品群ではDRMを実装しており、エンドユーザーに配布されたPDFに対して、後から閲覧権限を変更することができる。応用の一例としては、配布されたPDFの内容が古くなってしまった場合に閲覧禁止として、新しい版をダウンロードするよう求めるような例がある。

デフォルトの画面設定

PDFは表示するソフトウェアの挙動を定義することが出来る。
例えばしおりのウインドウを最初に開くか、またツールバーを表示するかどうか、などを文書に記述できる。

ソフトウェア

PDFの生成、閲覧用ソフトウェアは各種プラットフォームで提供される。macOSとほとんどのLinuxディストリビューション、LibreOffice、Microsoft Office 2007（要SP2アップデート）、WordPerfect 9、Scribus、Windows向け各種プリントドライバ、pdfTeX組版システム、DocBook PDFツール、Ghostscript製品群、アドビのAdobe AcrobatとAdobe FrameMaker、GoogleのオンラインオフィススイートであるGoogle DocsはPDFに出力する機能を装備している。
ラスターイメージプロセッサ (RIP) は、PDFをラスターイメージラスターイメージ に変換して、紙などの媒体に出力するために使用され、DTP分野ではラスタライズと呼ばれる。 PDFの処理能力を備えるRIP は、Adobe SystemsのPDF印刷エンジン または、サードパーティー製品 Jaws や Global Graphics社のHarlequin（ハーレクイン）RIP を組み込んでいる。

PDFファイルの閲覧と印刷

Windows環境におけるPDFファイルの表示や印刷には、アドビシステムズから無料で配布されているAcrobat Readerを使うのが一般的である。Acrobatがインストールされている場合は、AcrobatでPDFの表示や印刷ができる。macOSではOSに標準で付属する「プレビュー」を利用できる。その他のOSについても、PDF閲覧ソフトに付属している印刷機能や、OSの印刷機能を利用して印刷できる場合が多い。

PDFファイルの検索

Web上のPDFファイルは、Googleなどで検索できる。また、コンピュータ内のPDFファイルは、AcrobatとAcrobat Readerによる全文検索が可能だが、検索用インデックスを作成した高速全文検索を利用するためにはAcrobatのProfessionalバージョン（6.0以降）やGoogleデスクトップ、Mac OS X Tiger以降に付属するSpotlightなどが必要となる。

PDFファイルの作成と編集

PDFファイルの作成には、アドビシステムズのAcrobatを利用するのが一般的である。macOSではOSの標準機能で各種文書をPDFファイルに変換できる。LinuxなどUnix系OSの印刷システムであるCommon Unix Printing SystemにはPDFファイルの出力機能がある。そのほかにも、後述するOpenOffice.orgなどオープンソースのものも含めて、数多くのPDF作成ツールがある。

様々な文書データのPDF化

Microsoft Officeや一太郎などで作成した文書データも、PDF化されることが多い。PDFの文書は、Microsoft Officeなど文書作成時に使ったソフトウェアをインストールしていないコンピュータでも表示・印刷でき、コンピュータの環境によってレイアウトが変わる可能性も小さくなる。
Microsoft Officeの文書はPDF化しなくても、マイクロソフトから無償配布されている表示専用ソフトウェア（Word ViewerやExcel Viewerなど）で表示させることができる。しかしこうしたソフトウェアは、Acrobat ReaderなどのPDF表示用ソフトウェアと比べると、対応しているOSが限られていることもあり、インストールされていない、またはできない場合が多い。そのため、不特定多数の人を対象にした文書はPDF化することで正しく表示される可能性が高くなる。
PDFの作成には、Microsoft Officeからはプリンタとしてインストールされる「Adobe PDF」や「Acrobat Distiller」を利用してPDFを作成することができる。なお、32bit版Officeについては、Acrobatに含まれるマクロの「PDF Maker」を利用し、より簡単なPDFの作成が可能になっている。
2007 Microsoft Office System (Microsoft Office 2007) では追加アドインを加えることでPDFを出力する機能が追加された。また、Microsoft Office 2007 サービスパック 2では標準機能として追加され、別アプリを利用することなしにPDFを作成することができる。このPDF作成機能はMicrosoft Office 2010 (x86 / x64) にも引き継がれている。
また一太郎の「2011 創」以降のバージョンでは、一太郎文書から直接PDFを作成することもできる。それより前のバージョンでは、CubePDF等の無料仮想プリンタドライバを用いて作成する事ができる。
フリーソフトウェアのOpenOffice.orgとLibreOfficeでは、標準でPDF出力機能を備えている。

XML文書のPDF化

マークアップ言語XMLの応用技術であるXSL-FOを利用すると、Apache FOPやXSL Formatterなどのソフトウェアを利用してPDFファイルに変換できる。XSL-FOはXSLTなどを利用して各種XML文書から生成できるため、XSL-FOを利用することで各種XML文書からPDFファイルを作成できる。

仕様が複雑

PDFは、元にしていたPostScriptの仕様が複雑だったため、簡略化したとはいえやはり複雑な仕様である。また、PDFのバージョンアップとともにさまざまな機能が追加されたため、仕様はますます複雑になっている。
このため、PDFの文書およびソフトウェアはサイズが肥大化する傾向にあり、ソフトウェアの動作が重く、メモリの使用量が増大しがちである。
例えば、Acrobat6ではソフトウェアのサイズが大きく、起動に時間がかかるなど動作が重いため、敬遠する人も多かった。Acrobat7になって起動時間は短縮したが、ソフトウェアのサイズは相変わらず大きく、動作の重さを感じる場面もある。その配慮として、PDF以外の形式による文書（Word文書、Excelワークシートなど）も公開しているサイトもある。
また、仕様が公開されているとはいえ、PDFの複雑な仕様に完全に対応するソフトウェアを作成するのは難しい。

再利用が困難

PDFは、文字のレイアウトが崩れにくいため、最終成果物として公開するのには適している。しかし文字列の抽出や他形式にコンバートを試みると困難に直面する。というのはプレーンなPDFでは、ある文字列のブロック、隣接または上に重なる文字列やグラフィックとの論理的な対応関係を示す情報が乏しいためである。
言い換えれば、PDF上では文字列が、変換元文書にあったコンテキストを無視した文字の羅列になってしまうのである。これはKindleをはじめとする、画面の小さいビューアー用フォーマットへの変換を困難にする。また視覚障碍者向けの拡大表示、読み上げなどアクセシビリティにとって障壁となる。
これに対応するため、PDFには「タグ」機能が追加され、PDFへの変換時に文字列がどの順番で読まれるべきか、見出しとの関係などの情報が追加されるようになったが、紙をスキャンして作成されたPDFではタグは軽視されることが多い。