PDFの仕様書を読む 第20回 3.4.1 File Header |
%PDF-1.7
しかし、古いバージョンもPDF1.7を満たしているので、PDF1.7は以下のようなヘッダは全て受け付ける。
%PDF−1. 0
%PDF−1. 1
%PDF−1. 2
%PDF−1. 3
%PDF−1. 4
%PDF−1. 5
%PDF−1. 6
PDF1.4からはドキュメントのカタログディクショナリのVersionエントリでこのバージョン情報をオーバーライドできる(カタログディクショナリの位置はトレイラー中のRootエントリで与えられる)。オーバーライドによってPDFを生成するアプリケーションではバージョンの漸増的な更新が可能になる(詳細は3.4.5 Incremental Updates、ファイルの末尾に内容を追加していくといったもので、ファイル全体を書き換えることなく追加分は新しいバージョンに準拠できる)。
ある種の状況下ではPDFを読み込むアプリケーションは古いバージョンにしか対応していなくても、より新しいバージョンのPDFを処理できてしまうこともあるだろう。新しいPDFの機能が導入される際、(古い)読み込むプログラムによって安全に無視されるような形式で導入されるということははよくあることだ。
ノート:PDFがバイナリデータを含む場合は、(3.1のLexical Conventions参照)、ヘッダの次の行はコメント行にしておいておいて、そこに最低4バイトのくことが推奨されている。バイナリというのは128以上のコードの文字だ。このようにしておくとファイル転送プログラムなどはファイルの先頭付近を読み取ってそのファイルをテキストかバイナリかを見分けられるようになる。