12 PPS 㨠PDFlib Block Plugin
12 PPS 㨠PDFlib Block Plugin
12 PPS 㨠PDFlib Block Plugin
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
カ ス タ ムプ ロパテ ィ の 取 得 カスタムプロパティは、 下 記 の 例 のよ うに 取 得 することが<br />
で き ます。 こ こ では、 ページ pagenum 上 の b1 というブロックからプロパティ zipcode を<br />
取 得 し ています :<br />
zip = p.pcos_get_string(doc, "pages[" + pagenum + "]/blocks/b1/Custom/zipcode");<br />
ブ ロ ッ ク 内 に 具 体 的 に 何 と い う カ ス タ ムプ ロパテ ィ があ る かわか ら なければ、 実 行 時 にそ<br />
の 名 前 を 得 る こ と もでき ます。b1 と い う ブ ロ ッ ク の 最 初 のカ ス タ ムプ ロパテ ィ の 名 前 を 得<br />
るには、 下 記 のよ うにします:<br />
propname = p.pcos_get_string(doc, "pages[" + pagenum + "]/blocks/b1/Custom[0].key");<br />
番 号 を 0 のかわ り に 1 つずつ 増 やし ていけば、すべてのカ ス タ ムプ ロパテ ィ の 名 前 を 得 る<br />
ことができます。length 接 頭 辞 を 用 いれば、 カ ス タ ムプ ロパテ ィ の 数 を 知 る こ と がで き ま<br />
す。<br />
存 在 し ないブ ロ ッ ク プ ロパテ ィ と デフ ォル ト 値 ブ ロ ッ ク ま たはプ ロパテ ィ が 実 在 する<br />
かど うかを 知 るには、 type 接 頭 辞 を 用 います。 パスに 対 する 型 が 0 か null ならば、 その<br />
オブジ ェ ク ト は PDF 文 書 内 に 存 在 し ていません。 なお、 定 義 済 みプ ロパテ ィ の 場 合 、 こ<br />
れはプロパテ ィ のデフ ォル ト 値 が 用 いられる こ と を 意 味 し ます。<br />
カ ス タ ムプ ロパテ ィ の 名 前 空 間 さ ま ざ ま な 場 所 で 作 成 さ れた PDF 文 書 をや り 取 り する<br />
際 に 混 乱 が 生 じ る こ と を 避 け る ため、 カ ス タ ムプ ロパテ ィ 名 をつけ る と き には 必 ず、 イ ン<br />
ターネ ッ ト ド メ イ ン 名 を 企 業 固 有 の 接 頭 辞 と し て 用 い、 その 後 にコ ロ ン 「:」 と プ ロパテ ィ<br />
名 本 体 を 続 け る こ と を 推 奨 し ます。 た と えば、 ACME 社 であれば 以 下 の よ う なプ ロパテ ィ<br />
名 を 使 用 する のです :<br />
acme.com:digits<br />
acme.com:refnumber<br />
標 準 プロパティ とカスタムプロパティはブロック 内 で 異 なる 格 納 のされ 方 をしているの<br />
で、 標 準 <strong>PPS</strong> プ ロパテ ィ 名 (340 ページ 「<strong>12</strong>.6 ブ ロ ッ ク のプ ロパテ ィ 」 で 定 義 さ れてい る<br />
も の) がカ ス タ ムプ ロパテ ィ 名 と 衝 突 する こ と は 決 し てあ り ません。<br />
354 第 <strong>12</strong> 章 : <strong>PPS</strong> と <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong>