PDF header
PDFヘッダーは、PDFファイルの最初の行に配置され、文書がPDFであることを識別し、そのバージョン番号を指定します。
PDFヘッダーは、PDFファイルの最初の行に配置され、文書がPDFであることを識別し、そのバージョン番号を指定します。
(
Citation: N.A., 2020
(N.A.).
(2020).
Document management — Portable document format — Part 2: PDF 2.0
.
International Organization for Standardization
Retrieved from
https://www.iso.org/standard/75839.html
)
によると、すべてのPDFファイルは、パーセント記号(%)の後に「PDF-」とバージョン番号を含むヘッダーで始まる必要があります。例えば、%PDF-1.7や%PDF-2.0などです。このヘッダーは重要なファイル署名として機能し、PDFリーダーやプロセッサが文書を正しく解析してレンダリングする方法を決定できるようにします。
PDFヘッダーは、PDFファイルの冒頭に配置される単一行からなる必須の構造要素です。ヘッダーは厳格な形式に従います:パーセント記号(%)、文字列「PDF」、ハイフン、そしてファイルの作成に使用されたPDF仕様バージョンを示すバージョン番号です。例えば、%PDF-1.4は仕様バージョン1.4に準拠したPDFを示し、%PDF-2.0は
(
Citation: N.A., 2020
(N.A.).
(2020).
Document management — Portable document format — Part 2: PDF 2.0
.
International Organization for Standardization
Retrieved from
https://www.iso.org/standard/75839.html
)
で定義されたPDF 2.0への準拠を示します。
ヘッダーは、ファイル構造の後方に現れるメタデータや文書情報とは異なります。メタデータが文書の内容、著者、作成日などの記述的情報を提供するのに対し、ヘッダーは純粋にファイル形式とバージョンを決定する技術的識別子です。ヘッダーは常にASCII文字で記述され、信頼性の高いファイルタイプ検出を保証するために、ファイルの最初の1024バイト以内に現れる必要があります。
PDFを扱う開発者にとって、ヘッダーはいくつかの実用的な理由から不可欠です。第一に、PDFのバージョンによって異なる機能や構文がサポートされているため、PDFプロセッシングライブラリやアプリケーションが特定のファイルに対してどの機能や構文が有効かを判断できるようにします。%PDF-1.3とマークされたファイルは、後のバージョンで利用可能な透明度機能をサポートしませんが、%PDF-2.0ファイルは古いパーサーでは認識されない機能を使用する可能性があります。
第二に、プログラムでPDFを生成する際、正しいヘッダーバージョンを指定することで、対象とするリーダーやバリデーターとの互換性が保証されます。 ( Citation: N.A., 2014 (N.A.). (2014). Document management applications — Electronic document file format enhancement for accessibility — Part 1: Use of ISO 32000-1 (PDF/UA-1) . International Organization for Standardization Retrieved from https://www.iso.org/standard/64599.html ) 標準を使用してアクセシブルなPDFを作成する場合、必要なアクセシビリティ機能をサポートする適切なPDFバージョンをヘッダーで宣言する必要があります。第三に、ヘッダーはファイル破損の問題のトラブルシューティングに役立ちます。PDFが開かない場合、ヘッダーが完全で適切に形式化されているかを確認することが、最初の診断ステップであることが多いです。
PDFヘッダーはファイルの最初の行として現れる必要がありますが、PDF仕様では、ファイル転送アプリケーションがファイルをテキストではなくバイナリとして認識できるよう、ヘッダー内またはその直後に少量のバイナリデータを含めることを許可しています。このため、バージョン行の後に印刷不可能な文字が追加されている場合があります。
PDFプロセッサがファイルに遭遇すると、ヘッダーを読み取ってバージョン番号を判断します。このバージョン番号は、ファイル構造内で期待される機能やオブジェクトタイプをプロセッサに伝えます。例えば、ヘッダーが%PDF-1.4を宣言している場合、プロセッサは、ファイルに
(
Citation: PDF Association, 2023
PDF Association(2023). Retrieved from
https://pdfa.org/resource/tagged-pdf-best-practice-guide-syntax/
)
で定義されている透明度グループやTagged PDF構造が含まれている可能性があることを認識しますが、PDF 2.0で導入されたより高度な機能は含まれていないと判断します。
ヘッダーのバージョンは、ファイルの処理に必要な最小限のPDFバージョンを表しますが、文書カタログディクショナリで指定されている場合、実際に使用されるPDFバージョンはより高い可能性があります。これにより、高度な機能がサポートされている場合にそれらを有効にしつつ、下位互換性を維持できます。ほとんどのPDF作成ライブラリは、文書生成コードで使用する機能に基づいて、適切なヘッダーを自動的に書き込みます。
- PDF version(PDFバージョン) – 利用可能な機能と構文を定義するPDF仕様の特定のリリース
- File structure(ファイル構造) – ヘッダー、本体、相互参照テーブル、トレーラーを含むPDFファイルの全体的な構成
- Document catalog(文書カタログ) – 代替バージョン宣言を含む可能性があるPDFの文書構造のルートオブジェクト
- Cross-reference table(相互参照テーブル) – PDFファイル内のオブジェクトの位置をマップするインデックス
- PDF/A – 特定のPDFバージョン準拠を要求するISO標準化されたアーカイブ形式
- (N.A.) (2020)
- (N.A.). (2020). Document management — Portable document format — Part 2: PDF 2.0 . International Organization for Standardization Retrieved from https://www.iso.org/standard/75839.html
- PDF Association (2023)
- PDF Association(2023). Retrieved from https://pdfa.org/resource/tagged-pdf-best-practice-guide-syntax/
- (N.A.) (2014)
- (N.A.). (2014). Document management applications — Electronic document file format enhancement for accessibility — Part 1: Use of ISO 32000-1 (PDF/UA-1) . International Organization for Standardization Retrieved from https://www.iso.org/standard/64599.html
