Loading AI tools
アドビが開発および提唱する、文書ファイル形式 ウィキペディアから
Portable Document Format(ポータブル・ドキュメント・フォーマット、PDF)は、デジタルデバイス上でアプリケーションやOS、ハードウェアに依存せず文章や図版を表示するために開発され、ISO 32000[2]で国際標準化された電子文書ファイル形式である。 PostScriptをベースにAdobeが開発し、1993年にAdobe Acrobatで初めて採用された。
この記事は言葉を濁した曖昧な記述になっています。 |
特定の環境に左右されずに全ての環境でほぼ同様の状態で文章や画像等を閲覧できる特性を持っている。
アドビはPDF仕様を1993年より無償で公開していたが、それでもPDF規格はアドビが策定するプロプライエタリなフォーマットであった。
2008年7月には国際標準化機構によってISO 32000-1として標準化された[3][4][5]。
アドビはISO 32000-1 についての特許を無償で利用できるようにしたが、XFA (Adobe XML Forms Architecture) やAdobe JavaScriptなどはアドビのプロプライエタリな部分として残っている。
PDFファイルは 印刷可能なあらゆる文書から生成でき、表示や印刷は各社が無料、有料で配布しているソフトウェアを利用する。
主な物にアドビが無料で配布しているAcrobat Reader(旧Adobe Reader)がある。
また、AppleのmacOS, iPadOS, iOSではOSレベルでPDFの表示、編集、作成、印刷に対応している[6][7]。
PDFには、次の特徴がある。
PDFは、Acrobat Readerに代表されるPDFビューアー(表示用のソフトウェア)がインストールされているコンピュータであれば元のレイアウトどおりに表示・印刷できる。Acrobat Readerは Windows、macOS、Android、iOS など各種オペレーティングシステム (OS) に対応したものが無償で配布されており、他のPDF閲覧ソフトも数多く存在するため、PDFファイルは多くの環境で閲覧・印刷できる。
PDF以外のテキスト形式の電子文書は、ほかのコンピュータ上で元のレイアウトを保持したまま表示・印刷するのは難しい。例えば、WordやExcelなどMicrosoft Officeの文書は、対応するソフトウェアをインストールすれば閲覧することは可能だが、バージョンや設定が違っていたり、フォントの有無が原因で編集者が意図した通りのレイアウトを保てない場合がある。HTML の文書は多くのコンピュータで閲覧できる。しかし、レイアウトの制限が大きい上、OSやウェブブラウザの種類・設定でレイアウトが変わりやすい。
そのため、厳密にレイアウトを保持する必要のある文書はPDF化することが多い。ただし、フォントの設定によっては、PDFでも元のレイアウトを保持できない場合がある。この問題は、フォントを埋め込むことで回避できる。
PDFの特長は、PDFファイル作成元と異なるコンピュータ環境において、作成元文書のレイアウトや書式を忠実に再現した表示・印刷ができることにある。その性質を好んで、ウェブページ上の文書やソフトウエアの説明書などの広く公開・頒布する形態で多く利用される。また、同様の理由から、将来のコンピュータの環境変化を想定した長期保存向け文書 (PDF/A) や、 DTP の過程でPDFファイルを作成・利用する (PDF/X) 用途も多くなっている。
Quark XPressやAdobe InDesignなどのDTPソフトウェアで組版した結果のデータは、しばしばPDFファイルとして出力される。こうして作成されたPDFファイルは、印刷物と同じレイアウトの電子文書となる。一般に、PDFファイルの公開・配布は印刷物を配布するのに比べて低コストである。
そのためPDFを利用して例えば、カタログやパンフレットなどをインターネット上で公開したり、マニュアルや雑誌の収録記事をCD-ROMで配布することが多くなっている。
印刷物制作時の入稿をPDFですることも増えてきている。従来は、QuarkXPress などで組版した結果のデータをそのまま入稿することが多かった。
PDF入稿には、
などといった利点がある。
ただし作成方法によっては、商業印刷には使えないPDFファイルが生成されることもある。たとえば、紙資料をスキャンして作成したPDFファイルから商業印刷に要求される結果を得るのは難しい。目的とする印刷品質を得るためには、フォントの埋め込みや印刷時に使用する色の情報、画像解像度などをPDFファイル作成時に適切に設定する必要がある。この設定を行うにはコンピュータの操作方法ならびに印刷物とその製造工程を的確に理解していることが必須であるため、誰でも確実に行うことができるとは言い難い。PDF/Xは、こうした問題を回避するために用いられる[8]。
Acrobatは「フォーム」機能を利用し、文書入力のインタフェースとしても利用される。フォームとは記入用紙のことで、PDF内に記入欄を設け、エンドユーザーに入力させてメールで送付させる、あるいはPDFのインタラクティブ機能を使ってサーバに送信させることでデータを収集することができる。
またPDFファイルにはJavaScriptを埋め込むことができる。これにより入力のナビゲーションや入力時の値チェックなどが可能になる。
PDFは 1990年代初めに、文書共有を目的として開発された。文書の書式とインラインの図表を保持し、異なるプラットフォームのコンピュータのユーザー間で文書を閲覧するために互換性のあるアプリケーションを利用できない場合にも文書を共有できる[9]。競合としてDjVu (開発続行中)、Envoy、Common Ground[10]社の DigitalPaper, Farallon Replica[11]の他にアドビ自身が推進するPostScript format (.ps) がある。初期、 World Wide WebとHTMLが興隆する以前のPDFの主要な用途はデスクトップパブリッシングのワークフローであった。
PDFの初期の普及の足取りはゆっくりしたものであった[12]。アドビのPDF閲覧・作成ソフトAdobe Acrobatは無償ではなく、また初代バージョンのPDFは文書外部へのハイパーリンクを提供しないためインターネットの特長を活かしていなかった。またプレーンテキストと比べてサイズは大きいためモデムによるダウンロードは時間がかかり、また当時ハイスペックだったPCでも表示は遅かった。
バージョン 2.0より、アドビはAcrobat Readerを無償配布するようになった[13]。初代バージョンとの互換性は保たれており次第に書式を固定した電子文書のデファクトスタンダードの地位を確立した[14]。
2008年にアドビのPDF Reference 1.7はISO 32000:1:2008として策定された。以後のPDF(PDF 2.0を含む)開発はIS のTC 171 SC 2 WG 8においてアドビと専門家らの協力により進められている。
時 | 出来事 |
---|---|
1993年 | アドビシステムズ(現アドビ)、PDF1.0とAcrobat 1.0をリリース。 |
1994年 | アドビシステムズ、Acrobat Readerの無償配布開始。この無償配布が、PDF普及の大きな要因となった。 |
1995年 | アドビシステムズ、Netscape Navigator用のAcrobatプラグインを公開。ウェブブラウザー上でのPDF利用を促進した。 |
1996年 | アドビシステムズ、PDF 1.2とAcrobat 3.0をリリース。このバージョンからPDFとAcrobatが日本語に対応。 |
1999年 | Apple、Mac OS Xをリリース。Quartzを採用し、OSレベルでPDFへ対応。 アドビシステムズ、PDF 1.3とAcrobat 4.0をリリース。 |
2001年 | アドビシステムズ、PDF 1.4とAcrobat 5.0をリリース。 |
2003年 | アドビシステムズ、PDF 1.5とAcrobat 6.0をリリース。 |
2004年 | ソースネクスト、日本国内で「いきなりPDF」シリーズを発売開始。低価格のPDF作成ソフトということで注目を集めた[注 1]。 アドビシステムズ、PDF 1.6とAcrobat 7.0をリリース。 |
2005年 | アドビシステムズ、マクロメディアを買収。PDFとFlashの統合が開始された。 |
2006年 | アドビシステムズ、PDF 1.7とAcrobat 8.0をリリース。 |
2008年7月2日 | ISOの管理規格となる。ISO 32000-1。 |
2008年 | アドビシステムズ、PDF 1.7, Adobe Extension Level 3とAcrobat 9.0をリリース。 |
2010年 | アドビシステムズ、PDF 1.7, Adobe Extension Level 8とAcrobat X(10.0)をリリース。 |
1993-2006年にかけてアドビはPDFの仕様を数回改訂して新機能を追加している[15][16]。
PDF 1.7 (ISO 32000-1) が制定された2006年以降にアドビが定義した拡張 (Extension Levels) はISO 32000-2 (PDF 2.0) のドラフトにも一部取り込まれているものもあるが、開発者はアドビの拡張部分がPDFの標準でないことに注意する必要がある[17]。
バージョン | 仕様書[5] | 発行年 | 新機能 | Acrobat Reader のバージョン |
---|---|---|---|---|
1.0 | Portable Document Format Reference Manual[18] | 1993 | — | Carousel |
1.1 | First, revised[19] | 1996 |
|
2.0 |
1.2 | First, revised[19] | 1996 | 3.0 | |
1.3 | Second[20][21] | 2000 |
|
4.0 |
1.4 | Third[23] | 2001 |
|
5.0 |
1.5 | Fourth[25] | 2003 |
|
6.0 |
1.6 | Fifth[27] | 2004 |
|
7.0 |
1.7 (ISO 32000-1:2008[5][29]) | Sixth (ISO first)[30] | 2006 (ISO 2008) |
|
8 |
1.7 Adobe Extension Level 1 | — | 2008 | 8.1 | |
1.7 Adobe Extension Level 3 | Adobe Supplement to the ISO 32000, BaseVersion 1.7, ExtensionLevel 3[33] | 2008 |
|
9 |
1.7 Adobe Extension Level 5 | Adobe Supplement to ISO 32000-1, BaseVersion:1.7 ExtensionLevel:5[35] | 2009 |
|
9.1 |
1.7 Adobe Extension Level 6 | — | 2009 |
|
9.1 |
1.7 Adobe Extension Level 8 | [38] | 2011 | X (10) , XI (11) |
国際標準化機構 (ISO) によるPDF 1.7の標準化以降、仕様の改訂はISOが預かるところとなった。アドビ独自のバージョンアップは、ベースとなるバージョン (1.7) に対する "Adobe Extensions" という形で行われている[42][29]。
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についても同様である。[5]
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) 制度[注 2][47]により審査された。
ISO PDF 規格の要約 (abstract) には以下のように記述されている。:[48]
ISO 32000-1:2008 は電子文書のユーザーが交換と閲覧を行うにあたり、作成した環境に依存することなく再現し、閲覧および印刷するための形式を定義する。その目的とするところはPDFファイルを作成するソフトウェア、既存のPDFファイルを閲覧およびコンテンツを画面に表示するよう解釈しユーザーと対話するソフトウェア、またその他の用途のためにPDFファイルを読み書きする各種製品の開発者に供するものである。
ISO 32000-1 の中にはアドビのプロプライエタリな仕様の部分がいくつか引用規格とされており、(Adobe Acrobat JavaScriptやXFA (XML Forms Architecture) など) ISO 32000-1[5]に準拠するためにはこれらが不可欠となっている。
新しいバージョンのPDF規格はISO/CD 32000-2 - Document management – Portable document format – Part 2:PDF 2.0[49]として策定され、2017年7月に公開された。[50]
新機能としては以下のようなものが紹介されている。[51]
既存の仕様から改良されたものは以下の通り。
Polygon/Polyline real paths
GoToDp
および RichMediaExecute
アクションGoTo
および GoToR
を拡張して一部の構造化エレメントへのリンクが可能にDocumentFragment
、Hn
(深度6以上の見出し)、Title
、 FENote
、SUb
、Em
、Strong
、Artifact
MixingHints
および SpectralData
)TrapNet
注釈(リッチメディア注釈により代替)Info
辞書ProcSet
(PDFページ記述演算子)XObjects
とフォント の名前CharSet
(For Type 1 fonts)CIDSet
(for CID fonts)ViewArea
、ViewClip
、など)NeedAppearances
(フォームの見え方についての指定)adbe.pkcs7.sha1
および adbe.x509.rsa_sha1
署名ハンドラPDF 2.0の提案は2009年にISOに受理された。(ISO/NP 32000-2) TC 171 SC 2 WG 8 委員会は文書の作成のほか、寄せられる多数の技術的、編集面のコメントへの対応、各種課題ごとに関心を寄せる組織たちで構成されるアドホックな下位委員会8つの運営などのために活動している。 規格の開発は"照会段階"/"国際規格案"の段階まで進んでいたが、文書の整備に本プロジェクトは中止され、新しいプロジェクトが立ち上げられた。2014年中に2つめの"委員会原案"が提出される予定である。[49][52][53]
AdobeはAdobe Extension Level 5 と Adobe Extension Level 3 をISO 32000-2 に盛り込もうとしたが、そのうち一部の機能だけが採用されている。
ISO委員会のPDF 2.0開発の目標には、機能の進化的な拡張のほかに、PDF言語のリファインや現在[いつ?]使われなくなっている機能(例:フォームのXObject names等)の廃止による、またアドビのプロプライエタリな仕様(例:Adobe JavaScript、リッチテキスト等)の標準化が含まれている。[54][55]
PDF 2.0ではアドビの XML Forms Architecture 3.1 を参照しようとしており、2011年にISOの委員会はアドビにXFA仕様書の提出を求め、またXFA仕様を安定化させるよう求めている[56]。
(TCは「専門委員会」、SCは「分化委員会」、WGは「作業グループ」の略)
2008年にISO標準を策定するために設置された。
作業グループ8は年に二度会合を開き、10カ国以上より参加者が集まる。ISO 32000の委員会のミーティングは認定された主題専門家に対しオープンとされている。関心を持つ団体は、ISOの会員団体に参加について問い合わせる。
現在[いつ?]のプロジェクトのリーダーシップはシェリー・エクホルム(マイクロソフト) 、副リーダーはダフ・ジョンソン(独立コンサルタント)が担当している。 以前のリーダーは 2008年より2011までジェイムズ・キング博士(アドビシステムズ)が担当した。ISO幹事はベッツィー・ファニング(AIIM)。
PDFの読み書きを行うソフトウェアは誰でも開発することができ、アドビにライセンス料などを支払う必要はない。アドビはPDFについて特許を保有しているが、仕様は無料で自由に参照することが出来る。[57]
PDFは3つの技術的な柱から成り立っている。
PDFは、アドビシステムズが開発し印刷業界の標準として普及していたページ記述言語PostScriptを元に策定された。
PDFでは、コンピュータ上でのデータ交換のために次の機能が追加されている。
PDFには、PostScriptの持っているプログラミング言語としての機能はなく、HTMLなどと同様のデータ記述言語となっている。たとえばPostScriptのif
やloop
といったプログラム用命令は取り除かれている。一方lineto
などは残されている。これはファイルを開いた場合にエラーが発生する可能性を小さくし信頼性を高めるためという事と同時に、PostScriptが持つ特徴の一つである、インタプリタによる実行環境への依存性を極力排除していく方向性からである。
このように元々PDFはPostScriptから発展・派生したという経緯を持つため、PostScriptとPDFは似た特性を持っており、相互の変換は比較的容易である。実際、Acrobatに含まれるDistillerでは、各種アプリケーションのデータをいったんPostScriptファイルに変換(WindowsやMacintoshではプリンタードライバを経由する形で行われる)し、それを元にPDFを生成している。しかし、PDFを作成するには、必ずしもPostScriptを経由する必要はなく、例えばGDI経由で直接PDFを作成することも可能であり、実際にそういった形で動作(GDI→PDF)する製品は多数存在する(「いきなりPDF」もこのタイプである)。
旧バージョンのQuark XPressなどからPDFファイルを作成するには、PostScriptファイルを生成したうえで"Distiller"というAdobe Acrobatに添付のソフトを使ってPDFファイルに変換するのが一般的である。また、Adobe InDesign、Illustrator、PhotoshopやQuark XPress(バージョン6以降)を使うと、Acrobatなどは使わずに直接PDFファイルを作成できる。
PDF文書は1以上のページで構成され、各ページにはテキスト・画像・図形が含まれる。
PDFファイルの生成には、アドビシステムズ社純正の「Adobe Acrobat」やサードパーティー製品を利用する方法がもっとも基礎的である。さらに、クラウド形態などによりサーバサイドでPDFファイルを作成するシステムや、PDFファイル生成とは異なる主目的をもつソフトウエアが PDFファイルを生成する補助機能を搭載している場合もある。
PDFファイルの表示や印刷は、第一にAcrobat Readerなどの専用のビューアーアプリケーションを用いる方法がある。ウェブ上で公開されているPDFファイルについては、パソコンのウェブブラウザ上で閲覧できることがある。当初はAcrobat Readerのプラグインを用いていたが、現在[いつ?]Google Chrome[58]、Mozilla Firefox[59]、Microsoft Edgeなど、PDF表示機能を内蔵する製品も登場している。しかし、これらの製品でも、スマートフォン向けでは、PDF表示機能が除外されている。
PDFの仕様は、ISOで標準化される以前からアドビシステムズから公開されてきている[60]。そのため、アドビシステムズ以外のさまざまな企業・団体や有志が、PDF関連のソフトウェアを開発・公開しており、オープンソースソフトウェア、フリーウェアも数多い。
PDFファイルはCOS ("Carousel" Object Structure) のサブセットである。COSのツリー構造は以下の8種のオブジェクトで構成される。
オブジェクトはobject number とgeneration numberで番号付けされ、xref table表が各オブジェクトのファイル先頭からのオフセットを記述する。
この利点はファイル内のランダムアクセスを容易にすることで、またファイルの変更があった際に変更点を追記するだけでファイル全体の書き直しを行わなくてよくなる。 PDFのデータ配置は リニア(最適化)とノンリニア(最適化なし)の2種類がある。最適化なしは、PDFの変更箇所がファイル末尾に追記された状態であり、デメリットはファイル全体をダウンロードしてからでなければファイルの表示内容を確定できないことである。最適化された場合は、末尾にあった変更点が各ページに適用されて、Webで表示させる場合などに好きなページから表示させられるメリットがある。
PDF内の画像の記述方法はPostScriptに近く、相違箇所は透明の有無である。透明はPDF 1.4で追加された。
ベクター画像はパスで記述された物で、直線、方形、ベジエ曲線で構成される。 図形を記述するだけでなく、文字のアウトラインを記述する場合もある。 パスはストローク、塗りつぶし、クリッピング(切り抜き)に使われる。ストロークと塗りつぶしは自由な色、模様を指定できる。 模様はタイリング、色なしのタイリング、シェーディングを指定できる。
ラスターイメージ(Image XObjectsと呼称)は、PDF内では辞書と、関連づけられたストリームで表現される。辞書には画像のプロパティが記述され、ストリームにはイメージデータが記述される。画像は複数の圧縮方式でフィルターされる。サポートされるフィルターは以下のものがあり、用途に応じて画質とサイズのバランスを選ぶことができる。
ASCII85Decode
ASCIIHexDecode
FlateDecode
LZWDecode
RunLengthDecode
DCTDecode
CCITTFaxDecode
JBIG2Decode
JPXDecode
テキストはPDF内のコンテント ストリーム内でテキスト エレメントとして記述される。テキストエレメントはどの文字がどの座標に表示されるかを定義し、どのフォントとエンコーディングを使うかも記述する。
フォントオブジェクトは、タイプフェースを記述する。どのフォントを使用するか記述するほかに、フォントファイルの埋め込みもできる。 埋め込めるフォントはType1、TrueType、OpenTypeがある。
以下の14書体については、ソフトウェアは必ず装備するか、同じ寸法の代替フォントを装備しなければならない。ソフトウェアは以下のフォントの寸法について情報を保持し、もしPDFに埋め込まれていない場合は同じ寸法の代替フォントで表示する。
電子文書を正しく表示するためには、フォントが正しく設定されている必要がある。一般に、文書作成時に使用されているフォントがインストールされていないコンピュータでは、文書を正しく表示・印刷できない。例えばヒラギノフォントを使って作成した文書は、このフォントがインストールされていないコンピュータでは代替の日本語フォントで表示する必要がある。さらに、日本語フォントがインストールされていないコンピュータではエラーや文字化けが発生し、正しく表示できない。
PDFの文書では、使用しているフォントを埋め込むことで、そのフォントがインストールされていないコンピュータでも正しく表示・印刷できる。フォントを埋め込む方法は2つあり、当該フォントに含まれているすべてのグリフ(字形)を埋め込む方法と、文章に使用されているグリフのみを埋め込む方法である。これらの選択は、PDFを作成する際に行う。フォントを埋め込んで作成したPDFの日本語文書は、日本語フォントがインストールされていないコンピュータでも正しく表示できる。
ただし、フォントを埋め込んだPDFファイルはファイルサイズが大きくなるという問題がある。また、フォントを埋め込む場合は、フォントのライセンスにも注意する必要がある。
テキストストリーム内では、文字は文字コード(番号)によって記述される。WinAnsi、MacRomanのほか東アジアの各種言語のエンコーディングが定義されているほかに、フォント自身に独自のエンコーディングを持つことも出来る。 基礎がType1フォントを前提に作られたので、TrueTypeフォントなどを記述する場合は、非常に複雑な記述になる。
文字コードについては、全ての文字列が独自のルールで英数字にエンコードされる。英語文書の場合はある程度解読できるが、多バイト文字になると非常に複雑なルールでエンコードしなければならない。
それで得られるメリットは、処理系にかかわらず文字を正確に区別できることで、例えばJIS90形式の文字とJIS2004形式の文字はJIS、Unicode上では同じ文字コードでありながら字形が異なる文字があり、普通の処理系ではどちらかのフォントしか表示できないが、PDF上では一緒に記述できることが挙げられる。[61]
しかしながら例えばWindows 2000とWindows Vista間ではMS明朝、MSゴシックのフォントのバージョンは異なり、フォントを埋め込まないようにPDFを作成すると、片方の環境では文字が全面的に文字化けするケースがある。
また、フォントが埋め込まれているため文字化けしていないように見えても、文面をクリップボードにコピーしてエディタに貼り付けると、テキストストリームが異機種のエンコーディングになっていて文字化けするケースもある。
Adobe製品は比較的問題が起こりにくいが、サードパーティー製品や海外製のソフトウェアでは現在[いつ?]もこの種の問題に遭遇することがある。
PDFファイルには、音楽、動画などのマルチメディアファイルを含めることができる。そのためPDFファイルは、コンピュータを使ったプレゼンテーション用に使うこともできる。2005年にアドビシステムズがFlashの開発・推進を進めてきたマクロメディアを買収し、アドビシステムズによるFlashとPDFとの統合がかつて進められていた。Flashは2020年に開発・サポートが終了している[62]。
そのためAdobe製品によるPDF表示では、Flash形式のファイルが埋め込まれていてもプラグインなどをインストールせずに再生することが出来る。しかしQuickTimeはサポートされない。これはAppleとAdobeの敵対的な関係を示しており[要出典][63]、そのためAppleのiOSデバイスではリッチメディアPDFはインタラクティブ性が損なわれる。
またフォームはユーザーに入力させるメカニズムで、AcroForms(PDF 1.2より)と Adobe XML Forms Architecture(XFA)(PDF 1.5より) の2種類が使える。[64]XFA仕様はPDF仕様に含まれておらず、オプション機能として言及されているだけである。
PDF 1.2より導入され、テキストボックスやラジオボタンなどのオブジェクトとJavaScriptを記述することが出来る。PDFの標準のアクションに加え、AcroForms は内容の送信、リセット、取り込みができる。送信機能はフォームの内容を特定のURLに送信する。 送信形式は以下の種類がある。
AcroFormsはフォームフィールドの値を外部の独立したファイルに キー:値 のペアで格納することができる。外部ファイルとしてはForms Data Format (FDF) とXML Forms Data Format (XFDF) の2種類がある。 [65][66][67]
Forms Data Format (FDF) はPDFを基盤にしており、同じ文法と基本的に類似したファイル構造をしているがPDFよりはbodyに必要なオブジェクトが1個だけである分単純である。FDFはPDF仕様書に記載されている。(PDF 1.2より) FDF形式はデータをサーバに送り、応答を受け取り、フォームに内容を反映するのに使用できる。また単体ファイルとしてエクスポートさせ、PDFのインタラクティブ フォームに取り込む使い方も出来る。 PDF 1.3からは、FDFはアノテーション(注釈)を適用対象のPDFから独立して格納するコンテナーとして定義できるようになった。典型的なFDFはX.509 certificatesや認証リクエスト、ディレクトリ設定、タイムスタンプサーバー設定、その他添付のPDFファイルなどの情報をネットワーク送信のためカプセル化する。 [67] FDFのMIMEコンテントタイプは application/vnd.fdf で, ファイル拡張子は.fdfになる。Macのファイルタイプは'FDF'。[64] FDFの単体ファイルへのインポート、エクスポートはフリーウェア系PDFソフトウェアでは広く実装しているとは言えない。その例としては、Evince、Okular、Poppler、KPDF, Sumatra PDF が挙げられる。ただしEvince、Okular、PopplerはAcroformsにデータを代入して保存させることなら出来る。単体FDFのインポートを実装しているソフトウェアとしてはAcrobat Readerがあり、インポート、エクスポート両方を実装するものとしてはFoxit ReaderとPDF-XChange Viewer Freeが挙げられる。PDFファイルへのFDFデータの保存についてはpdftkにも実装されている。
「タグ」機能により、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エンジンの無効化)を併用することが推奨される。
PDFファイルには、情報の機密性を保つために、閲覧パスワード(ユーザパスワード)と編集パスワード(オーナーパスワード)、公開鍵方式の暗号化を設定することができる。
閲覧パスワードが設定されていると、利用者は正しい閲覧パスワードを入力しないとPDFファイルを開けない。編集パスワードが設定されている場合、閲覧だけならパスワード入力は不要であるが、次の作業をするには正しい編集パスワードを入力して設定を解除しなければならない。
この機能を使うことにより、ユーザの画面上では表示できるものの、コンテンツ内の文章をコピー・アンド・ペーストできないようしたり、文書内の写真の印刷ができないよう設定した文書を配布したりできる。
しかしPDFのパスワードを解除するソフトウェアも多く流通しており、2014年現在ではPDF 1.6などの古い形式のファイルは1秒もかからずパスワードが解除されてしまうケースがある。数年後にはツールで解読されてしまうということを考慮する必要がある。
Adobe LiveCycle製品群では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 は、アドビのPDF印刷エンジン[69] または、サードパーティー製品 Jaws[70] や Global Graphics社のHarlequin(ハーレクイン)RIP[71] を組み込んでいる。
Windows環境におけるPDFファイルの表示や印刷には、アドビシステムズから無料で配布されているAcrobat Readerを使うのが一般的である。Acrobatがインストールされている場合は、AcrobatでPDFの表示や印刷ができる。macOSではOSに標準で付属する「プレビュー」を利用できる。その他のOSについても、PDF閲覧ソフトに付属している印刷機能や、OSの印刷機能を利用して印刷できる場合が多い。
Web上のPDFファイルは、Googleなどで検索できる。また、コンピュータ内のPDFファイルは、AcrobatとAcrobat Readerによる全文検索が可能だが、検索用インデックスを作成した高速全文検索を利用するためにはAcrobatのProfessionalバージョン(6.0以降)やGoogleデスクトップ、Mac OS X Tiger以降に付属するSpotlightなどが必要となる。
PDFファイルの作成には、アドビシステムズのAcrobatを利用するのが一般的である。macOSではOSの標準機能で各種文書をPDFファイルに変換できる。LinuxなどUnix系OSの印刷システムであるCUPSにはPDFファイルの出力機能がある。そのほかにも、後述するLibreOfficeなどオープンソースのものも含めて、数多くのPDF作成ツールがある[72][73]。
Acrobatでは、データを各種ソフトウェアから「Adobe PDFプリンタ」へ印刷することでPDFファイルを作成できる。この操作の場合、Acrobatに含まれるDistillerでPDFファイルを作成することになる。また、Microsoft OfficeではAcrobatに含まれるPDFMakerで文書をPDFに変換できる。PDFMakerはDistillerを呼び出すとともに、しおり・ハイパーリンク・注釈などを自動的に作成する。
Adobe 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等の無料仮想プリンタドライバを用いて作成する事ができる。
オープンソースソフトウェアのLibreOfficeは標準でPDF出力に対応しており、PDFにODFファイルを埋め込みLibreOfficeで編集可能なPDFを作成するハイブリッドPDF[74]や長期保存向けのPDF/A、ユニバーサルアクセシビリティ対応のPDF/UA[75]での出力や、PDFへの電子署名にも対応している。また、LibreOffice Drawを利用して、PDFファイルを直接、編集したり機密情報を消すための墨消しも行える。
LaTeXで作成した文書をPDFに変換する機能も持つツールも開発されている。
マークアップ言語XMLの応用技術であるXSL-FOを利用すると、Apache FOPやXSL Formatterなどのソフトウェアを利用してPDFファイルに変換できる。XSL-FOはXSLTなどを利用して各種XML文書から生成できるため、XSL-FOを利用することで各種XML文書からPDFファイルを作成できる。
PDFの短所として、次のような点が指摘されている。
PDFは、元にしていたPostScriptの仕様が複雑だったため、簡略化したとはいえやはり複雑な仕様である。また、PDFのバージョンアップとともにさまざまな機能が追加されたため、仕様はますます複雑になっている。
このため、PDFの文書およびソフトウェアはサイズが肥大化する傾向にあり、ソフトウェアの動作が重く、メモリの使用量が増大しがちである。
例えば、Acrobat6ではソフトウェアのサイズが大きく、起動に時間がかかるなど動作が重いため、敬遠する人も多かった。Acrobat7になって起動時間は短縮したが、ソフトウェアのサイズは相変わらず大きく、動作の重さを感じる場面もある。その配慮として、PDF以外の形式による文書(Word文書、Excelワークシートなど)も公開しているサイトもある。
また、仕様が公開されているとはいえ、PDFの複雑な仕様に完全に対応するソフトウェアを作成するのは難しい。
PDFは、文字のレイアウトが崩れにくい。作成社の意図がこれ以上改変されていないという保証を担保した最終成果物として、限定または不特定多数の利用者に公開するのには適している。しかし文字列の抽出や他形式にコンバートを試みると困難に直面する。というのは何も加工されていないPDFでは、ある文字列のブロック、隣接または上に重なる文字列やグラフィックとの論理的な対応関係を示す情報が乏しいためである。 言い換えれば、PDF上では文字列が、変換元文書にあったコンテキストを無視した文字の羅列になってしまうのである。これはKindleをはじめとする、画面の小さいビューアー用フォーマットへの変換を困難にする。また視覚障碍者向けの拡大表示、読み上げなどアクセシビリティにとって障壁となる。
この問題点に対応するため、PDFには「タグ」機能が「Adobe Acrobat 2017」で追加され、PDFへの変換時に文字列がどの順番で読まれるべきか、見出しとの関係などの情報が追加されるように改善された。しかし、紙をスキャナー機でスキャンまたはスマホ上で撮影して作成されたPDFではタグは軽視されることが多い。
PDFは画面で見るには、ユーザビリティが不十分な側面がある。特に、スマートフォン普及以前の規格であるため小型端末では扱いにくい[76]。ユーザビリティ(閲覧しやすさ)に関して、ヤコブ・ニールセンはPDFを「オンラインの閲覧用に使ってはならない」、と結論づけている[77]。
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.