PDF 内部構造 基本とファイル構造キー 新しいページはコチラ
提供: yonewiki
(→トレーラ) |
(→相互参照テーブル xref) |
||
190行: | 190行: | ||
0 6 | 0 6 | ||
0000000000 65535 f | 0000000000 65535 f | ||
+ | 0000000013 00000 n | ||
+ | 0000000113 00000 n | ||
+ | 0000000143 00000 n | ||
+ | 0000000163 00000 n | ||
+ | 0000000213 00000 n | ||
… | … | ||
</Syntaxhighlight2> | </Syntaxhighlight2> | ||
− | + | ||
+ | となります。1~5の5つのオブジェクトなのに0からはじまるというのは、最初の 0000000000 65535 f という行が必要なためです。これは末尾がfになっていてフリーオブジェクトを意味していて、使える番号を示しています。2行目以降は1オブジェクトづつどこにオブジェクトがあるかファイル先頭からのバイト値と更新番号とnという末尾文字がつけられた行が続きます。ただし、PDFが編集されobj番号がきえた場合は、その行のバイト値を0にして、次のオブジェクト番号が付与されます。上記の例の場合は、削除されたオブジェクトの行が 0000000000 00007 f となるでしょう。そして、つぎのオブジェクトが追加されると、追加されたオブジェクトのファイル先頭からのバイト値と更新番号とnという末尾文字をもったものが追加されるとともにxrefの次の行は 0 7 となるでしょう。このほかオブジェクト番号に空き番あるパターンでは以下のような記述もあるかもしれません。 | ||
+ | |||
+ | |||
+ | 例 | ||
+ | <Syntaxhighlight2 lang="text"> | ||
+ | xref | ||
+ | 0 1 | ||
+ | 0000000000 65535 f | ||
+ | 3 1 | ||
+ | 0000000013 00000 n | ||
+ | 44 2 | ||
+ | 0000000113 00000 n | ||
+ | 0000000143 00000 n | ||
+ | 50 2 | ||
+ | 0000000163 00000 n | ||
+ | 0000000213 00000 n | ||
+ | … | ||
+ | </Syntaxhighlight2> | ||
+ | |||
+ | 更新処理を部分を作るのは難しいので、こういうところまで支援するようなアプリをつくる場合はもっと深い理解が必要なので、仕様書を読み込まないとだめかもです。仕様書には更新処理に関することも言及されています。読むしかないですね。 | ||
=== '''トレーラ''' === | === '''トレーラ''' === |