PDF 内部構造 構造の概念 簡単な説明 新しいページはコチラ
提供: yonewiki
(→概要) |
(→概要) |
||
122行: | 122行: | ||
■5 0 obj | ■5 0 obj | ||
− | :: | + | :: ルートオブジェクト(カタログ)です。相互参照テーブルのトレーラ部で/Root 5 0 R のように指定されています。5 0 R は/Rootという名前のモノは5 0 objを参照(Referrence)しますという意味の 5 0 Rです。x x R という形式はよく登場します。/Root という表記もよく登場します。 / のあとに文字列が記述されたようなパターンを名前といい。名前には固有の役割があるものから、ユーザが自由につける名前があります。プログラムで言うところの変数みたいなものです。 |
− | :: | + | :: 5 0 obj には/Type は /Catalogだと指定しています。カタログには参照するページとして/Page 0 1 R がありますと指定もしています。0 1 obj は カタログのページ構成要素なんですね。 |
■1 0 obj | ■1 0 obj | ||
− | :: | + | :: ページです。5 0 obj のカタログにぶら下がっているページ要素という意味です。 |
− | :: | + | :: 5 0 obj には/Type は /Pageだと指定しています。/Count は 1 と指定してあるので、このページは1つのページのオブジェクトであるということになります。このページの詳細情報をこの1 0 objには書かずそのページ要素の詳細は/Kidsという名前の参照先に書くことにしていて、/Kids [2 0 R] なので、2 0 R を参照しています。通常はフォントの設定や用紙の設定を個別にオブジェクトとして記述するので、このように、1つのページの情報はページの親的なオブジェクトから、参照して、また参照してというツリー構造になります。 |
■2 0 obj | ■2 0 obj | ||
+ | :: このオブジェクトもページです。1 0 obj のページにぶら下がっているページの要素です。 | ||
+ | |||
+ | |||
+ | :: 5 0 obj にも/Type は /Pageだと指定しています。但し、要素には1 0 obj には記述しなかったような名前について定義されています。/MediaBox は 用紙サイズをピクセル単位で指定します。A4用紙サイズの縦なら[0 0 1033 1462]というように指定します。[ ] 角カッコは配列の中身を空白区切りで記述するような仕組みになっています。このような記述方法を配列と呼んでいます。プログラムの配列は角カッコを使って要素数を指定しますが、そのような要素数の指定をするといったことの意味はありません。プログラムでいうと { } のような中カッコで配列初期化指定に似ているかもしれません。 | ||
+ | |||
+ | :: ページ要素の親は 1 0 obj という意味で/Parent 1 0 R が指定さています。 | ||
+ | |||
+ | |||
+ | :: このページの資源(Resourceの直訳は資源とはいうものの、日本語としては、ページの書式ですね。英語ではこういったものもResourcesと言うのでしょう。)は3 0 obj を参照するようにという意味で/Resources 3 0 Rが指定されています。 | ||
+ | |||
+ | |||
+ | :: ページの内容(コンテンツ)は /Contents [4 0 R]という具合に配列で 4 0 R にあると指定しています。このように参照値を入れる場合の配列は参照値を示すための空白(4 0 R)と配列の区分けの空白が混ざりますが、PDFの書式としてはなんら問題にならないようです。 | ||
+ | |||
+ | |||
+ | ■3 0 obj | ||
+ | :: このオブジェクト | ||
+ | |||
+ | |||
+ | |||
+ | |||
[[PDF 内部構造]]に戻る。 | [[PDF 内部構造]]に戻る。 |