17.05.2014 Views

12 PPS と PDFlib Block Plugin

12 PPS と PDFlib Block Plugin

12 PPS と PDFlib Block Plugin

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>12</strong> <strong>PPS</strong> と <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong><br />

<strong>PDFlib</strong> Personalization Server (<strong>PPS</strong>) は、 可 変 データ 処 理 のための、 テンプレー ト を 用 いた<br />

PDF ワーク フ ローに 対 応 し ています。 ブロ ッ ク と い う 概 念 を 用 いて、 取 り 込 んだページ<br />

に、 外 部 情 報 源 か ら 引 き 出 し た 任 意 量 の 1 行 ない し 複 数 行 のテキ ス ト ・ 画 像 ・ PDF ペー<br />

ジ ・ ベ ク ト ルグ ラ フ ィ ッ ク を 入 れ 込 むこ と がで き ます。 こ れを 利 用 すれば、 PDF 文 書 のカ<br />

ス タ マ イ ズを 必 要 と する アプ リ ケーシ ョ ン を 容 易 に 実 装 で き ます。 た と えば :<br />

> メールの 連 結<br />

> ダ イ レ ク ト メ ールの 宛 名 印 刷<br />

> 納 品 書 ・ 請 求 書 等 の 発 行<br />

> 名 刺 の 項 目 内 容 を 各 人 ご と に 変 更<br />

<strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong> を 使 えば、 ブ ロ ッ ク を 対 話 的 に 作 成 ・ 編 集 する こ と がで き、 フ ォーム<br />

フ ィ ール ド 変 換 プラ グ イ ンを 使 えば、 既 存 の PDF フ ォームフ ィ ール ド を <strong>PDFlib</strong> ブロ ッ ク<br />

に 変 換 する こ と がで き ます。ブ ロ ッ ク へは、<strong>PPS</strong> を 使 って 流 し 込 みを 行 う こ と がで き ます。<br />

<strong>Block</strong> <strong>Plugin</strong> には、 内 蔵 バージ ョ ンの <strong>PPS</strong> が 含 まれていますので、 <strong>PPS</strong> に よ る ブ ロ ッ ク へ<br />

の 流 し 込 み 結 果 を Acrobat 上 でプレ ビ ューする こ と がで き ます。<br />

注 ブロック 処 理 を 利 用 するには <strong>PDFlib</strong> Personalization Server (<strong>PPS</strong>) が 必 要 です。 <strong>PPS</strong> はすべ<br />

ての <strong>PDFlib</strong> 商 用 パ ッ ケージに 含 まれていますが、<strong>PPS</strong> に 対 する ラ イセンスキーをご 購 入 い<br />

ただ く 必 要 があ り ます。 <strong>PDFlib</strong> や <strong>PDFlib</strong>+PDI のライセンスキーだけではご 利 用 いただけ<br />

ません。 PDF テンプレー ト に 対 話 的 にブ ロ ッ ク を 作 成 するには Adobe Acrobat 用 <strong>PDFlib</strong><br />

<strong>Block</strong> <strong>Plugin</strong> が 必 要 です。<br />

クックブック 可 変 デー タ と ブ ロ ッ ク に 関 する コー ド サンプルが <strong>PDFlib</strong> クックブックのblocks カテゴリ<br />

にあります。<br />

<strong>12</strong>.1 <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong> をインストール<br />

<strong>Block</strong> <strong>Plugin</strong> と 、 その 姉 妹 製 品 であ る PDF フ ォーム フ ィ ール ド 変 換 プ ラ グ イ ンは、 以 下 の<br />

バージ ョ ンの Acrobat で 動 作 し ます :<br />

> Windows 版 Acrobat 8/9/X/XI Standard ・ Professional ・ Pro Extended<br />

> Mac 版 Acrobat 8/9/X/XI Professional<br />

こ のプ ラ グ イ ンは Acrobat Elements では 動 作 せず、Adobe Reader のどのバージ ョ ンで も 動<br />

作 しません。<br />

Windows 版 Acrobat 8/9/X/XI に <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong> をインストール <strong>PDFlib</strong> <strong>Block</strong><br />

<strong>Plugin</strong> と PDF フ ォーム フ ィ ール ド 変 換 プ ラ グ イ ン を Acrobat に イ ン ス ト ールする には、プ<br />

ラ グ イ ンのフ ァ イルを Acrobat のプ ラ グ イ ン フ ォルダのサブデ ィ レ ク ト リ に 入 れる 必 要 が<br />

あ り ます。 こ れは、 プ ラ グ イ ンの イ ン ス ト ーラ に よ って 自 動 的 に 実 行 さ れますが、 手 作 業<br />

でもできます。プラグインのファイル 名 は <strong>Block</strong>.api と AcroFormConversion.api です。 プラ<br />

グ イ ン フ ォルダの 典 型 的 な 場 所 は 下 記 の よ う にな り ます :<br />

C:\Program Files\Adobe\Acrobat 11.0\Acrobat\plug_ins\<strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong><br />

Mac 版 Acrobat 8/9/X/XI に <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong> をインストール Mac 版 Acrobat では、<br />

プラグインフォルダはFinder 内 で 直 接 見 るこ とができません。プラグインのファイルをプ<br />

<strong>12</strong>.1 <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong> をインストール 313


ラ グ イ ン フ ォルダに ド ラ ッ グする のではな く 、 以 下 の 手 順 を 踏 みます (Acrobat が 動 作 し<br />

ていないこ と を 確 認 して く ださい) :<br />

> デ ィ ス ク イ メ ージをダブル ク リ ッ ク し て、 プ ラ グ イ ン フ ァ イルを フ ォルダへ 抽 出 し ま<br />

す。<br />

> Adobe Acrobat アプ リ ケーシ ョ ンアイ コ ンを Finder 内 で 見 つけます。 通 常 は 次 のよ う な<br />

名 前 のフ ォルダ 内 にあ り ます。<br />

/Applications/Adobe Acrobat 11.0<br />

> こ の Acrobat アプ リ ケーシ ョ ンア イ コ ン をシングル ク リ ッ ク し て、 コ ンテキ ス ト メ<br />

ニューを 開 き、 「パ ッ ケージの 内 容 を 表 示 」 を 選 択 します。<br />

> 現 れる Finder ウ ィ ン ド ウ で、Contents/Plug-ins フ ォルダへ 移 動 し、1 番 目 の 手 順 でで き た<br />

<strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong> フ ォルダを こ のフ ォルダ 内 へ 複 製 し ます。<br />

マルチリ ンガルイン タ フ ェース <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong> は、 ユーザーイ ン タ フ ェース 内 で 複<br />

数 言 語 に 対 応 し ています。 Acrobat のアプ リ ケーシ ョ ン 言 語 に 従 って、 <strong>Block</strong> <strong>Plugin</strong> はその<br />

イ ン タ フ ェース 言 語 を 自 動 的 に 選 択 し ます。 目 下 、 英 語 ・ ド イ ツ 語 ・ 日 本 語 の イ ン タ フ ェー<br />

スが 利 用 可 能 です。Acrobat が こ れ 以 外 の 言 語 モー ド で 動 作 し てい る 場 合 には、<strong>Block</strong> <strong>Plugin</strong><br />

は 英 語 インタフェースを 使 用 します。<br />

トラブルシューティング <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong> が 動 作 し ない よ う に 見 られる 場 合 は、 以 下<br />

の 点 を 確 認 し て く ださい :<br />

> 「 編 集 」 → 「 環 境 設 定 」 (→ 「 一 般 ...」) → 「 一 般 」 で 「 承 認 されたプ ラグイ ンのみを 使<br />

用 」 チェ ッ ク ボ ッ ク スがオフになってい る こ と を 確 認 し て く だ さ い。 Acrobat が 承 認 済<br />

みモー ド で 動 作 し てい る と 、 プ ラ グ イ ンは 読 み 込 まれません。<br />

> Adobe Designerに よ って 作 成 さ れたPDF フ ォームは、<strong>Block</strong> <strong>Plugin</strong>の 適 切 な 動 作 を 妨 げる<br />

こ と があ り ます。 他 の Acrobat のプ ラ グ イ ンの 動 作 について も 同 様 です。 なぜな ら こ<br />

う し た フ ォームは、 Acrobat の 内 部 セキ ュ リ テ ィ モデル と 衝 突 する ためです。 ですの<br />

で、 Designer の 静 的 な PDF フ ォームは 利 用 せずに、 動 的 な PDF フ ォームだけを <strong>Block</strong><br />

<strong>Plugin</strong> への 入 力 と し て 用 い る こ と を 推 奨 し ます。<br />

314 第 <strong>12</strong> 章 : <strong>PPS</strong> と <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong>


<strong>12</strong>.2 <strong>PDFlib</strong> ブロ ッ クの 概 念 あ ら ま し<br />

<strong>12</strong>.2.1 文 書 デザイ ン と プ ログラムコー ド との 分 離<br />

<strong>PDFlib</strong> のデータ ブ ロ ッ ク を 利 用 する と 、 取 り 込 んだページ 上 に、 可 変 のテキ ス ト や 画 像 や<br />

PDF ページやベ ク ト ルグ ラ フ ィ ッ ク を 簡 単 に 配 置 で き ます。 単 純 な PDF ページ と 違 って、<br />

データ ブ ロ ッ ク を 含 むページは、 後 でサーバサ イ ド で 行 われるべき 処 理 についての 情 報 を<br />

内 部 に 持 っています。 <strong>PDFlib</strong> ブ ロ ッ ク の 概 念 は、 以 下 の 2 種 類 の 作 業 を 完 全 に 分 離 する も<br />

のです :<br />

> デザ イナーはページ レ イ ア ウ ト を 作 成 し、 可 変 ページ 構 成 要 素 の 位 置 を 指 定 する と と<br />

もに、その 文 字 サイズ・ 色 ・ 画 像 縮 尺 といったプロパティも 指 定 します。 レイアウト<br />

は PDF 文 書 と し て 作 成 し、 その 後 デザ イナーは、 Acrobat 用 <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong> を 使 っ<br />

て、 可 変 データ ブ ロ ッ ク と そのそれぞれのプ ロパテ ィ を 指 定 し ます。<br />

> プログラマーは、 取 り 込 まれるPDFページ 上 の<strong>PDFlib</strong>ブロックに 含 まれる 情 報 を、デー<br />

タベースのフ ィールド といった 動 的 な 情 報 と 紐 づけるコードを 書 きます。 プログラ<br />

マーは、 ブロッ クの 詳 細 については 何 も 知 らなくてよ く ( 名 前 を 含 むのか ZIP コード<br />

を 含 むのか、 ページ 上 の 正 確 な 位 置 、 書 式 など)、 そのため、 どの よ う な レ イ ア ウ ト 変<br />

更 か ら も 独 立 でい られます。 ブ ロ ッ ク に 関 連 する 詳 細 についてはすべて、 フ ァ イル 内<br />

のブロ ッ ク プロパテ ィ に 基 づいて <strong>PPS</strong> の 側 で 処 理 し ます。<br />

言 いかえれば、 プ ロ グ ラ マーに よ って 書 かれる コー ド は 「データ 非 依 存 」 です。 すなわち<br />

それは 汎 用 であ り 、 ブ ロ ッ ク のいかな る 特 性 に も 依 存 し ません。 た と えばデザイナーは、<br />

手 紙 の 宛 先 を 入 れる ブ ロ ッ ク をページ 上 の 別 の 場 所 へ 移 動 させる か も しれません し、あ る<br />

いは、 文 字 サ イ ズを 変 え る か も しれません。 一 般 的 なブ ロ ッ ク 処 理 コー ド に 変 更 を 加 え る<br />

必 要 はな く 、 デザ イ ナーがブ ロ ッ ク プ ロ パテ ィ を Acrobat プ ラ グ イ ンで 変 更 し て ラ ス ト<br />

ネームのかわ り にフ ァース ト ネーム を 用 い る よ う に し さ えすれば、 正 し い 出 力 が 生 成 さ れ<br />

ます。<br />

中 間 ス テ ッ プ と し て、ブ ロ ッ ク への 流 し 込 みは Acrobat でプレ ビ ューで き ますので、 開<br />

発 と 試 験 サ イ ク ルを 迅 速 化 する こ と が 可 能 です。 ブ ロ ッ ク プレ ビ ューには、 ブ ロ ッ ク の 定<br />

義 内 で 指 定 さ れたデフ ォル ト データ ( 文 字 列 や 画 像 フ ァ イル 名 等 ) が 用 い ら れます。<br />

<strong>12</strong>.2.2 ブロックプロパティ<br />

ブロックの 動 作 はブロックプロパティで 制 御 するこ とができます。 プロパティは <strong>Block</strong><br />

<strong>Plugin</strong> でブ ロ ッ ク に 割 り 当 て ます。<br />

定 義 済 みブロ ッ ク プ ロパテ ィ ブ ロ ッ ク はページ 上 の 矩 形 と し て 定 義 さ れ、 名 前 ・ 種 類 ・<br />

その 他 自 由 なプロパティ 群 を 割 り 当 てられます。こ う したプロパティは 後 で <strong>PPS</strong> によって<br />

処 理 さ れます。 名 前 は、 ブ ロ ッ ク を 識 別 する 任 意 の 文 字 列 であ り 、 た と えば firstname ・<br />

lastname ・ zipcode の よ う に 名 づけ る こ と がで き ます。 <strong>PPS</strong> では、 さ ま ざ ま な 種 類 のブ ロ ッ<br />

クを 使 うことができます:<br />

> テキス ト 行 ブロッ クは、 1 行 のテキ ス ト データ を 持 ち ます。 こ のデータは、 <strong>PPS</strong> のテキ<br />

ス ト 行 メ ソ ッ ド で 処 理 さ れます。<br />

> テキス ト フローブロッ クは、1 行 ない し 複 数 行 のテキ ス ト データ を 持 ち ます。 複 数 行 の<br />

テキス トは <strong>PPS</strong> のテキス ト フローフォーマッ タによって 組 版 されます。 複 数 のテキス<br />

ト フローブロックを 連 結 して、 前 のブロッ クからあふれたテキス ト を 次 のブロックに<br />

入 れる こ と も 可 能 です (336 ページ 「 テキ ス ト フ ローブ ロ ッ ク を 連 結 」 参 照 )。<br />

> 画 像 ブロ ッ クは、ラ ス タ 画 像 を 持 ちます。これは、DTP アプ リ ケーシ ョ ンで TIFFやJPEG<br />

のファ イルを 貼 り 付 けるのと 似 ています。<br />

<strong>12</strong>.2 <strong>PDFlib</strong> ブ ロ ッ クの 概 念 あ ら ま し 315


PDF ブロックは、 他 の PDF 文 書 のページか ら 取 り 込 んだ 任 意 の PDF 内 容 を 持 ち ます。こ<br />

れは、 DTP アプ リ ケーシ ョ ンで PDF ページを 貼 り 付 け る の と 似 ています。<br />

> グラフィックブロックは、 ベク ト ルグ ラ フ ィ ッ ク を 持 ち ます。 これは、 レ イ ア ウ ト ア<br />

プリケーション 内 でSVGファイルを 貼 り 付 けるのに 似 ています。<br />

ブ ロ ッ ク は、 その 種 類 に よ って 異 な る さ ま ざ ま な 定 義 済 みプ ロパテ ィ を 持 っています。 プ<br />

ロパテ ィ は、 <strong>Block</strong> <strong>Plugin</strong> で 追 加 ・ 変 更 する こ と がで き ます (322 ページ 「<strong>12</strong>.3.2 ブ ロ ッ ク<br />

プ ロパテ ィ を 編 集 」 参 照 )。 定 義 済 みブ ロ ッ ク プ ロパテ ィ の 全 一 覧 が 340 ページ 「<strong>12</strong>.6 ブ<br />

ロックのプロパティ」 にあります。たとえば、テキストブロックではテキストのフォント<br />

やサ イ ズを 指 定 する こ と がで き、 画 像 ブ ロ ッ ク や PDF ブ ロ ッ ク では 拡 縮 倍 率 や 回 転 を 指<br />

定 する こ と がで き ます。 <strong>PPS</strong> はブ ロ ッ ク の 種 類 ご と に、 それを 処 理 する ための 専 用 の 関 数<br />

を 提 供 しています (PDF_fill_textblock( ) 等 )。 こ う し た 関 数 は、 取 り 込 まれた PDF ページ<br />

の 中 でブ ロ ッ ク を 名 前 で 検 索 し、 そのプ ロパテ ィ を 分 析 し て、 ク ラ イ アン ト の 与 えたデー<br />

タ ( 一 行 テキ ス ト ・ 複 数 行 テキ ス ト ・ ラ ス タ 画 像 ・ PDF ページ ・ ベ ク ト ルグ ラ フ ィ ッ ク の<br />

いずれか) を、 新 し いページ 上 に、 指 定 さ れたブ ロ ッ ク プ ロパテ ィ に 従 って 配 置 し ます。<br />

プ ロ グ ラ マーは、 ブ ロ ッ ク 流 し 込 み 関 数 内 の 対 応 する オプシ ョ ン を 指 定 する こ と に よ っ<br />

て、 ブロッ クプロパティをオーバライ ドするこ と もできます。<br />

デフォルト 内 容 に 関 するプロパティ 特 殊 なブ ロ ッ ク プ ロパテ ィ を 定 義 し て、 そのブ<br />

ロ ッ ク のデフ ォル ト 内 容 を 持 たせる こ と も で き ます。 すなわち、 ブ ロ ッ ク 流 し 込 み 関 数 に<br />

可 変 データ が 与 え ら れていない と きや、あ る いはブ ロ ッ ク 内 容 が 次 回 の 印 刷 実 行 時 には 変<br />

わ り う る けれど も 現 時 点 では 不 変 であ る よ う な と き に、 そのブ ロ ッ ク に 配 置 さ れる、 テキ<br />

スト ・ 画 像 ・PDF・グラフィックいずれかの 内 容 です。<br />

デフ ォル ト プ ロパテ ィ は、 <strong>Block</strong> <strong>Plugin</strong> のプレ ビ ュー 機 能 で も 用 い ら れます (330 ペー<br />

ジ 「<strong>12</strong>.4 Acrobat でブ ロ ッ ク をプレ ビ ュー」 参 照 )。<br />

カスタムブロックプロパティ 定 義 済 みブ ロ ッ ク プ ロパテ ィ を 利 用 する こ と に よ り 、 可<br />

変 データ 処 理 アプ リ ケーシ ョ ン を 手 軽 に 実 装 する こ と がで き ますが、 こ う し たプ ロパテ ィ<br />

は、 <strong>PPS</strong> の 内 部 的 に 既 知 で 自 動 処 理 可 能 な も のに 限 ら れて し まいます。 よ り 高 い 柔 軟 性 を<br />

与 えるために、デザイナーは、カスタムプロパティをブロッ クに 割 り 当 てるこ と もできま<br />

す。 カ ス タ ムプ ロパテ ィ を 利 用 すれば、 ブ ロ ッ ク の 概 念 を 拡 張 し て、 よ り 高 度 な 可 変 デー<br />

タ 処 理 アプ リ ケーシ ョ ンの 要 請 に 応 える こ と が 可 能 です。<br />

カスタムプロパティに 関 してはいかなる 規 則 も 存 在 しません。 なぜなら <strong>PPS</strong> はカスタ<br />

ムプロパティに 対 してはいかなる 処 理 も 行 わないからです。 <strong>PPS</strong> はただ、 カスタムプロパ<br />

ティをクライアントが 利 用 できるようにするだけです。クライアントコードは、カスタム<br />

プ ロパテ ィ を 取 得 し、 適 切 に 処 理 する こ と がで き ます。 ブ ロ ッ ク のカ ス タ ムプ ロパテ ィ に<br />

基 づいて、アプ リ ケーシ ョ ンがレ イ ア ウ ト 関 連 やデータ 抽 出 関 連 の 決 定 を 行 え る よ う にす<br />

る こ と も 可 能 です。 た と えば、 科 学 アプ リ ケーシ ョ ンのためのカ ス タ ムプ ロパテ ィ であれ<br />

ば、 数 値 出 力 の 桁 数 を 指 定 する こ と も で き る で し ょ う し、あ る いは、データベースのフ ィ ー<br />

ルド 名 をカスタムブロッ クプロパティ として 定 義 しておいて、そのブロックのためのデー<br />

タ 抽 出 に 用 いる こ と も でき るでし ょ う 。<br />

<strong>12</strong>.2.3 PDF のフ ォームフ ィ ール ド を 利 用 し ない 理 由 は ?<br />

経 験 あ る Acrobat ユーザーな らば、なぜ 我 々は 新 たにブ ロ ッ ク と い う 概 念 を 導 入 し たのか、<br />

ど う し て PDF にすでにあ る フ ォームフ ィ ールド のし く みを 活 用 し ないのか、 疑 問 を 抱 か<br />

れるかもしれません。そもそもの 違 いは、PDFのフォームフィールドは 対 話 的 に 記 入 され<br />

る こ と を 主 眼 と し て 作 ら れてい る のに 対 し て、<strong>PDFlib</strong> のブ ロ ッ ク は 自 動 的 に 流 し 込 まれる<br />

こ と を 目 的 と し てい る 点 です。 対 話 的 記 入 と 自 動 流 し 込 みの 両 方 を 必 要 と する アプ リ ケー<br />

316 第 <strong>12</strong> 章 : <strong>PPS</strong> と <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong>


シ ョ ンの 場 合 であれば、 フォームフ ィールド 変 換 プラグインを 用 いて、 PDF フォームと<br />

<strong>PDFlib</strong> ブ ロ ッ ク を 併 用 する こ と も 可 能 です (325 ページ 「<strong>12</strong>.3.4 PDF フ ォーム フ ィ ール ド<br />

を <strong>PDFlib</strong> ブ ロ ッ ク に 変 換 」 参 照 )。<br />

両 概 念 の 間 には 類 似 点 も 多 く あ り ますが、 <strong>PDFlib</strong> ブ ロ ッ ク には PDF フ ォーム フ ィ ール<br />

ド と 比 較 し て 表 <strong>12</strong>.1 に 示 すよ う ない く つかの 利 点 があ り ます。<br />

表 <strong>12</strong>.1 PDFフォームフィールドと<strong>PDFlib</strong>ブロックの 比 較<br />

機 能 PDF フ ォームフ ィ ール ド <strong>PDFlib</strong> ブ ロ ッ ク<br />

設 計 の 趣 旨 対 話 的 利 用 自 動 流 し 込 み<br />

文 字 組 版 機 能 (フ ォ ン ト 指 定 ・ 文<br />

字 サイズ 指 定 よ り も 高 度 な)<br />

-<br />

カーニング ・ 単 語 間 隔 ・ 文 字 間 隔 ・ 下 線 / 上 線<br />

/ 取 り 消 し 線<br />

OpenType レ イ アウ ト 機 能 - 何 ダース もの OpenType レ イ アウ ト 機 能 ( 合 字 ・<br />

スウ ォ ッ シ ュ 文 字 ・ オール ド ス タ イル 数 字 等 )<br />

複 雑 用 字 系 への 対 応 制 約 あ り シェーピング・ 双 方 向 テキスト (アラビア 文<br />

字 ・デーヴァナーガリー 等 )<br />

フォント 制 御 フォント 埋 め 込 み フォント 埋 め 込 み・サブセット 化 ・エンコー<br />

ディング<br />

テキス ト 組 版 制 御 左 ・ 中 央 ・ 右 揃 え 左 ・ 中 央 ・ 右 ・ 両 端 揃 え。 各 種 組 版 アルゴ リ ズ<br />

ム ・ 制 御 。 イ ン ラ イ ンオプシ ョ ン を 用 いてテキ<br />

ス ト の 見 映 え を 制 御 可 能<br />

テキス トの 途 中 でフォン ト その 他<br />

のテキス ト 属 性 を 変 えられる<br />

追 加 結 果 が PDF のページ 記 述 に<br />

組 み 込 まれる<br />

-<br />

-<br />

○<br />

○<br />

ユーザーが 追 加 フ ィ ール ド の 内 容<br />

を 編 集 可 能<br />

○ ×<br />

プロパテ ィ の 拡 張 セ ッ ト - ○ (カスタムブロックプロパティ)<br />

画 像 ファイルを 流 し 込 める - BMP・CCITT・GIF・PNG・JPEG・JBIG2・<br />

JPEG 2000 ・ TIFF<br />

ベク トルグラフ ィ ックを 流 し 込 め<br />

る<br />

-<br />

SVG<br />

カラー 対 応 RGB グレースケール・RGB・CMYK・Lab・スポッ ト<br />

カラー (HKS・Pantoneスポットカラーが<strong>Block</strong><br />

<strong>Plugin</strong> に 内 蔵 )<br />

PDF 各 種 規 格 - PDF/A ・ PDF/X ・ PDF/VT ・ PDF/UA<br />

グラフ ィ ックやテキストのプロパ<br />

テ ィ を 流 し 込 み 時 に 上 書 き 可 能<br />

-<br />

○<br />

透 過 内 容 - ○<br />

テキス ト ブ ロ ッ ク 群 を 連 結 可 能 - ○<br />

<strong>12</strong>.2 <strong>PDFlib</strong> ブ ロ ッ クの 概 念 あ ら ま し 317


<strong>12</strong>.3 <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong> でブロッ クを 編 集<br />

<strong>12</strong>.3.1 ブロックを 作 成<br />

ブロックツールをアクティブにする <strong>Block</strong> <strong>Plugin</strong> を 使 った <strong>PDFlib</strong> ブ ロ ッ ク の 作 り 方 は、<br />

Acrobat のフ ォーム ツール と 同 様 です。 ページ 上 のすべてのブ ロ ッ ク は、 ブ ロ ッ ク ツール<br />

がア ク テ ィ ブな 時 に 表 示 さ れます。 Acrobat の 他 のツールが 選 択 さ れる と ブ ロ ッ ク は 見 え<br />

なくなりますが、なくなったわけではありません。ブロックツールをアクティブにするに<br />

は、 以 下 のいずれかの 操 作 を 行 います :<br />

> 「ツール」 → 「 高 度 な 編 集 」 ペーン (Acrobat X/XI) ま たは 「 高 度 な 編 集 」 ツールバー<br />

(Acrobat 9) でブ ロ ッ ク ア イ コ ン を ク リ ッ ク 。 Acrobat で こ のツールバーが 表 示<br />

されていないと きは、 「 表 示 」→「ツール」→「 高 度 な 編 集 」(Acrobat X/XI) ま たは<br />

「 表 示 」→「ツールバー」→「 高 度 な 編 集 」(Acrobat 9) を 選 択 すれば 表 示 さ せる こ と<br />

ができ ます。<br />

> メ ニ ュー 項 目 「<strong>PDFlib</strong> ブロック」→「<strong>PDFlib</strong> ブロックツール」 を 選 択 。<br />

ブ ロ ッ クの 作 成 と 変 更 ブロックツールをアクティブにしたら、 十 字 ポインタをドラッ<br />

グすれば、 ページ 上 の 希 望 の 位 置 に 希 望 の 大 き さ のブ ロ ッ ク を 作 成 する こ と がで き ます。<br />

ブ ロ ッ ク は 必 ず 矩 形 で、 その 辺 はページの 辺 と 平 行 にな り ます (ブ ロ ッ ク の 内 容 をページ<br />

の 辺 と 平 行 でな く するには rotate プロパティを 用 います)。 ブロックの 矩 形 をド ラッグし<br />

終 わる と、 「<strong>PDFlib</strong> ブロックプロパティ」 ダイアログが 現 れるので、 ブロックのさまざま<br />

なプ ロパテ ィ を 編 集 する こ と がで き ます (322 ページ 「<strong>12</strong>.3.2 ブ ロ ッ ク プ ロパテ ィ を 編 集 」<br />

参 照 ) 。 ブ ロ ッ ク ツールはブ ロ ッ ク の 名 前 を 自 動 生 成 し ますが、 こ の 名 前 はプ ロパテ ィ ダ<br />

イ ア ロ グで 変 更 する こ と も で き ます。ブ ロ ッ ク 名 はページ 内 では 一 意 であ る 必 要 があ り ま<br />

すが、 別 のページでは 同 じ 名 前 も 使 え ます。<br />

ダ イ ア ロ グの 上 端 では、 ブ ロ ッ ク の 種 類 を 「Textline」 (テキス ト 行 ) ・「Textflow」 (テ<br />

キス ト フロー)・「Image」 ( 画 像 ) ・「PDF」・「Graphics」 (グ ラ フ ィ ッ ク) のいずれかに 変 更<br />

で き ます。 ブ ロ ッ ク の 種 類 ご と に 異 な る 色 が 用 い ら れています ( 図 <strong>12</strong>.1 参 照 )。 タ ブは、<br />

どのブ ロ ッ ク の 種 類 を 選 択 し てい る かに 応 じ て、 一 度 に 1 つだけがア ク テ ィ ブになってい<br />

ます。「<strong>PDFlib</strong> ブロックプロパティ」 ダイアログは、ブロックの 種 類 に 応 じて、プロパティ<br />

を 階 層 的 にい く つかのグループやサブグループにま と めて 表 示 し ます。<br />

注 PDF にブ ロ ッ ク を 追 加 し た り 、 既 存 のブ ロ ッ ク に 変 更 を 加 えた り し た 後 は、Acrobat の「 名<br />

前 を 付 けて 保 存 ...」 コ マン ド を 使 う ほ う がフ ァ イルサイズが 小 さ く な り ます (「 上 書 き 保<br />

存 」 よ り も)。<br />

注 Acrobat 用 Enfocus PitStop プラグインを 使 って、<strong>PDFlib</strong> ブロ ッ クを 含 んだ 文 書 を 編 集 する<br />

際 、「This document contains PieceInfo from <strong>PDFlib</strong>. Press OK to continue editing or Cancel to<br />

abort.」 と い う メ ッ セージが 表 示 される こ とがあ り ます。 この メ ッ セージは 気 に し な く て<br />

かまいません。 このよ う な 場 合 、 OK を ク リ ッ ク し て も 安 全 です。<br />

ブロックを 選 択 コピー・ 移 動 ・ 削 除 ・プロパティ 編 集 といったいくつかのブロック 操 作<br />

は、 選 択 し た 1 個 ない し 複 数 のブ ロ ッ ク に 対 し て 動 作 し ます。 ブ ロ ッ ク ツールを 用 いてブ<br />

ロ ッ ク を 選 択 する には、 以 下 の よ う に 操 作 し ます :<br />

> 1 個 のブ ロ ッ ク を 選 択 する には、 単 にそれをシングル ク リ ッ ク し ます。<br />

> 複 数 のブ ロ ッ ク を 選 択 する には、Shift キーを 押 し なが ら 2 個 目 以 降 のブ ロ ッ ク を 選 択 し<br />

ます。<br />

318 第 <strong>12</strong> 章 : <strong>PPS</strong> と <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong>


ページ 上 のすべてのブ ロ ッ ク を 選 択 する には、Ctrl+A (Windows の 場 合 ) か Cmd+A (Mac<br />

の 場 合 ) を 押 すか、 ま たは 「 編 集 」 → 「すべて 選 択 」 を 用 います。<br />

コンテキスト メニュー ブ ロ ッ ク を 選 択 ( 複 数 可 ) し てい る 時 には、 コ ンテキ ス ト メ<br />

ニ ューを 開 けば、 ブ ロ ッ ク 関 連 のいろいろな 機 能 (「<strong>PDFlib</strong> ブロック」 メニューから 利 用<br />

で き る 諸 機 能 と 同 じ) をすばや く 実 行 する こ と がで き ます。 コ ンテキ ス ト メ ニ ューを 開 く<br />

には、 選 択 し たブ ロ ッ ク ( 複 数 可 ) を、 Windows の 場 合 はマ ウ スの 右 ボ タ ンで ク リ ッ ク し、<br />

Mac の 場 合 は Ctrl+ ク リ ッ ク し ます。 た と えば、 ブ ロ ッ ク を 削 除 する には、 それをブ ロ ッ<br />

クツールで 選 択 したのち、 Delete キーを 押 しても よいですし、 あるいはコンテキス ト メ<br />

ニューで 「 編 集 」 → 「 削 除 」 を 用 いる こ と もできます。<br />

ページ 上 でブ ロ ッ ク のない 領 域 を 右 ク リ ッ ク (Mac では Ctrl+ ク リ ッ ク ) する と 、 コ ン<br />

テキス ト メニューの 中 身 は、 「プ レ ビ ューの 生 成 」 と 「プ レ ビ ューの 設 定 ...」 という 項 目<br />

にな り ます。<br />

ブロックの 大 きさと 位 置 ブ ロ ッ ク ツールを 使 う と 、 選 択 し たブ ロ ッ ク ( 複 数 可 ) を 別<br />

の 位 置 へ 動 かす こ と も 可 能 です。 Shift キーを 押 し なが ら ブ ロ ッ ク を ド ラ ッ グする と 、 水 平<br />

方 向 か 垂 直 方 向 にだけ 動 き ます。 こ れはブ ロ ッ ク を 正 確 に 整 列 させたい と き に 便 利 で し ょ<br />

う。ポインタがブロックの 角 の 近 くにある 時 は、ポインタは 矢 印 に 変 わり、ブロックの 大<br />

き さ を 変 え る こ と がで き ます。 複 数 のブ ロ ッ ク の 位 置 や 大 き さ を 調 整 し たい と きは、 複 数<br />

のブ ロ ッ ク を 選 択 し て、「<strong>PDFlib</strong> ブロック」 メニューかコンテキスト メニューから 「 整 列 」・<br />

「 中 央 揃 え」 ・ 「 均 等 配 置 」 ・ 「サイズ」 のいずれかのコマン ド を 選 択 し ます。 ブロ ッ ク ( 複<br />

数 可 ) の 位 置 は、 矢 印 キーを 使 って 小 刻 みに 変 え る こ と も で き ます。<br />

あ る いは、 ブ ロ ッ ク の 座 標 を 数 値 でプ ロパテ ィ ダ イ ア ロ グに 入 力 する こ と も で き ます。<br />

座 標 系 の 原 点 はページの 左 上 隅 です。 座 標 は、 その 時 点 で Acrobat で 選 択 さ れてい る 単 位<br />

で 表 示 されます :<br />

> Acrobat 9/X/XI で 表 示 単 位 を 変 え る には、 「 編 集 」 → 「 環 境 設 定 」 (→ 「 一 般 ...」) → 「 単<br />

位 と ガイ ド 」 → 「ページ と 定 規 の 単 位 」 を 選 択 し、 インチ ・ センチメート ル ・ パイカ ・<br />

ポイン ト ・ ミ リのいずれかを 選 びます。<br />

> カーソ ルの 座 標 を 表 示 する には、「 表 示 」 → 「 表 示 切 り 替 え」 → 「カーソル 座 標 」 (Acrobat<br />

X/XI) ま たは 「 表 示 」 → 「カーソル 座 標 」 (Acrobat 9) を 選 択 し ます。<br />

ただし こ こで 選 択 されている 単 位 は Rect プ ロパテ ィ に 対 し てのみ 効 力 を 持 ち、 それ 以 外<br />

の 数 値 プロパテ ィ (fontsize 等 ) に 対 し ては 一 切 効 力 を 持 ち ません。<br />

グ リ ッ ド を 用 いてブ ロ ッ ク を 位 置 合 わせ Acrobat のグ リ ッ ド 機 能 を 活 用 し て、ブ ロ ッ ク<br />

の 位 置 合 わせやサ イ ズ 合 わせを 正 確 に 行 う こ と も で き ます :<br />

> グリッドを 表 示 :「 表 示 」→「 表 示 切 り 替 え」→「 定 規 とグリッド」→「グリッド」<br />

(Acrobat X/XI) ま たは 「 表 示 」 → 「グ リ ッ ド 」 (Acrobat 9)。<br />

> グリッドスナップを 有 効 に:「 表 示 」 → 「 表 示 切 り 替 え」 → 「 定 規 と グ リ ッ ド 」 → 「グ<br />

リッドにスナップ」(Acrobat X/XI) ま たは「 表 示 」→「グ リ ッ ド にスナ ッ プ」(Acrobat 9)。<br />

> グ リ ッ ド を 変 更 ( 図 <strong>12</strong>.3 参 照 ) : 「 編 集 」 → 「 環 境 設 定 」 (→ 「 一 般 ...」) → 「 単 位 と ガイ<br />

ド」 を 選 択 し ます。 そ こ でグ リ ッ ド 線 の 間 隔 や 位 置 や 色 を 変 え る こ と がで き ます。<br />

「グリ ッ ド にスナ ッ プ」 を 有 効 にしていると、ブロックの 大 きさと 位 置 は、 設 定 したグリ ッ<br />

ドに 揃 います。 「グ リ ッ ド にスナ ッ プ」 は、 新 規 作 成 し たブ ロ ッ ク に も 効 き ますし、 既 存<br />

のブロックをブロックツールで 移 動 したり 大 きさを 変 えたりするときにも 効 きます。<br />

<strong>12</strong>.3 <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong> でブロックを 編 集 319


図 <strong>12</strong>.1 各 種 ブ ロ ッ クの 表 示<br />

画 像 やグ ラ フ ィ ッ ク を 選 択 し てブ ロ ッ ク を 作 成 手 動 でブ ロ ッ ク の 矩 形 を ド ラ ッ グする<br />

のではな く 、 既 存 のページ 内 容 を 使 ってブ ロ ッ ク の 大 き さ を 定 義 する こ と も で き ます。 ま<br />

ず、 メ ニ ュー 項 目 「<strong>PDFlib</strong> ブロック」→「オブジェクトをクリックでブロックを 定 義 」を<br />

有 効 に し ます。 こ れで、 ブ ロ ッ ク ツールを 使 って、 ページ 上 の 画 像 を ク リ ッ ク し て、 その<br />

画 像 と 同 じ 位 置 に 同 じ 大 き さのブロ ッ ク を 作 成 する こ と ができ ます。 それ 以 外 のグ ラ<br />

フ ィ ッ ク オブジ ェ ク ト を ク リ ッ ク する こ と も で き、 その 場 合 、 ブ ロ ッ ク ツールはそのグ ラ<br />

フ ィ ッ ク (たとえばロゴ) 全 体 を 選 択 しよ う と します。 この 「オブジ ェ ク ト ク リ ッ ク」 機<br />

能 は、 ブ ロ ッ ク 定 義 作 業 を 補 助 する ために 設 けてあ る も のです。 で き たブ ロ ッ ク の 位 置 や<br />

大 き さ を 変 更 し たければ、 後 か ら 何 ら 制 約 な く 行 う こ と がで き ます。 ブ ロ ッ ク は、 画 像 や<br />

グ ラ フ ィ ッ ク に 固 定 さ れて し ま う のではな く 、ただそれを 位 置 や 大 き さ の 決 定 の 補 助 と し<br />

て 用 いるだけです。<br />

320 第 <strong>12</strong> 章 : <strong>PPS</strong> と <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong>


図 <strong>12</strong>.2<br />

ブロックプロパティダイアログ<br />

こ の 「オブジ ェ ク ト ク リ ッ ク」 機 能 は、 どのベ ク ト ルグ ラ フ ィ ッ ク や 画 像 がページ 上<br />

で 論 理 的 要 素 を 形 づ く ってい る かを 認 識 し よ う と し ます。いずれかのページ 内 容 が ク リ ッ<br />

ク さ れる と 、 その 対 象 が 白 かった り 非 常 に 大 き かった り し ない 限 り 、 その 外 接 枠 ( 対 象 を<br />

囲 む 矩 形 ) が 選 択 さ れます。 その 次 の 段 階 と し て、 こ の 検 知 さ れた 矩 形 に 一 部 入 り 込 んで<br />

い る 他 の 物 が 選 択 領 域 に 追 加 さ れ、 こ れが 繰 り 返 さ れます。 そ う し て 最 終 的 にで き た 領 域<br />

に 基 づいてブロ ッ ク の 矩 形 が 生 成 されるのです。 結 局 の と こ ろ 「オブジェ ク ト ク リ ッ ク」<br />

機 能 は、 個 々の 線 ではな く グ ラ フ ィ ッ ク 全 体 を 選 択 し よ う と する こ と にな り ます。<br />

フ ォ ン ト プロパテ ィ の 自 動 検 出 <strong>Block</strong> <strong>Plugin</strong> は、 テ キ ス ト 行 ま たはテ キ ス ト フ ロ ーブ<br />

ロ ッ ク の 置 かれた 位 置 の 背 景 にあ る フ ォ ン ト を 分 析 する こ と がで き、ブ ロ ッ ク の 以 下 のプ<br />

ロパテ ィ を 自 動 的 に 書 き 込 む こ と がで き ます :<br />

fontname・fontsize・fillcolor・charspacing・horizscaling・wordspacingtextrendering・textrise<br />

<strong>12</strong>.3 <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong> でブロックを 編 集 321


フ ォ ン ト プ ロパテ ィ の 自 動 検 出 は 望 ま し く ない 結 果 を も た らすこ と も あ る ので、 背 景 を 無<br />

視 させたい 場 合 は、 「<strong>PDFlib</strong> ブ ロ ッ ク」 → 「 背 景 フ ォ ン ト ・ 色 の 検 出 」 を 用 いて 機 能 の 有<br />

効 ・ 無 効 を 切 り 替 える こ とができます。 デフォルト ではこの 機 能 は 無 効 になっています。<br />

ブロックをロック ブロックは、 うっかり 移 動 したり 大 きさを 変 えたり 削 除 したりされ<br />

ない よ う 、 ロ ッ ク し て 保 護 する こ と がで き ます。 ブ ロ ッ ク ツールがア ク テ ィ ブな 状 態 で、<br />

ブロッ クを 選 択 し、 そのコンテキス ト メニューから 「ロ ッ ク」 を 選 びます。 ブ ロ ッ ク が<br />

ロ ッ ク さ れてい る と 、 移 動 さ せる こ と も 大 き さ を 変 え る こ と も 削 除 する こ と も で きず、 そ<br />

のプ ロパテ ィ ダ イ ア ロ グ を 編 集 する こ と も で き ません。<br />

<strong>12</strong>.3.2 ブロックプロパティを 編 集<br />

図 <strong>12</strong>.3<br />

Acrobat の<br />

グリッド 設 定<br />

新 規 ブロッ クを 作 成 した 時 や、 既 存 ブロッ クをダブルク リ ッ クした 時 や、ブロッ クのコン<br />

テキス ト メニューから 「プロパテ ィ」 を 選 択 した 時 には、 プロパテ ィ ダイアログが 現 れ<br />

て、 その 選 択 し たブ ロ ッ ク に 関 するすべての 設 定 を 編 集 する こ と がで き ます ( 図 <strong>12</strong>.2 参<br />

照 )。 340 ページ 「<strong>12</strong>.6 ブ ロ ッ ク のプ ロパテ ィ 」 で 詳 述 する よ う に、 プ ロパテ ィ にはブ ロ ッ<br />

ク の 種 類 に 応 じ て、 い く つかのグループがあ り ます。<br />

「 適 用 」 ボタ ンは、 ダ イ ア ロ グ 内 の 1 個 ないし 複 数 のプロパテ ィ を 変 更 し た 時 にのみ 有<br />

効 にな り ます。 プロパテ ィ の 変 更 をブロ ッ ク に 適 用 し た 後 には、 ブロ ッ ク の 名 前 の 中 にア<br />

ス タ リ ス ク が 表 示 さ れて、ブ ロ ッ ク が 変 更 さ れたけれど も まだデ ィ ス ク には 保 存 さ れてい<br />

ないとい う こ と を 示 します。 「 適 用 」 ボタンは、 ロックされたブロックについては 無 効 と<br />

なります。<br />

注 ブ ロ ッ クの 種 類 やプ ロパテ ィ の 設 定 によ っ ては、 表 示 されないプロパテ ィ もあ り ます。 た<br />

とえば、 タブ 設 定 を 編 集 するための「hortabmethod=ruler におけるルーラタブ」プロパティ<br />

サブグループは、「テキスト 組 版 」→「ルーラタブ」グループの hortabmethod プロパティが<br />

ruler に 設 定 されている と きにのみ 表 示 されます。<br />

322 第 <strong>12</strong> 章 : <strong>PPS</strong> と <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong>


プ ロパテ ィ の 値 を 変 更 する には、 入 力 し たい 数 や 文 字 列 をそのプ ロパテ ィ の 入 力 領 域 に 入<br />

力 す る か ( 例 : linewidth) 、ドロップダウンリストから 値 を 選 ぶか( 例 : fitmethod ・<br />

orientate)、 ま たはダ イ ア ロ グの 右 側 にあ る 「...」 ボタンをク リ ックしてフォン トや 色 の 値<br />

やフ ァ イル 名 を 選 択 し ます ( 例 : backgroundcolor ・ defaultimage)。 fontname プロパティ<br />

の 場 合 は、 シ ス テムに イ ン ス ト ール さ れてい る フ ォ ン ト の 一 覧 か ら 選 ぶ こ と も で き ます<br />

し、カスタムのフォント 名 を 打 ち 込 むこともできます。フォント 名 を 入 力 した 方 式 にかか<br />

わ らず、 そのフ ォ ン ト は、 <strong>PPS</strong> に よ ってブ ロ ッ ク へ 内 容 が 流 し 込 まれる シ ス テム 上 におい<br />

て 利 用 可 能 になってい る こ と が 必 要 です。<br />

変 更 されたプロパティは、ブロックプロパティダイアログ 内 で 太 字 で 表 示 されます。ブ<br />

ロ ッ ク のいずれかのプロパテ ィ が 変 更 されている と きには、その 表 示 されているブロ ッ ク<br />

名 の 後 に 接 尾 辞 (*) が 付 記 されます。 プロパテ ィ の 編 集 が 済 んだら、 「 適 用 」 ボタンをク<br />

リ ッ ク し てブ ロ ッ ク を 更 新 し ます。 定 義 し たプ ロパテ ィ は、 PDF フ ァ イル 内 にブ ロ ッ ク 定<br />

義 の 一 部 と し て 格 納 さ れます。<br />

重 なったブロ ッ ク 重 な り あ う ブロ ッ ク 群 は 選 択 しづらいこ とがあ り ます。 その 領 域 を<br />

ク リ ッ クする と 必 ず 最 前 面 のブ ロ ッ ク が 選 ばれて し ま う か ら です。 こ の よ う な 場 合 には、<br />

コンテキスト メニューの 「ブ ロ ッ クの 選 択 」 項 目 を 用 いれば、 ブ ロ ッ ク の う ちのいずれか<br />

1 個 を 名 前 で 選 択 する こ と がで き ます。 1 個 のブ ロ ッ ク を 選 んだ 直 後 にその 領 域 で 行 う 操<br />

作 は、 その 選 択 し た 1 個 のブロ ッ ク に 対 し てのみ 効 力 を 持 ち、 他 のブロ ッ ク に 対 し ては 効<br />

力 を 持 ちません。 たと えば Enter を 押 せば、 選 択 し たブ ロ ッ ク のプ ロパテ ィ を 編 集 で き ま<br />

す。 こ の 方 法 を 利 用 すれば、 ブ ロ ッ ク の 上 に 他 のブ ロ ッ ク が 部 分 的 ない し 完 全 にかぶ さ っ<br />

ていて も、 簡 単 にそのブ ロ ッ ク のプ ロパテ ィ を 編 集 する こ と がで き ます。<br />

ブロックプロパティの 値 を 繰 り 返 し 使 用 ・ リセッ ト キー 入 力 や ク リ ッ ク の 量 をい く ら<br />

か 軽 減 できるよ う、ブロックツールは、 直 前 のブロックのプロパティダイアログで 入 力 さ<br />

れたプ ロパテ ィ 値 を 記 憶 し ています。 こ う し た 値 は、 新 規 ブ ロ ッ ク の 作 成 時 に 再 利 用 さ れ<br />

ます。 も ちろんその 値 は、 いつ 別 の 値 で 上 書 き し て もかまいません。<br />

プロパティのダイアログで 「 全 て リ セ ッ ト 」 ボタンを 押 すと、 多 くのブロックプロパ<br />

テ ィ がそれぞれのデフ ォル ト に リ セ ッ ト さ れます。 以 下 の 項 目 は 変 更 さ れません :<br />

> Name ・ Type ・ Rect ・ Description プロパテ ィ<br />

> すべてのカ ス タ ムプ ロパテ ィ<br />

注 定 義 済 みプ ロパテ ィ のデフ ォル ト 値 は、プ レ ビ ュー 生 成 時 のプ レースホルダデー タ を 保 持<br />

する defaulttext ・ defaultimage ・ defaultpdf ・ defaultgraphics プロパティ と 混 同 しないよ<br />

う にする 必 要 があ り ます (330 ページ 「ブロ ッ クのデフ ォル ト 内 容 」 参 照 )。<br />

複 数 のブロ ッ ク を 一 度 に 編 集 複 数 のブ ロ ッ ク のプ ロパテ ィ を 一 度 に 編 集 すれば、 大 い<br />

に 時 間 が 節 約 でき ます。 複 数 のブロ ッ ク を 選 択 するには 以 下 のよ う に 操 作 し ます :<br />

> メ ニ ュー 項 目 「<strong>PDFlib</strong> ブロック」→「<strong>PDFlib</strong> ブロックツール」 を 選 択 してブロ ッ ク ツー<br />

ルをアクテ ィブにします。<br />

> 1 個 目 のブロ ッ ク を ク リ ッ ク し て 選 択 し ます。 最 初 に 選 択 し た このブロ ッ ク がマス ター<br />

ブ ロ ッ ク です。 他 のブ ロ ッ ク ( 複 数 可 ) を Shift+ ク リ ッ ク し て、 選 択 ブ ロ ッ ク 群 に 加<br />

え ます。 あ る いは、 「 編 集 」 → 「すべてを 選 択 」 を ク リ ッ ク し て、 現 在 のページ 上 のす<br />

べてのブ ロ ッ ク を 選 択 する こ と も で き ます。<br />

> これらのブロッ クのうちいずれか1 個 をダブルク リ ッ クすると、ブロッ クプロパティダ<br />

イアログが 開 き ます。 この 時 ダブルク リ ッ ク したブロ ッ クは、 新 たにマス ターブロ ッ<br />

クになります。<br />

<strong>12</strong>.3 <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong> でブロックを 編 集 323


あるいは、 1 個 のブロックをク リ ックしてマスターブロックとして 指 定 したうえで、<br />

Enter キーを 押 してブロッ クプロパティダイアログを 開 く こ と もできます。<br />

プロパティダイアログには、 選 択 されているすべてのブロックに 適 用 されるプロパティの<br />

部 分 集 合 だけが 表 示 されます。 ダイアログには、 マスターブロッ クから 採 られたプロパ<br />

テ ィ 値 が 表 示 さ れます。 こ の 時 、 選 択 さ れてい るすべてのブ ロ ッ ク に 対 し て、 プ ロパテ ィ<br />

群 を 下 記 の よ う に 適 用 する こ と がで き ます :<br />

> チェッ クボッ クス 「マスターブロッ クのすべてのプロパテ ィ を 適 用 」 がチェッ ク され<br />

ていない 場 合 : 「 適 用 」 を ク リ ッ ク する と 、 ダ イ ア ロ グ 内 で 手 変 更 を 加 え ら れたプ ロパ<br />

テ ィ 群 ( 黒 でハイ ラ イ ト されている) のみが、 選 択 されているすべてのブロ ッ クへ 複<br />

製 されます。<br />

> チェッ クボッ クス 「マスターブロッ クのすべてのプロパテ ィ を 適 用 」 がチェッ ク され<br />

ている 場 合 : 「 適 用 」 を 押 すと、 マス ターブロ ッ クのすべてのカレン ト プロパテ ィ と、<br />

ダ イ ア ロ グ 内 で 手 変 更 を 加 え られたすべてのプ ロパテ ィ が、 選 択 さ れてい るすべての<br />

ブ ロ ッ ク へ 複 製 さ れます。こ れを 利 用 し て、あ る 1 個 のブ ロ ッ ク のブ ロ ッ ク プ ロパテ ィ<br />

を、 他 の 1 個 ない し 複 数 のブ ロ ッ ク へ 複 製 する こ と も 可 能 です。<br />

以 下 の 定 義 済 みプ ロパテ ィ 、 およびカ ス タ ムプ ロパテ ィ は 共 用 で き ません。 すなわち、 こ<br />

れらは 複 数 のブ ロ ッ ク に 対 し て 一 度 に 編 集 する こ と はで き ません :<br />

Name・Description・Subtype・Type・Rect・Status<br />

<strong>12</strong>.3.3 ページ 間 ・ 文 書 間 でブ ロ ッ ク を 複 製<br />

<strong>Block</strong> <strong>Plugin</strong> は、 現 在 のページの 中 で、 ま たは 現 在 の 文 書 の 中 で、 あ る いは 他 の 文 書 へ と 、<br />

ブ ロ ッ ク を 移 動 し た り 複 製 し た り する ための 手 段 をい く つか 提 供 し ています :<br />

> ブ ロ ッ ク をマ ウ スで ド ラ ッ グ し て 移 動 ・ 複 製 、 ま たは 他 のページや 開 いてい る 文 書 へ<br />

ブロックを 貼 り 付 け<br />

> ブ ロ ッ ク を、 通 常 のコ ピー / 貼 り 付 け 操 作 を 用 いて、 同 一 文 書 内 のページ ( 複 数 可 ) へ<br />

複 製<br />

> ブ ロ ッ ク を、 新 し いフ ァ イル (ページが 空 白 の) や、 既 存 の 文 書 ( 既 存 のページにブ<br />

ロ ッ ク を 適 用 ) へ 書 き 出 し<br />

> 他 の 文 書 か ら ブ ロ ッ ク を 取 り 込 み<br />

ブ ロ ッ ク の 定 義 を 維 持 し た ま まページの 内 容 を 更 新 し たい 場 合 には、ブ ロ ッ ク を 保 ったま<br />

ま 背 景 のページ ( 複 数 可 ) を 置 換 する こ と がで き ます。 そのためには、 「ツール」 → 「ペー<br />

ジ」 → 「 置 換 」 (Acrobat X/XI)、ま たは 「 文 書 」 → 「ページの 置 換 ...」 (Acrobat 9) を 用 います。<br />

ブロックを 移 動 ・ 複 製 ブ ロ ッ ク の 位 置 を 変 え る には、 ブ ロ ッ ク ( 複 数 可 ) を 選 択 し て、<br />

新 し い 位 置 へ ド ラ ッ グ し ます。 ブ ロ ッ ク の 複 製 を 作 成 する には、 Ctrl キー (Windows の 場<br />

合 ) か Alt キー (Mac の 場 合 ) を 押 し なが ら 同 様 に ド ラ ッ グ し ます。 キーを 押 し てい る 間<br />

は、 マ ウ ス カーソ ルが 変 わ り ます。 複 製 さ れたブ ロ ッ ク は 元 のブ ロ ッ ク と 同 じ プ ロパテ ィ<br />

を 持 ち ますが、 ただ し 名 前 と 位 置 だけは 自 動 的 に 変 更 さ れます。<br />

ま た、 コ ピー/ 貼 り 付 けを 使 って、 ブ ロ ッ ク を、 同 一 ページ 内 の 他 の 場 所 へ、 ま たは<br />

同 一 文 書 内 の 他 のページへ、 あ る いは Acrobat でその 時 点 で 開 いてい る 他 の 文 書 へ 複 製 す<br />

ることもできます:<br />

> ブロックツールをアクティブにしてから、 複 製 したいブロック 群 を 選 択 します。<br />

> Ctrl+C (Windows の 場 合 ) か Cmd+C (Mac の 場 合 ) を、 ま たは 「 編 集 」 → 「コ ピー」 を<br />

使 って、 選 択 し たブ ロ ッ ク を ク リ ッ プボー ド へコ ピーし ます。<br />

> 複 製 先 ページへ 移 動 し ます ( 必 要 な ら)。<br />

324 第 <strong>12</strong> 章 : <strong>PPS</strong> と <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong>


ブ ロ ッ ク ツールがア ク テ ィ ブであ る こ と を 確 認 し て、Ctrl+V(Windows の 場 合 )か Cmd+V<br />

(Mac の 場 合 ) を、 ま たは 「 編 集 」 → 「 貼 り 付 け」 を 使 って、 ク リ ップボードからブ<br />

ロ ッ ク を 現 在 のページ と 文 書 へ 貼 り 付 け ます。<br />

ブロ ッ ク を 他 のページ 群 へ 複 製 ブ ロ ッ ク ( 複 数 可 ) の 複 製 を、 現 在 の 文 書 の 中 の 任 意<br />

の 数 のページ 上 に 一 度 に 作 成 する こ と も で き ます :<br />

> ブロックツールをアクティブにしてから、 複 製 したいブロック 群 を 選 択 します。<br />

> 「<strong>PDFlib</strong> ブロック」 メニューかコンテキスト メニューから「 取 り 込 みと 書 き 出 し」→「 複<br />

製 ...」 を 選 びます。<br />

> どのブ ロ ッ ク を 複 製 する かを 選 び (「 選 択 されているブロ ッ ク」 または 「このページ 上<br />

の 全 ブロ ッ ク」)、 こ の 選 んだブ ロ ッ ク 群 を 複 製 し たい 複 製 先 ページの 範 囲 を 選 びます。<br />

ブロックを 書 き 出 し ・ 取 り 込 み ブ ロ ッ ク の 書 き 出 し/ 取 り 込 み 機 能 を 使 う と、 あ る 1<br />

つのページ 上 のブ ロ ッ ク の 定 義 や、 あ る 文 書 内 のすべてのブ ロ ッ ク の 定 義 を、 複 数 の PDF<br />

フ ァ イル 間 で 共 用 する こ と が 可 能 です。 こ れは、 既 存 のブ ロ ッ ク 定 義 を 維 持 し た ま まペー<br />

ジ 内 容 を 更 新 し たい と き に 便 利 です。ブ ロ ッ ク 定 義 を 別 フ ァ イル と し て 書 き 出 すには 以 下<br />

のよ うに 操 作 します:<br />

> ブロックツールをアクティブにしてから、 書 き 出 したいブロック 群 を 選 択 します。<br />

> 「<strong>PDFlib</strong> ブロック」 メニューかコンテキスト メニューから「 取 り 込 みと 書 き 出 し」→「 書<br />

き 出 し ...」 を 選 択 し ます。 ページ 範 囲 と 、 ブ ロ ッ ク 定 義 を 持 たせたい 新 規 PDF フ ァ イ<br />

ル 名 を 入 力 し ます。<br />

ブ ロ ッ ク 定 義 を 取 り 込 むには 「<strong>PDFlib</strong> ブロック」 → 「 取 り 込 みと 書 き 出 し」 → 「 取 り 込 み<br />

...」 を 選 択 し ます。 ブ ロ ッ ク 取 り 込 みの 際 には、 取 り 込 んだブ ロ ッ ク を 文 書 内 の 全 ページ<br />

に 適 用 する か、 それ と も あ るページ 範 囲 にのみ 適 用 する かを 選 ぶこ と がで き ます。 複 数 の<br />

ページを 選 択 し た 場 合 、 ブ ロ ッ ク 定 義 は 変 更 さ れずに 各 ページへコ ピーさ れます。 取 り 込<br />

むブ ロ ッ ク 定 義 よ り も 取 り 込 み 先 範 囲 のほ う がページ 数 が 多 い 場 合 には、 「テンプレー ト<br />

を 繰 り 返 す」 チェッ クボッ クスを 用 いるこ と もできます。 これをチェッ クする と、 取 り 込<br />

みフ ァ イル 内 のブロ ッ ク のシーケン スが、 現 在 の 文 書 の 中 で、 文 書 の 終 わ り に 達 する まで<br />

繰 り 返 されます。<br />

書 き 出 し でブロ ッ ク を 他 の 文 書 へ 複 製 ブロックを 書 き 出 す 際 には、 そのブロック 群 を<br />

他 の 文 書 内 のページ 群 へ 直 接 適 用 する こ と も で き ます。 結 果 と し て、 あ る 文 書 か ら 別 の 文<br />

書 へブ ロ ッ ク 群 を 転 写 する こ と が 可 能 です。 そのためには、 ブ ロ ッ ク の 書 き 出 し 先 と し て<br />

既 存 の 文 書 を 選 びます。 「 既 存 のブ ロ ッ ク を 削 除 」 チェッ クボッ クスをチェッ クする と、<br />

書 き 出 し 先 の 文 書 にブ ロ ッ ク が 存 在 し ていて もすべて 削 除 さ れ、 その 後 に、 新 し いブ ロ ッ<br />

ク 群 がその 文 書 へコ ピー さ れます。<br />

<strong>12</strong>.3.4 PDF フォームフィールドを <strong>PDFlib</strong> ブロックに 変 換<br />

<strong>PDFlib</strong> ブ ロ ッ ク を 手 動 で 作 成 する のではな く 、PDF フ ォーム フ ィ ール ド をブ ロ ッ ク へ 自 動<br />

変 換 させる こ と も で き ます。 こ れは、 複 雑 な PDF フ ォームがあ っ て <strong>PPS</strong> で 自 動 流 し 込 み<br />

させたい 場 合 や、 既 存 の 大 量 の PDF フ ォーム を 自 動 流 し 込 みで き る よ う に 変 換 し たい 場<br />

合 などに 特 に 便 利 です。1 つのページ 上 のすべてのフ ォーム フ ィ ール ド を <strong>PDFlib</strong> ブ ロ ッ ク<br />

に 変 換 する には、 「<strong>PDFlib</strong> ブロ ッ ク」 → 「フ ォームフ ィ ール ド の 変 換 」 → 「 現 在 のページ」<br />

を 選 択 し ます。 文 書 内 のすべてのフ ォーム フ ィ ール ド を 変 換 し たい 場 合 は 「 全 ページ」 を<br />

選 びます。 選 択 し たフ ォーム フ ィ ール ド だけを 変 換 する には (1 個 ま たは 複 数 のフ ォーム<br />

フ ィ ール ド を 選 択 する には、 Acrobat のフ ォーム ツールかオブジ ェ ク ト 選 択 ツールを 選 び<br />

ます)、 「 選 択 されている フ ォームフ ィ ール ド 」 を 選 択 し ます。<br />

<strong>12</strong>.3 <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong> でブロックを 編 集 325


フ ォームフ ィ ール ド 変 換 の 詳 細 自 動 フ ォーム フ ィ ール ド 変 換 では、 「<strong>PDFlib</strong> ブロック」<br />

→ 「フ ォームフ ィ ール ド の 変 換 」 → 「 変 換 オプシ ョ ン ...」 ダイアログで 選 択 されている 種<br />

類 のフォームフィールドが、テキス ト 行 ブロックかテキス ト フローブロックに 変 換 されま<br />

す。 デフ ォル ト では、 すべての 種 類 のフ ォーム フ ィ ール ド が 変 換 さ れます。 変 換 さ れた<br />

フ ィ ール ド の 属 性 は、 表 <strong>12</strong>.3 に 従 って 各 ブ ロ ッ ク プ ロパテ ィ へ 変 換 さ れます。<br />

同 名 の 複 数 のフ ォームフ ィ ール ド 同 じページ 上 にある 複 数 のフォームフ ィールドは、<br />

同 じ 名 前 を 持 つこ とが 許 されていますが、それに 対 してブロッ ク 名 はページ 上 で 一 意 でな<br />

ければな り ません。 こ のため、 フ ォームフ ィ ール ド がブロ ッ ク に 変 換 される 際 には、 生 成<br />

さ れる ブ ロ ッ ク の 名 前 に 数 の 接 尾 辞 が 付 加 さ れ、 一 意 なブ ロ ッ ク 名 が 作 成 さ れます (326<br />

ページ 「フ ォーム フ ィ ール ド の 対 応 ブ ロ ッ ク を 見 つけ る」 も 参 照 )。<br />

なお、 Acrobat の 内 部 的 な 問 題 のため、 複 数 のフ ォーム フ ィ ール ド が 同 じ 名 前 を 持 つ 場<br />

合 のフ ィ ール ド の 属 性 は 正 し く 報 告 さ れません。 複 数 のフ ィ ール ド が 同 じ 名 前 を 持 ってい<br />

て、 し か し 属 性 が 異 なってい る 場 合 には、 生 成 さ れる ブ ロ ッ ク には こ う し た 属 性 の 違 いは<br />

反 映 さ れません。 変 換 処 理 は こ の 場 合 、 警 告 メ ッ セージを 表 示 し て、 関 係 する フ ォーム<br />

フ ィ ール ド 群 の 名 前 を 示 し ます。 こ の 場 合 は、 生 成 さ れたブ ロ ッ ク のプ ロパテ ィ を 注 意 深<br />

く 調 べる 必 要 があります。<br />

フ ォームフ ィ ール ド の 対 応 ブ ロ ッ ク を 見 つける 同 じ 名 前 のフ ィールドが 複 数 あった 場<br />

合 (ラジオボタン 等 )、 変 換 されたフォームフィールドの 名 前 は 変 更 されてしまっていま<br />

すから、どのフォームフ ィールドがどのブロ ッ クになったのかを 正 し く 知 るこ とは 困 難 で<br />

す。 こ の こ と は 特 に、 FDF ま たは XFDF フ ァ イルを 用 いてブ ロ ッ ク への 流 し 込 みを 行 い、<br />

その 結 果 を フ ォームへの 記 入 と 同 じ に し たい 場 合 に 問 題 と な り ます。<br />

こ の 問 題 を 解 決 する ため、 AcroFormConversion プ ラ グ イ ンは、 元 のフ ォーム フ ィ ール<br />

ド に 関 する 情 報 を、 それに 対 応 する ブ ロ ッ ク を 生 成 する 際 に、 カ ス タ ムプ ロパテ ィ 群 と し<br />

て 記 録 し ます。 表 <strong>12</strong>.2 に、 ブ ロ ッ ク を 正 し く 同 定 する ために 利 用 で き る カ ス タ ムプ ロパ<br />

ティの 一 覧 を 示 します。 プロパティの 型 はすべて 文 字 列 です。<br />

表 <strong>12</strong>.2 ブ ロ ッ クの 元 のフ ォームフ ィ ール ド を 同 定 するためのカ ス タムプロパテ ィ 一 覧<br />

カスタムプロパティ<br />

意 味<br />

<strong>PDFlib</strong>:field:name フ ォームフ ィ ール ド の 完 全 修 飾 名 。<br />

<strong>PDFlib</strong>:field:pagenumber<br />

元 の 文 書 で フ ォームフ ィ ール ド が 存 在 し ていたページの 番 号 ( 文 字 列 で)。<br />

<strong>PDFlib</strong>:field:type フォームフィールドの 種 類 。 pushbutton ・ checkbox ・ radiobutton ・ listbox ・<br />

combobox ・ textfield ・ signature の う ちのいずれか。<br />

<strong>PDFlib</strong>:field:value (type=checkbox の 場 合 のみ) フ ォームフ ィ ール ド の 出 力 値 。<br />

表 <strong>12</strong>.3 PDF フ ォームフ ィ ール ド から <strong>PDFlib</strong> ブ ロ ッ クへの 変 換<br />

以 下 の PDF フ ォームフ ィ ール ド 属 性 は ...<br />

... 以 下 の <strong>PDFlib</strong> ブ ロ ッ ク プロパテ ィ に 変 換 される<br />

全 フ ィールド<br />

位 置<br />

名 前<br />

ツールヒン ト<br />

Rect<br />

Name<br />

Description<br />

326 第 <strong>12</strong> 章 : <strong>PPS</strong> と <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong>


表 <strong>12</strong>.3 PDF フ ォームフ ィ ール ド から <strong>PDFlib</strong> ブ ロ ッ クへの 変 換<br />

以 下 の PDF フ ォームフ ィ ール ド 属 性 は ...<br />

... 以 下 の <strong>PDFlib</strong> ブ ロ ッ ク プ ロパテ ィ に 変 換 される<br />

一 般 → 一 般 プ ロパテ ィ → 表 示 と 印 刷 Status :<br />

表 示 =active<br />

非 表 示 =ignore<br />

表 示 / 印 刷 し ない =ignore<br />

非 表 示 / 印 刷 する =active<br />

一 版 → 一 般 プ ロパテ ィ → 向 き<br />

表 示 方 法 →テキス ト →フ ォ ン ト<br />

表 示 方 法 →テキス ト →フ ォ ン ト サイズ<br />

表 示 方 法 →テキス ト →テキス ト の 色<br />

表 示 方 法 → 境 界 線 と 色 → 境 界 線 の 色<br />

表 示 方 法 → 境 界 線 と 色 → 塗 り つぶしの 色<br />

orientate :0=north、 90=west、 180=south、 270=east<br />

fontname<br />

fontsize : 文 字 サイズauto は、 ブ ロ ッ クの 高 さの 3 分 の 2 の 固 定 文<br />

字 サイズに 変 換 され、 fitmethod は auto に 設 定 されます。 複 数 行 の<br />

ブ ロ ッ ク/フ ィ ール ド においては、 この 組 み 合 わせでは 結 果 と し て<br />

自 動 的 に 適 切 な 文 字 サイズになるので、 ブ ロ ッ クの 高 さの 3 分 の 2<br />

と い う 初 期 値 よ り も 小 さ く なる こ とがあ り ます。<br />

strokecolor ・ fillcolor<br />

bordercolor<br />

backgroundcolor<br />

表 示 方 法 → 境 界 線 と 色 → 幅 linewidth : 細 =1、 標 準 =2、 太 =3<br />

テキス ト フ ィールド<br />

オプシ ョ ン→ 整 列 position :<br />

左 揃 え ={left center}<br />

中 央 ={center center}<br />

右 揃 え ={right center}<br />

オプシ ョ ン→デフォルト<br />

オプシ ョ ン→ 複 数 行<br />

defaulttext<br />

チェックありならテキストフローブロックが 生 成<br />

チェックなしならテキスト 行 ブロックが 生 成<br />

ラジオボタン ・ チェックボックス<br />

「デフ ォル ト でチ ェ ッ ク」 がオンの 場 合 :<br />

オプシ ョ ン→チェ ッ クボッ クススタイル、<br />

オプシ ョ ン→ボタンスタイル<br />

リストボックス ・ コンポボックス<br />

defaulttext :<br />

チェックマーク =4<br />

円 形 =l<br />

十 字 形 =8<br />

ひし 形 =u<br />

四 角 形 =n<br />

星 形 =H<br />

( 文 字 は ZapfDingbats フ ォ ン ト における 各 記 号 を 表 し ます)<br />

オプシ ョ ン→ 選 択 されている (デフ ォル<br />

ト) 項 目<br />

defaulttext<br />

ボタン<br />

オプシ ョ ン→アイコンとラベル→ラベル<br />

defaulttext<br />

ブロックを 対 応 するフォームフ ィールドへバインド <strong>PDFlib</strong> フ ォーム フ ィ ール ド と 生 成<br />

<strong>PDFlib</strong> ブ ロ ッ ク を 同 期 さ せる ために、 生 成 さ れたブ ロ ッ ク は、 対 応 する フ ォーム フ ィ ール<br />

ド にバイ ン ド させてお く こ と がで き ます。 言 い 換 えれば、 ブ ロ ッ ク ツールが 内 部 的 に<br />

<strong>12</strong>.3 <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong> でブロックを 編 集 327


フ ォーム フ ィ ール ド と ブ ロ ッ ク と の 紐 付 けを 保 持 する と い う こ と です。 変 換 処 理 が 再 実 行<br />

さ れる 際 、 バイ ン ド さ れたブ ロ ッ ク は、 対 応 する <strong>PDFlib</strong> フ ォーム フ ィ ール ド の 属 性 を 反<br />

映 し て 更 新 さ れます。 ブ ロ ッ ク がバイ ン ド さ れてい る と 、 作 業 の 二 度 手 間 が 省 けて 便 利 で<br />

す。 フ ォームが 対 話 的 利 用 のために 更 新 さ れた 時 には、 対 応 する ブ ロ ッ ク も 自 動 的 に 更 新<br />

されるからです。<br />

ブ ロ ッ ク 生 成 後 に 変 換 元 フ ォーム フ ィ ール ド を 残 し た く ない 場 合 は、「<strong>PDFlib</strong> ブロック」<br />

→ 「フ ォームフ ィ ール ド の 変 換 」 → 「 変 換 オプシ ョ ン ...」 ダイアログの 「 変 換 された フ ォー<br />

ムフ ィールドを 削 除 」 オプションを 選 びます。 このオプションを 選 ぶと、 フォームフィー<br />

ル ド は 変 換 処 理 後 に 完 全 に 削 除 さ れます。 削 除 さ れた フ ィ ール ド に 関 連 づけ ら れていたア<br />

ク シ ョ ン (JavaScript など) も、 すべて 文 書 か ら 削 除 さ れます。<br />

バッチ 変 換 フ ォーム フ ィ ール ド を <strong>PDFlib</strong> ブ ロ ッ ク に 変 換 し たい PDF 文 書 が 多 数 あ る 場<br />

合 には、 バ ッ チ 変 換 機 能 を 利 用 し て、 任 意 の 数 の 文 書 を 自 動 処 理 する こ と も で き ます。<br />

「<strong>PDFlib</strong> ブ ロ ッ ク」 → 「フ ォームフ ィ ール ド の 変 換 」 → 「バ ッ チ 変 換 ...」 を 選 択 すれば、<br />

バッチ 処 理 ダイアログが 現 れます。<br />

> 入 力 フ ァ イルは 個 別 に 選 ぶ こ と も で き ますし、1 個 のフ ォルダの 中 身 をすべて ま と めて<br />

処 理 させる こ と も で き ます。<br />

> 出 力 フ ァ イルは、 入 力 フ ァ イル と 同 じ フ ォルダへ 書 き 出 す こ と も で き ますし、 別 のフ ォ<br />

ルダへ 書 き 出 す こ と も で き ます。 出 力 フ ァ イルには、 入 力 フ ァ イル と 区 別 する ために<br />

プレ フ ィ ッ ク ス を 追 加 する こ と も で き ます。<br />

> 大 量 の 文 書 を 処 理 する 際 には、 ロ グ フ ァ イルを 指 定 する こ と を 推 奨 し ます。 変 換 後 、 ロ<br />

グ フ ァ イルには、 処 理 さ れたすべてのフ ァ イルの 一 覧 と 、 それぞれの 変 換 結 果 に 関 す<br />

る 詳 細 が 書 き 込 まれており、 エラーが 起 きた 場 合 にはエラーメ ッセージも 書 き 込 まれ<br />

ます。<br />

変 換 処 理 の 間 、 変 換 さ れる PDF 文 書 は Acrobat で 表 示 さ れますが、 変 換 が 完 了 する まで、<br />

Acrobat の メ ニ ュー 機 能 やツールは 一 切 使 用 で き ません。<br />

<strong>12</strong>.3.5 <strong>Block</strong> <strong>Plugin</strong> のユーザーイ ン タ フ ェ ースを XML でカスタマイズ<br />

<strong>Block</strong> <strong>Plugin</strong> のユーザーイ ン タ フ ェースのい く つかの 点 は、 各 Acrobat セ ッ シ ョ ン ご と に 保<br />

管 / 再 読 み 込 みさ れてお り 、 XML 構 成 フ ァ イルを 通 じ て 制 御 する こ と が 可 能 です。 サン<br />

プル 構 成 フ ァ イル factory settings.xml をディ ス ト リ ビューシ ョ ンに 同 梱 しています。 構 成<br />

が 変 更 さ れた と き、 新 し い 設 定 は user settings.xml に 格 納 さ れます。 変 更 さ れた 構 成 は、<br />

Acrobat が 起 動 さ れる たびに 読 み 込 まれ、 Acrobat が 閉 じ られる たびに 書 き 込 まれます。 こ<br />

の 構 成 フ ァ イルは、 下 記 のよ う な 場 所 に 格 納 されています (システムデ ィ レ ク ト リ の 名 前<br />

はローカ ラ イ ズ さ れてい る 可 能 性 があ り ます) :<br />

Windows XP: C:\Documents and Settings\\My Documents\<strong>PDFlib</strong>\<strong>Block</strong> <strong>Plugin</strong> 5<br />

Windows 7 以 上 : C:\Users\\Documents\<strong>PDFlib</strong>\<strong>Block</strong> <strong>Plugin</strong> 5<br />

Mac OS X: /Documents/<strong>PDFlib</strong>/<strong>Block</strong> <strong>Plugin</strong> 5<br />

下 記 の XML 要 素 を 用 いて、 設 定 を 手 変 更 する こ と が 可 能 です :<br />

> 要 素 /<strong>Block</strong>_<strong>Plugin</strong>/MainDialog/CloseOnApply は、ブロックプロパティダイアログの「 適<br />

用 したらダイアログを 閉 じる」 チェ ッ ク ボ ッ ク スの 初 期 状 態 を 制 御 し ます。こ のチェ ッ<br />

クボックスは、ブロックプロパティダイアログを、ブロックを 作 成 した 後 も、または<br />

ブロックプロパティを 変 更 した 後 も 開 いたままにしておくかど うかを 決 定 します。<br />

> 要 素 /<strong>Block</strong>_<strong>Plugin</strong>/MainDialog/ApplyAllProps は、ブロッ クプロパティダイアログの「マ<br />

スターブロックのすべてのプロパティを 適 用 」 チェ ッ ク ボ ッ ク スの 初 期 状 態 を 制 御 し<br />

ます。 こ のチェ ッ ク ボ ッ ク スは、 マス ターブ ロ ッ ク のすべてのプ ロパテ ィ が 選 択 さ れ<br />

328 第 <strong>12</strong> 章 : <strong>PPS</strong> と <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong>


た 複 数 のブロ ッ クへ 複 製 されるか、 それ と も ダ イ ア ロ グ 内 の 変 更 が 加 わったプロパ<br />

テ ィ 群 のみかを 指 定 し ます。<br />

> 要 素 /<strong>Block</strong>_<strong>Plugin</strong>/FontDialog/ShowBaseFonts は、 ブロックプロパティダイアログの<br />

フ ォ ン ト 一 覧 (「 書 式 」 プロパティグループの fontname プロパティ) に、 システムに<br />

イ ン ス ト ール さ れてい る フ ォ ン ト 群 に 加 えて、ベース 14 フ ォ ン ト も 表 示 する かど う か<br />

を 制 御 します。<br />

> 要 素 /<strong>Block</strong>_<strong>Plugin</strong>/Command/ControlByClick は、 メ ニ ュー 項 目 「<strong>PDFlib</strong> ブロック」→「オ<br />

ブジェク ト をクリ ックでブロックを 定 義 」 の 初 期 状 態 を 制 御 し ます。<br />

> 要 素 /<strong>Block</strong>_<strong>Plugin</strong>/Command/DetectFonts は、 メ ニ ュー 項 目 「<strong>PDFlib</strong> ブロック」→「 背 景<br />

フ ォ ン ト ・ 色 の 検 出 」 の 初 期 状 態 を 制 御 し ます。<br />

> ( 非 サポー ト ) 要 素 /<strong>Block</strong>_<strong>Plugin</strong>/Command/KeyAccelerator は、と り う る 値 control (これ<br />

は Windows では Ctrl キーを、 Mac では Cmd キーを 示 し ます) ・ control+shift ・ none を<br />

持 ち、 下 記 のキーボード シ ョ ー ト カ ッ ト に 対 するア クセラ レータキーを 制 御 し ます :<br />

C (コピー ), I (ブロックプロパティダイアログ), V ( 貼 り 付 け), X ( 切 り 取 り)<br />

この 要 素 は、 デフォル ト 構 成 フ ァ イル default.<strong>PPS</strong>options 内 でのみ 効 果 を 持 ち ます。 な<br />

ぜな ら キーボード シ ョ ー ト カ ッ ト は 実 行 時 には 変 更 できないからです。 この 項 目 がな<br />

い 場 合 は、 ア ク セ ラ レータは 一 切 利 用 で き ません。 デフ ォル ト は control です。<br />

<strong>12</strong>.3 <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong> でブロックを 編 集 329


<strong>12</strong>.4 Acrobat でブロッ クをプレビュー<br />

注 <strong>PDFlib</strong> デ ィ ス ト リ ビ ューシ ョ ンの 中 の block_template.pdf 文 書 で、プ レ ビ ュー 機 能 を 試 す<br />

こ とができます。 必 要 な リ ソース (フ ォ ン ト ・ 画 像 等 ) もデ ィ ス ト リ ビ ューシ ョ ンに 含 ま<br />

れています。<br />

<strong>PDFlib</strong> ブ ロ ッ ク は <strong>PPS</strong> に よ って 処 理 さ れます。 <strong>PPS</strong> を 用 い る こ と で、 ブ ロ ッ ク への 流 し 込<br />

み 処 理 について、 そのデータ 源 (データベース 内 のテキ ス ト 、 デ ィ ス ク 上 の 画 像 フ ァ イル<br />

等 ) や、 生 成 さ れる 文 書 の 書 式 ・ 対 話 的 性 質 を カ ス タ マ イ ズする こ と がで き ます。 こ の 処<br />

理 について 詳 し く は 335 ページ 「<strong>12</strong>.5 <strong>PPS</strong> でブ ロ ッ ク へ 流 し 込 み」 で 解 説 し ます。<br />

し か し <strong>Block</strong> <strong>Plugin</strong> には 内 蔵 バージ ョ ンの <strong>PPS</strong> が 含 まれてお り 、 こ れを 用 いて、プ ロ グ<br />

ラ ミ ングを 一 切 必 要 と せずに Acrobat 上 で、 流 し 込 まれたブ ロ ッ ク のプレ ビ ューバージ ョ<br />

ン を 生 成 する こ と がで き ます。 こ のプレ ビ ュー 機 能 は、 カ ス タ ムプ ロ グ ラ ミ ング と 同 等 の<br />

柔 軟 性 を 提 供 する こ と はで き ませんが、ブ ロ ッ ク への 流 し 込 み 結 果 を 手 軽 に 眺 め る には 適<br />

し ています。 ブ ロ ッ ク プレ ビ ューを 活 用 すれば、 ブ ロ ッ ク の 位 置 や 大 き さ を 改 善 し た り 、<br />

ブロ ッ クのプロパテ ィ (フォン ト 名 ・ 文 字 サイズ 等 ) をチェ ッ ク した りする こ とができ ま<br />

す。 プレ ビ ューの 表 示 結 果 に 満 足 する まで、 ブ ロ ッ ク を 変 更 し、 プレ ビ ューを 新 たに 生 成<br />

する こ と がで き ます。 プレ ビ ューは、 現 在 のページについて も、 文 書 全 体 について も 生 成<br />

できます。<br />

プレ ビ ューはつねに、 新 し い PDF 文 書 と し て 表 示 さ れます。 元 の 文 書 (ブ ロ ッ ク を 含<br />

んでい る) は、 プレ ビ ューを 生 成 し て も 変 更 を 受 け ません。 プレ ビ ュー 文 書 は、 必 要 に 応<br />

じて 保 存 することも 捨 てることもできます。<br />

ブロックのデフォルト 内 容 プラグインでは、 サーバサイドのデータ 源 (データベース<br />

等 ) か ら ブ ロ ッ ク のテキ ス ト ・ 画 像 ・ ベ ク ト ルグ ラ フ ィ ッ ク ・ PDF 内 容 を 入 手 する こ と は<br />

望 むべ く も あ り ませんので、 プレ ビ ュー 機 能 ではつねに、 ブ ロ ッ ク のデフ ォル ト 内 容 が、<br />

すなわち defaulttext ・ defaultimage ・ defaultpdf ・ defaultgraphics プ ロパテ ィ で 指 定 さ れて<br />

い る 値 が 用 い ら れます。 通 常 、 <strong>PPS</strong> で 使 われる 実 際 のブ ロ ッ ク 内 容 を 代 表 する よ う なサン<br />

プルデータ セ ッ ト が、 デフ ォル ト データ と し て 用 い られます。 デフ ォル ト 内 容 を 持 たない<br />

ブ ロ ッ ク は、 プレ ビ ュー 生 成 時 には 無 視 さ れます。 Status=ignoredefault のブロ ッ クにつ<br />

いても 同 様 です。<br />

新 規 ブロックでは、 デフォルトプロパティは 空 です。 プレビュー 機 能 を 使 う 前 には、<br />

「デ フ ォ ル ト 内 容 」 プロパティグループの defaulttext ・ defaultimage ・ defaultpdf ・<br />

defaultgraphics プロパティ (ブロックの 種 類 による) に 書 き 込 むか、 あるいは 「 高 度 な<br />

<strong>PPS</strong> オプシ ョ ン ...」 ダイアログ 内 の 同 じ 名 前 のオプシ ョ ンに 対 して 適 切 な 値 を 与 える 必 要<br />

があ り ます。<br />

注 デフ ォル ト テキス ト を 記 号 フ ォ ン ト で 入 力 する 方 法 はやや ト リ ッ キーです。 詳 し く は 334<br />

ページ 「デフ ォル ト テキス ト に 記 号 フ ォ ン ト を 用 いる」 を 参 照 し て く だ さ い。<br />

ブロックプレビューを 生 成 ブロックプレビューを 生 成 するには、 以 下 のいずれかの 方<br />

法 を 用 います :<br />

> メ ニ ュー 項 目 「<strong>PDFlib</strong> ブ ロ ッ ク」 → 「プ レ ビ ュー」 → 「プ レ ビ ューの 生 成 」 で。<br />

> 「ツール」 → 「 高 度 な 編 集 」 ペーン (Acrobat X/XI) ま たは 「 高 度 な 編 集 」 ツールバー<br />

(Acrobat 9) で <strong>PDFlib</strong> ブ ロ ッ ク プレ ビ ューア イ コ ン を ク リ ッ ク 。 Acrobat で こ の<br />

ツールバーが 表 示 されていないと きは、「 表 示 」 → 「ツール」 → 「 高 度 な 編 集 」 (Acrobat<br />

330 第 <strong>12</strong> 章 : <strong>PPS</strong> と <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong>


図 <strong>12</strong>.4 図 <strong>12</strong>.1 で 示 し た コ ン テナ 文 書 に 対 する プ レ ビ ュー PDF。 ブロック 情 報 レイヤー 群 と 注 釈 群<br />

を 含 んでいます<br />

X/XI) ま たは 「 表 示 」 → 「ツールバー」 → 「 高 度 な 編 集 」 (Acrobat 9) を 選 択 すれば 表<br />

示 させるこ とができます。<br />

> ブロックツールがアクティブのときは、どのブロックもない 所 を 右 クリックすれば、コ<br />

ンテキス ト メニューに 項 目 「プ レ ビ ューの 生 成 」 と 「プレビュー 設 定 ...」 が 現 れます。<br />

プレ ビ ューは、 デ ィ ス ク 上 の PDF フ ァ イルに 基 づいて 生 成 さ れます。 Acrobat 上 で 変 更 を<br />

行 なっていた 場 合 、 ブ ロ ッ ク PDF を 「フ ァ イル」 → 「 上 書 き 保 存 」 または 「フ ァ イル」 →<br />

「 名 前 を 付 けて 保 存 ...」 を 用 いてデ ィ ス ク に 保 存 し てはじめて、 その 変 更 はプレ ビ ューに<br />

反 映 されます。 変 更 を 受 けたブロックは、ブロックの 名 前 の 後 にアスタリスクが 付 いてい<br />

る こ と で 識 別 で き ます。 プレ ビ ュー 機 能 を 設 定 し て、 プレ ビ ュー 生 成 前 にブ ロ ッ ク PDF<br />

が 自 動 保 存 さ れる よ う にする こ と も で き ます。 そ う すれば、 対 話 的 に 行 なった 変 更 が 確 実<br />

に、 ただちにプレ ビ ュー 内 で 反 映 さ れます。<br />

<strong>12</strong>.4 Acrobat でブロックをプレビュー 331


図 <strong>12</strong>.5 ブロックプレビュー 設 定<br />

プレビューを 設 定 ブ ロ ッ ク プレ ビ ューの 生 成 と 、その 背 後 の <strong>PPS</strong> の 動 作 については、い<br />

くつかの 性 質 を、 「<strong>PDFlib</strong> ブロック」→「プレビュー」→「プレビュー 設 定 ...」 で 設 定 す<br />

ることができます:<br />

> 現 在 のページをプレ ビ ューする か、 それ と も 文 書 全 体 をプレ ビ ューする か。<br />

> 生 成 さ れるプレ ビ ュー 文 書 の 出 力 デ ィ レ ク ト リ 。<br />

> ブ ロ ッ ク PDF をプレ ビ ュー 生 成 前 に 自 動 保 存 。<br />

> ブ ロ ッ ク 情 報 レ イ ヤー と 注 釈 を 追 加 。<br />

> 生 成 さ れる 出 力 へブ ロ ッ ク 群 を 複 製 。<br />

> 「ブロ ッ ク PDFのPDF/A またはPDF/X 状 態 を 複 製 」:これらの 規 格 では、レイヤーと 注 釈 の<br />

使 用 は 制 限 さ れていますので、 「ブロ ッ ク 情 報 レ イヤー と 注 釈 を 追 加 」 オプシ ョ ン と こ<br />

のオプシ ョ ンは 同 時 には 使 えません。<br />

> 「ブロ ッ ク を プ レ ビ ューフ ァ イルへ 複 製 」 を 利 用 する と、 流 し 込 みの 際 に、 PDF ブロ ッ<br />

ク 群 を、 生 成 さ れたプレ ビ ューへ 複 製 する こ と がで き ます。 ブ ロ ッ ク への 流 し 込 みが<br />

成 功 し たかど う かにかかわ らず、 すべてのブ ロ ッ ク が 複 製 さ れます。<br />

> 「 高 度 な <strong>PPS</strong> オプシ ョ ン」ダ イ ア ロ グ を 利 用 し て、<strong>PPS</strong> API に 従 っ て <strong>PPS</strong> 関 数 のオプシ ョ<br />

ン リ ス ト を 追 加 指 定 する こ と も で き ます。 た と えば、 PDF_set_option( ) の searchpath<br />

オプシ ョ ン を 用 いて、 ブ ロ ッ ク への 流 し 込 みに 使 う フ ォ ン ト や 画 像 が 置 かれてい る<br />

デ ィ レ ク ト リ を 指 定 する こ と がで き ます。 高 度 なオプシ ョ ン を 指 定 する 際 には、 <strong>PPS</strong><br />

コー ド の 開 発 者 と の 連 携 の も と に 行 う こ と を 推 奨 し ます。<br />

プレビューで 提 供 される 情 報 生 成 さ れる プレ ビ ュー 文 書 には、 元 のページ 内 容 ( 背 景 )<br />

と、 流 し 込 みが 行 われたブロ ッ ク のほかに、 さ まざまな 情 報 も 含 まれる こ と があ り ます。<br />

こ の 情 報 は、 ブ ロ ッ ク や <strong>PPS</strong> 設 定 のチェ ッ ク や 改 善 に 役 立 つも のです。デフ ォル ト 内 容 を<br />

持 つア ク テ ィ ブなブロ ッ ク それぞれについて、 以 下 の 項 目 が 生 成 されます :<br />

> エラーマーカ : 流 し 込 みが 成 功 しなかったブロ ッ クは、 打 ち 消 し 線 の 付 いた 矩 形 と し<br />

て 図 示 さ れ、 容 易 に 識 別 する こ と がで き ます。 エ ラーマーカは、 ブ ロ ッ ク が 処 理 で き<br />

なかった と き にはつねに 生 成 さ れます。<br />

> しおり : ブロックの 処 理 結 果 はしおりにまとめられます。 このしおりは、 ページ 番 号<br />

と ブ ロ ッ ク の 種 類 に 従 って、 かつエ ラーが 起 き た と きはエ ラーに も 従 って、 構 造 化 さ<br />

れています。 しおり は 「 表 示 」 → 「 表 示 切 り 替 え」 → 「ナビゲーシ ョ ンパネル」 → 「し<br />

332 第 <strong>12</strong> 章 : <strong>PPS</strong> と <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong>


おり」(Acrobat X/XI)、ま たは「 表 示 」→「ナビゲーシ ョ ンパネル」→「しおり」(Acrobat 9)<br />

で 表 示 で き ます。 しお り はつねに 生 成 さ れます。<br />

> 注 釈 : 処 理 されたブロックごとに、ブロック 内 容 そのものに 加 えて、ページ 上 に 注 釈<br />

が 生 成 されます。 こ の 注 釈 の 矩 形 は、 元 のブロ ッ ク の 枠 を 図 示 し ています (デフ ォル<br />

ト 内 容 と 流 し 込 みモー ド に よ っては、 こ れはブ ロ ッ ク 内 容 の 枠 と は 異 な る 場 合 があ る<br />

のです)。 こ の 注 釈 の 中 にはブ ロ ッ ク の 名 前 が 入 ってお り 、 ブ ロ ッ ク への 流 し 込 みがで<br />

きなかったときにはエラーメ ッセージも 入 っています。 注 釈 はデフォルトで 生 成 され<br />

ますが、 プレ ビ ュー 設 定 で 無 効 化 する こ と も で き ます。 PDF/A-1 ・ PDF/X 規 格 では 注<br />

釈 の 使 用 は 制 限 されていますので、 「ブロ ッ ク PDF の PDF/A または PDF/X 状 態 を 複 製 」<br />

オプシ ョ ン を 有 効 にする と 、 注 釈 は 生 成 さ れません。<br />

> レイヤー:ページの 内 容 は、 分 析 と デバ ッ グが 容 易 にな る よ う 、 複 数 のレ イ ヤーに 分<br />

けて 配 置 さ れます。 ページ 背 景 (すなわち 元 のページの 内 容 )、 ブ ロ ッ ク の 各 種 類 、 流<br />

し 込 みができ なかったエラーブロ ッ ク、 ブロ ッ ク 情 報 を 持 った 注 釈 について、 それぞ<br />

れ 別 々のレ イヤーが 生 成 されます。 空 のま まにな る レ イヤーについては 生 成 されませ<br />

ん (エ ラーが 何 も 起 き なかった 場 合 等 )。 レ イ ヤー 一 覧 は 「 表 示 」 → 「ナビゲーシ ョ ン<br />

パネル」→「レイヤー」で 表 示 で き ます。 デフ ォル ト では、 ページ 上 のすべてのレ イ<br />

ヤーが 表 示 されます。 いずれかのレ イヤーの 内 容 を 見 えな く するには、 そのレ イヤー<br />

の 名 前 の 左 の 目 のア イ コ ンを ク リ ッ ク し ます。 レ イヤーの 生 成 は、 プレ ビ ュー 設 定 で<br />

無 効 化 する こ と も 可 能 です。 PDF/A ・ PDF/X 規 格 ではレ イ ヤーの 使 用 は 制 限 さ れてい<br />

ますので、「ブロ ッ ク PDF の PDF/A または PDF/X 状 態 を 複 製 」 オプシ ョ ン を 有 効 にする<br />

と、 レイヤーは 生 成 されません。<br />

PDF/A または PDF/X ステータスを 複 製 「ブロ ッ ク PDF の PDF/A または PDF/X 状 態 を 複<br />

製 」 設 定 は、PDF/A 規 格 か PDF/X 規 格 に 従 った PDF 出 力 を 生 成 する 必 要 があ る と き に 有<br />

用 です。 複 製 モー ド は、 入 力 が 以 下 のいずれかの 規 格 に 準 拠 し てい る と き に 有 効 にで き ま<br />

す:<br />

PDF/A-1b:2005<br />

PDF/A-2b・PDF/A-2u<br />

PDF/A-3b・PDF/A-3u<br />

PDF/X-1a:2003<br />

PDF/X-3:2003<br />

PDF/X-4・PDF/X-4p<br />

PDF/X-5g・PDF/X-5pg<br />

プレ ビ ューが 複 製 モー ド で 生 成 さ れる と きは、 <strong>PPS</strong> は、 ブ ロ ッ ク PDF の 以 下 の 性 質 を、 生<br />

成 する プレ ビ ューへ 複 製 し ます :<br />

> PDF 規 格 識 別 。<br />

> 出 力 イ ンテン ト 条 件 。<br />

> ページ 寸 法 。 すべてのページボ ッ ク ス を 含 みます。<br />

> XMP 文 書 メ タデータ。<br />

規 格 準 拠 の PDF 文 書 を 複 製 する 際 には、 すべてのブ ロ ッ ク 流 し 込 み 操 作 が、 それぞれの<br />

規 格 に 準 拠 し ている 必 要 があ り ます。 た と えば、 出 力 イ ンテン ト がなければ、 ICC プ ロ<br />

フ ァ イルのない RGB 画 像 は 使 う こ と がで き ません。 同 様 に、 使 用 し てい る フ ォ ン ト はす<br />

べて 埋 め 込 む 必 要 があ り ます。 要 請 の 全 一 覧 は、 295 ページ 「11.4 PDF/A に よ る アーカ イ<br />

ビ ング」 と 、 287 ページ 「11.3 PDF/X に よ る 印 刷 出 力 」 に 示 し ています。 PDF/A ま たは<br />

PDF/X 複 製 モー ド でのブ ロ ッ ク 流 し 込 み 操 作 が、 選 択 さ れてい る 規 格 に 違 反 する と き に<br />

は (デフォルト 画 像 が RGB カラースペースを 用 いているにもかかわらず、 文 書 が 適 切 な<br />

<strong>12</strong>.4 Acrobat でブロックをプレビュー 333


出 力 イ ンテン ト を 含 んでいない 場 合 等 ) 、 エ ラー メ ッ セージが 表 示 さ れ、 プレ ビ ューは 生<br />

成 さ れません。 こ れに よ り 、 ユーザーは 作 業 フ ローの 非 常 に 早 い 時 点 で、 規 格 違 反 の 危 険<br />

を 感 知 する こ と がで き ます。<br />

デフォルトテキストに 記 号 フォント を 用 いる ブロックのデフォルト テキス ト を 記 号<br />

フォントで 与 えるには、 2つの 方 法 があります:<br />

> Windowsの 文 字 コード 表 アプリケーションなどに 示 されている8ビッ ト レガシコードを<br />

用 いる : defaulttext に 対 し て 8 ビ ッ ト コー ド を、 その 対 応 する 8 ビ ッ ト キ ャ ラ ク タ を<br />

リ テ ラ ルに 入 力 する か (Windows の 文 字 コー ド 表 か ら コ ピー/ 貼 り 付 けする など し て)、<br />

あ る いは 数 値 エ ス ケープシーケ ン ス と し て 与 え ます。 こ の 場 合 には、 「テキス ト 作 成 」<br />

プロパティグループ 内 の charref プロパティのデフォルト 値 を false にしておく 必 要 が<br />

あ り 、 ま た、 文 字 参 照 を 用 い る こ と はで き ません。 た と えば、 下 記 のデフ ォル ト テキ<br />

ストは、charref=false の と き、 記 号 フ ォ ン ト Wingdings の 「スマ イ リ ー」 グ リ フ を 生 成<br />

します:<br />

J<br />

\x4A<br />

\1<strong>12</strong><br />

> フ ォ ン ト 内 で 用 い られてい る Unicode 値 かグ リ フ 名 を 用 い る : 「テキス ト 作 成 」 プロパ<br />

ティグループのcharref プロパティを true に 設 定 し た う えで、 記 号 の 文 字 参 照 かグ リ フ<br />

名 参 照 を 与 え ます (1<strong>12</strong> ページ 「4.5.2 文 字 参 照 」 参 照 )。 た と えば、 下 記 のデフ ォル ト<br />

テキス トは、 charref=true の と き、 記 号 フ ォ ン ト Wingdings の 「スマ イ リ ー」 グ リ フ を<br />

生 成 し ます :<br />

&#xF04A;<br />

&.smileface;<br />

なお、 どちらの 方 法 でも、ブロックプロパティダイアログ 上 は、 実 際 の 記 号 グリ フではな<br />

く 文 字 化 け し た 状 態 で 表 示 さ れます。<br />

334 第 <strong>12</strong> 章 : <strong>PPS</strong> と <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong>


<strong>12</strong>.5 <strong>PPS</strong> でブロッ クへ 流 し 込 み<br />

<strong>PPS</strong> でブ ロ ッ ク へ 流 し 込 みを 行 う には、 まずブ ロ ッ ク を 含 むページを、PDF_fit_pdi_page( )<br />

関 数 で 出 力 ページ 上 に 貼 り 付 け る 必 要 があ り ます。 ページを 貼 り 付 けた 後 、 その 上 のブ<br />

ロックへPDF_fill_*block( ) 関 数 群 で 流 し 込 みを 行 う こ と がで き ます。<br />

簡 単 な 例 : 可 変 テキス ト を テ ンプ レー ト に 追 加 PDF テンプレー ト への 動 的 テキ ス ト の<br />

追 加 は、 非 常 に 頻 繁 に 必 要 と な る 動 作 です。 以 下 の コー ド では、 入 力 PDF 文 書 (テンプ<br />

レー ト 、 ブ ロ ッ ク コ ンテナ) の 中 のページを 開 き、 それを 出 力 ページ 上 に 配 置 し、 そ し て<br />

firstname というテキス トブロックに 可 変 テキス トを 入 れ 込 んでいます:<br />

doc = p.open_pdi_document(filename, "");<br />

if (doc == -1)<br />

throw new Exception("エラー : " + p.get_errmsg());<br />

page = p.open_pdi_page(doc, pageno, "");<br />

if (page == -1)<br />

throw new Exception("エラー : " + p.get_errmsg());<br />

p.begin_page_ext(width, height, "");<br />

/* 取 り 込 んだページを 貼 り 付 け */<br />

p.fit_pdi_page(page, 0.0, 0.0, "");<br />

/* 貼 り 付 けたページ 上 のブロック1 個 へ 流 し 込 み */<br />

p.fill_textblock(page, "firstname", "Serge", "encoding=winansi");<br />

p.close_pdi_page(page);<br />

p.end_page_ext("");<br />

p.close_pdi_document(doc);<br />

クックブック 完 全 な コー ド サンプルがク ッ ク ブ ッ クの blocks/starter_block トピックにあります。<br />

ブロックのプロパティを 上 書 き 場 合 に よ っ てプ ロ グ ラ マーは、 ブ ロ ッ ク の 定 義 が 与 え<br />

てい る プ ロパテ ィ 群 を 一 部 だけ 採 用 し、その 他 のプ ロパテ ィ を カ ス タ ムの 値 で 上 書 き し た<br />

い こ と があ り ます。 こ れは さ ま ざ ま な 場 合 に 有 用 です :<br />

> 業 務 上 の 要 請 であ る 種 の 上 書 き が 必 要 と 判 断 さ れる 場 合 に 対 応 。<br />

> 画 像 ・PDF ページの 拡 縮 倍 率 を、ブ ロ ッ ク 定 義 か ら 採 らずに、アプ リ ケーシ ョ ンで 算 出 。<br />

> ブ ロ ッ ク の 座 標 をプ ロ グ ラ ムで 変 え る。 生 成 し たい 請 求 書 のデータ 項 目 数 が 一 定 でな<br />

い 場 合 等 。<br />

> 別 々のス ポ ッ ト カ ラー 名 を 与 え る こ と も 可 能 。 プ リ ン ト サービ ス 業 務 で、 顧 客 ご と の<br />

要 請 に 合 わせる ため。<br />

プロパティを 上 書 きするには、 PDF_fill_*block( ) 関 数 群 のオプシ ョ ン リ ス ト にプ ロパテ ィ<br />

の 名 前 と その 値 を 与 えます。 例 :<br />

p.fill_textblock(page, "firstname", "Serge", "fontsize=<strong>12</strong>");<br />

これは、 ブロッ クの 内 部 の fontsize プロパティを、 与 えた 値 <strong>12</strong> で 上 書 きします。 ほとん<br />

どすべてのプロパテ ィ 名 を、 オプシ ョ ン と して 用 いる こ とが 可 能 です。<br />

プ ロパテ ィ の 上 書 きは、 それぞれの 関 数 呼 び 出 し にのみ 適 用 さ れます。 ブ ロ ッ ク 定 義<br />

内 に 保 持 されるわけではあ り ません。<br />

<strong>12</strong>.5 <strong>PPS</strong> でブロックへ 流 し 込 み 335


流 し 込 んだブロ ッ クの 上 に 取 り 込 んだページを 配 置 取 り 込 んだページは、 どのブロッ<br />

ク 流 し 込 み 関 数 を 使 う よ り も 前 に、 出 力 ページ 上 に 配 置 し てお く 必 要 があ り ます。 と い う<br />

こ と は 元 ページは 通 常 、 ブ ロ ッ ク 内 容 よ り も 下 に 配 置 さ れる こ と にな り ます。 し か し 場 合<br />

に よ っては、 流 し 込 みが 行 われたブ ロ ッ ク よ り も 上 に 元 ページを 配 置 し たい こ と も あ る で<br />

し ょ う 。 こ れを 実 現 する には、 PDF_fit_pdi_page( ) の blind オプシ ョ ンを 用 いてページを<br />

一 度 貼 り 付 ける こ と によ り 、 そのページ 上 のブロ ッ ク と その 位 置 を <strong>PPS</strong> に 知 らせておき、<br />

ブ ロ ッ ク への 流 し 込 みが 済 んだ 後 にページを 再 び 貼 り 付 け る こ と に よ り 、 実 際 にページ 内<br />

容 を 表 示 さ せます :<br />

/* ブロックを 用 意 するためにページをblindモードで 配 置 してページを 見 えなくする */<br />

p.fit_pdi_page(page, 0.0, 0.0, "blind");<br />

/* ブロックへ 流 し 込 み */<br />

p.fill_textblock(page, "firstname", "Serge", "encoding=winansi");<br />

/* ... いろいろなブロックへ 流 し 込 み ... */<br />

/* ページを 再 度 配 置 、 今 度 は 見 えるように */<br />

p.fit_pdi_page(page, 0.0, 0.0, "");<br />

クックブック 完 全 な コー ド サンプルがク ッ ク ブ ッ クの blocks/block_below_contents トピックにありま<br />

す。<br />

ブロックへ 流 し 込 む 際 にコンテナページを 無 視 取 り 込 んだブロックは、そのブロック<br />

の 背 景 のページ 内 容 を 一 切 参 照 せずに、 プレース ホルダ と し て 使 って も よ いで し ょ う 。 ブ<br />

ロ ッ ク を 持 つコ ンテナページをブ ラ イ ン ド モー ド で、すなわち PDF_fit_pdi_page( ) で blind<br />

オプシ ョ ン を 指 定 し て、 1 個 ない し 複 数 のページ 上 に 貼 り 付 けた う えで、 ブ ロ ッ ク への 流<br />

し 込 みを 行 う と い う 方 法 です。 こ う すれば、 出 力 ページ 上 に コ ンテナページを 貼 り 付 け る<br />

こ と な く 、 ブ ロ ッ ク やそのプ ロパテ ィ の 利 点 を 活 用 する こ と がで き、 ま た、 ブ ロ ッ ク を 複<br />

数 のページ 上 に (あ る いは 同 一 出 力 ページ 上 に さ え) 複 製 する こ と が 可 能 にな り ます。<br />

クックブック 完 全 な コー ド サンプルがク ッ ク ブ ッ クの blocks/duplicate_block トピックにあります。<br />

テキストフローブロックを 連 結 テキストフローブロックは、 前 のブロックからあふれ<br />

たテキ ス ト が 次 のブ ロ ッ ク に 入 る よ う 、 連 結 する こ と が 可 能 です。 た と えば、 長 い 可 変 テ<br />

キ ス ト があ って、 別 のページへ 続 かせる 必 要 が 想 定 さ れる 場 合 、 2 個 のブ ロ ッ ク を 連 結 し<br />

ておけば、 1 個 目 のブ ロ ッ ク がいっぱいになって も、 残 り は 2 個 目 のブ ロ ッ ク へ 流 し 込 ま<br />

れます。<br />

<strong>PPS</strong> は、 PDF_fill_textblock( ) とブロックプロパティに 与 えられたテキストから、 1 個 の<br />

テキ ス ト フ ローを 内 部 的 に 生 成 し ます。 連 結 さ れていないブ ロ ッ ク の 場 合 は、 こ のテキ ス<br />

ト フ ローはそのブ ロ ッ ク 内 に 配 置 さ れ、そのテキ ス ト フ ローハン ド ルは 呼 び 出 し が 終 わっ<br />

た 時 点 で 削 除 さ れ、 あふれたテキ ス ト は 失 われます。<br />

連 結 されたテキ ス ト フ ローの 場 合 は、 最 初 のブロ ッ クへ 流 し 込 んだ 後 に 余 っている あ<br />

ふれテキス ト を、 その 次 のブロ ッ クへ 流 し 込 むこ と ができ ます。 最 初 のテキス ト フ ローの<br />

余 りがブロック 内 容 として 使 われ、 新 たなテキス ト フローは 作 成 されません。テキス ト フ<br />

ローブ ロ ッ ク の 連 結 は 以 下 の よ う に 動 作 し ます :<br />

> 連 結 されたテキス ト ブロ ッ ク のチェーンの 中 の 最 初 の PDF_fill_textblock( ) を 呼 び 出 す<br />

時 は、 textflowhandle オプシ ョ ンに 値 -1 (PHP では 0) を 与 える 必 要 があ り ます。 内<br />

部 的 に 生 成 さ れたテキ ス ト フ ローハン ド ルを PDF_fill_textblock( ) が 返 し ますので、 ア<br />

プ リ ケーシ ョ ン 側 で こ れを 保 持 し てお く 必 要 があ り ます。<br />

336 第 <strong>12</strong> 章 : <strong>PPS</strong> と <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong>


PDF_fill_textblock( ) への 次 の 呼 び 出 し では、 前 段 で 返 さ れたテキ ス ト フ ローハン ド ルを<br />

textflowhandle オプシ ョ ンに 与 える こ とができ ます (このと き text 引 数 にテキ ス ト を<br />

与 えて も 無 視 さ れる ので、 空 にするべき です)。 ブ ロ ッ ク へ、 テキ ス ト フ ローの 余 り が<br />

流 し 込 まれます。<br />

> こ の 処 理 を、 さ ら な る テキ ス ト フ ローブ ロ ッ ク 群 に 対 し て 繰 り 返 すこ と がで き ます。<br />

> 返 されたテキス ト フローハンドルは、PDF_info_textflow( ) に 与 えれば、ブ ロ ッ ク 流 し 込<br />

みの 結 果 を 知 る こ と がで き ます。 終 了 状 況 やテキ ス ト の 終 了 位 置 な どがわか り ます。<br />

なお、 fitmethod プロパティは clip に 設 定 する 必 要 があ り ます (textflowhandle を 与 えて<br />

い る と きはどのみち こ れがデフ ォル ト です) 。 テキ ス ト フ ローブ ロ ッ ク を 連 結 する 基 本 的<br />

な コー ド の 骨 組 みは 以 下 の よ う にな り ます :<br />

p.fit_pdi_page(page, 0.0, 0.0, "");<br />

tf = -1;<br />

for (i = 0; i < blockcount; i++)<br />

{<br />

String optlist = "encoding=winansi textflowhandle=" + tf;<br />

int reason;<br />

tf = p.fill_textblock(page, blocknames[i], text, optlist);<br />

text = null;<br />

if (tf == -1)<br />

break;<br />

/* いちばん 最 近 のfit_textflow() 呼 び 出 しの 結 果 をチェック */<br />

reason = (int) p.info_textflow(tf, "returnreason");<br />

result = p.get_string(reason, "");<br />

}<br />

/* テキストが 全 部 配 置 されたならループを 抜 ける */<br />

if (result.equals("_stop"))<br />

{<br />

p.delete_textflow(tf);<br />

break;<br />

}<br />

クックブック 完 全 な コー ド サンプルがク ッ ク ブ ッ クの blocks/linked_textblocks トピックにあります。<br />

ブロ ッ クの 流 し 込 み 順 序 ブ ロ ッ ク 関 数 群 PDF_fill_*block( ) は、プロパティ とブロック 内<br />

容 を、 以 下 の 順 序 で 処 理 し ます :<br />

> 背 景 :backgroundcolor プロパティが 存 在 し、かつ None 以 外 のカ ラースペース キーワー<br />

ド を 持 ってい る と きは、 ブ ロ ッ ク 領 域 は 指 定 さ れた 色 で 塗 られます。<br />

> 枠 線 :bordercolor プロパティが 存 在 し、かつ None 以 外 のカ ラースペース キーワー ド を<br />

持 ってい る と きは、 ブ ロ ッ ク の 枠 は 指 定 さ れた 色 と 線 幅 で 描 線 さ れます。<br />

> 内 容 : 与 え ら れたブ ロ ッ ク 内 容 と 、 bordercolor ・ linewidth 以 外 のすべてのプ ロパテ ィ<br />

が 処 理 されます。<br />

> テキスト 行 ・テキストフローブロック:テキストもデフォルトテキストも 与 えられて<br />

いない と きは、 何 の 出 力 も 行 われません。 背 景 色 やブ ロ ッ ク の 枠 線 も あ り ません。<br />

入 れ 子 にな っ たブ ロ ッ ク ブロックへ 流 し 込 みを 行 う 前 には、 そのブロックを 含 むペー<br />

ジを 出 力 ページ 上 にまず 貼 り 付 け る 必 要 があ り ます (そ う でない と 、 ページを 拡 縮 ・ 回<br />

転 ・ 平 行 移 動 し た 後 のブ ロ ッ ク の 位 置 を <strong>PPS</strong> が 知 り えないため)。 ページをブ ロ ッ ク の コ<br />

<strong>12</strong>.5 <strong>PPS</strong> でブロックへ 流 し 込 み 337


ンテナ と し てのみ 使 ってお り 、 静 的 内 容 を 新 ページへ 複 製 し な く て よ い 場 合 には、 取 り 込<br />

んだページを、 blind オプシ ョ ンを 用 いて 貼 り 付 ける こ とができ ます。<br />

取 り 込 んだページを、 どの よ う な 方 法 で 出 力 ページ 上 に 貼 り 付 けて も、 ブ ロ ッ ク への<br />

流 し 込 みは 行 う こ と がで き ます :<br />

> ページは、 PDF_fit_pdi_page( ) で 直 接 貼 り 付 け る こ と がで き ます。<br />

> ページは、 テーブルセル 内 に PDF_fit_table( ) で 間 接 的 に 貼 り 付 け る こ と がで き ます。<br />

> ページは、 他 の PDF ブ ロ ッ ク の 内 容 と し て PDF_fill_pdfblock( ) で 貼 り 付 ける こ と ができ<br />

ます。<br />

こ の 3 番 目 の 方 法 、 すなわち PDF ブ ロ ッ ク へ、 ブ ロ ッ ク を 含 む 他 のページを 流 し 込 む と<br />

い う 方 法 を 用 い る と 、 ブ ロ ッ ク コ ンテナを 入 れ 子 にする こ と がで き ます。 こ れを 活 用 する<br />

と 、 面 白 い 使 い 方 を 簡 単 に 実 装 で き ます。 た と えば、 2 段 階 のブ ロ ッ ク 流 し 込 み 処 理 で、<br />

組 み 付 け と パーソ ナ ラ イ ゼーシ ョ ンの 両 方 を 実 装 する こ と がで き ます :<br />

> 第 一 層 のブ ロ ッ ク コ ンテナページには、い く つかの 大 き な PDF ブ ロ ッ ク を 置 き ます。こ<br />

れ ら は、 印 刷 する 紙 の 上 の 主 要 な 領 域 を 表 し ています。 PDF ブ ロ ッ ク の 配 置 は、 想 定<br />

し てい る 紙 の 後 工 程 を 反 映 し ています ( 折 り ・ 断 裁 等 )。<br />

> こ の 第 一 層 の PDF ブ ロ ッ ク それぞれへ、 第 二 層 の コ ンテナ PDF ページを 流 し 込 みます。<br />

この PDFページには、テキス ト ・ 画 像 ・PDF・グラフィ ッ クのうちのいずれかのブロッ<br />

ク を 置 いておき、 それらへ 可 変 テキス ト を 流 し 込 んでパーソナラ イゼーシ ョ ンを 行 い<br />

ます。<br />

こ の 方 法 で、 ブ ロ ッ ク コ ンテナは 入 れ 子 にする こ と がで き ます。 ブ ロ ッ ク の 入 れ 子 は 何 重<br />

で も 可 能 ですが、 三 重 以 上 の 入 れ 子 が 必 要 にな る こ と はまれで し ょ う 。<br />

こ の 第 二 層 のブ ロ ッ ク コ ンテナ (レ ターのテンプレー ト ページな ど) は、 各 組 み 付 け<br />

ページで 同 じにすることもできますし、 別 のものにすることもできます。もし 同 じにした<br />

場 合 は、 まずレ ターテンプレー ト 上 のブ ロ ッ ク 群 への 流 し 込 みを 行 なってか ら、 そのレ<br />

ターテンプレー ト 自 体 を 次 の 第 一 層 ブロ ッ ク 内 に 貼 り 付 ける 必 要 があ り ます。 なぜな ら、<br />

<strong>PPS</strong> はつねに、 テンプレー ト ページが も っ と も 最 近 に 配 置 さ れた 位 置 を 用 い る か ら です。<br />

クックブック 完 全 な コー ド サンプルがク ッ ク ブ ッ クの blocks/nested_blocks トピックにあります。<br />

ブ ロ ッ クの 座 標 ブ ロ ッ ク の 矩 形 の 座 標 は、 PDF のデフ ォル ト 座 標 系 を 参 照 し ています。<br />

ブ ロ ッ ク を 含 んだページを <strong>PPS</strong> で 出 力 ページに 配 置 する と き には、 PDF_fit_pdi_page( ) に<br />

対 し てい く つかの 配 置 オプシ ョ ンや 拡 縮 オプシ ョ ン を 与 え る こ と がで き ます。 こ れら のオ<br />

プシ ョ ンは、 そのブ ロ ッ ク が 処 理 さ れる 際 に 考 慮 さ れます。 こ れを 利 用 する と 、 1 つのテ<br />

ンプレー ト ページを 出 力 ページ 上 に 何 度 で も 配 置 し て、そのたびにそのブ ロ ッ ク 群 へデー<br />

タ を 流 し 込 むこ と がで き ます。 た と えば 1 枚 の 組 み 付 け 紙 上 に、 1 つの 名 刺 テンプレー ト<br />

を 4 回 配 置 する と いった こ と が 可 能 です。 ブ ロ ッ ク 関 数 群 は、 座 標 系 の 変 換 を 正 し く 行<br />

い、 すべてのブロ ッ ク に 対 し て、 それがページ 上 に 配 置 されるたびに、 正 し く テキス ト を<br />

配 置 し ます。 ク ラ イ アン ト に 求 められるのはただ、 ページを 配 置 し て、 そ し てその 配 置 し<br />

たページ 上 のすべてのブ ロ ッ ク を 処 理 する こ と だけです。 以 後 はそのページを、 出 力 ペー<br />

ジ 上 の 他 の 場 所 に 配 置 し た う えで、その 新 し い 場 所 に 対 し て さ ら にブ ロ ッ ク 処 理 操 作 を 行<br />

う ことができ、 これを 繰 り 返 していく ことが 可 能 です。<br />

<strong>Block</strong> <strong>Plugin</strong> におけ る ブ ロ ッ ク 座 標 の 表 示 の さ れかたは、PDF フ ァ イル 内 に 格 納 さ れて<br />

いる ものとは 異 なっています。 プラグインでは Acrobat の 方 式 を 用 いて、 座 標 の 原 点 を<br />

ページの 左 上 隅 に 置 いていますが、 内 部 座 標 (ブ ロ ッ ク 内 に 格 納 さ れてい る も の) では<br />

PDF の 方 式 を 用 いて、 座 標 の 原 点 をページの 左 下 隅 に 置 いてい る ためです。 プ ロパテ ィ ダ<br />

イ ア ロ グの 座 標 表 示 は、 Acrobat で 指 定 さ れてい る 単 位 に も 従 います (319 ページ 「ブ ロ ッ<br />

ク の 大 き さ と 位 置 」 参 照 )。<br />

338 第 <strong>12</strong> 章 : <strong>PPS</strong> と <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong>


ブロックプロパティでスポッ ト カラー ブロックプロパティで 特 色 (スポッ ト カラー)を<br />

使 う には、 「...」 を ク リ ッ ク すれば、 HKS ・ Pantone ス ポ ッ ト カ ラーの 全 一 覧 を 表 示 させる<br />

こ と がで き ます。 こ れ ら の 色 名 は <strong>PPS</strong> に 内 蔵 さ れてお り (80 ページ 「3.5.2 Pantone ・ HKS ・<br />

カ ス タ ム ス ポ ッ ト カ ラー」 参 照 ) 、 それ 以 上 の 準 備 な し に 使 用 で き ます。 カ ス タ ム ス ポ ッ<br />

ト カ ラーに 対 し ては、 <strong>Block</strong> <strong>Plugin</strong> で 代 替 色 を 定 義 する こ と が 可 能 です。 ブ ロ ッ ク プ ロパ<br />

テ ィ で 代 替 色 を 指 定 していないと きは、 <strong>PPS</strong> アプ リ ケーシ ョ ンで PDF_makespotcolor( ) を<br />

用 いてカ ス タ ム ス ポ ッ ト カ ラーを あ ら か じ め 定 義 し てお く 必 要 があ り ます。そ う でない と<br />

ブロ ッ クへの 流 し 込 みは 失 敗 します。<br />

<strong>12</strong>.5 <strong>PPS</strong> でブロックへ 流 し 込 み 339


<strong>12</strong>.6 ブロックのプロパティ<br />

<strong>PPS</strong> と <strong>Block</strong> <strong>Plugin</strong> では、 どの 種 類 のブ ロ ッ ク に 対 し て も 適 用 する こ と ので き る 一 般 プ ロ<br />

パテ ィ 群 が 用 意 されています。 そのほかに、 ブロ ッ クの 種 類 「テキス ト 行 」 ・ 「テキス ト フ<br />

ロー」・「 画 像 」・「PDF」 ・「グラフィック」 にそれぞれ 特 有 のプロパテ ィ 群 もあ り ます。<br />

プロパティは、 ハンドルとアクショ ン リ ス ト を 除 いて、 オプショ ン リ ス ト と 同 じデー<br />

タ 型 に 対 応 しています。<br />

ブロックプロパティの 名 前 は 一 般 に、PDF_fit_textline( ) ・ PDF_fit_image( ) といった API<br />

関 数 に 対 する オプシ ョ ン と 同 じ です (fitmethod ・ charspacing 等 )。 その 場 合 、 それぞれの<br />

動 作 は、 対 応 するオプシ ョ ンの 解 説 に 書 いてあ る もの と ま った く 同 じです。<br />

<strong>12</strong>.6.1 管 理 プ ロパテ ィ 群<br />

管 理 プ ロパテ ィ 群 は、 すべての 種 類 のブ ロ ッ ク に 適 用 さ れます。 必 須 の 項 目 は、 <strong>Block</strong><br />

<strong>Plugin</strong> に よ って 自 動 生 成 さ れます。 表 <strong>12</strong>.4 に、 管 理 プ ロパテ ィ の 一 覧 を 示 し ます。<br />

表 <strong>12</strong>.4 管 理 プロパティ 一 覧<br />

キーワー ド<br />

Description<br />

Locked<br />

Name<br />

Subtype<br />

textflow<br />

Type<br />

とりうる 値 ・ 解 説<br />

( 文 字 列 ) ブ ロ ッ クの 機 能 に 関 する、 人 が 読 める 説 明 。 エ ン コーデ ィ ングは PDFDocEncoding か<br />

Unicode ( 後 者 の 場 合 は 先 頭 BOM)。 このプロパテ ィ は、 ユーザーへの 情 報 提 供 のためだけにあ り 、<br />

<strong>PPS</strong> には 無 視 されます。<br />

( 論 理 値 ) true なら、 ブロ ッ ク とそのプロパテ ィ は <strong>Block</strong> <strong>Plugin</strong> で 編 集 できません。 このプロパ<br />

テ ィ は <strong>PPS</strong> には 無 視 されます。 デフ ォル ト : false<br />

( 文 字 列 、 必 須 ) ブ ロ ッ クの 名 前 。 ブ ロ ッ ク 名 は、 ページご と に 一 意 である 必 要 があ り ますが、 文<br />

書 内 では 一 意 でな く て もかまいません。 3 種 のキャ ラ ク タ [ ] / は、 ブロ ッ ク 名 には 使 えません。<br />

ブ ロ ッ ク 名 は 最 長 <strong>12</strong>5 文 字 です。<br />

(キーワー ド 、 必 須 ) ブ ロ ッ クの 種 類 によ っ て、 Text ・ Image ・ PDF・Graphics のいずれか。 テキス<br />

ト 行 ブロックとテキスト フローブロックは、 ともに SubtypeがText になる こ と に 留 意 し て く だ さ<br />

い。 両 者 は textflow プロパテ ィ によって 識 別 されます。<br />

( 論 理 値 ) 一 行 処 理 か 複 数 行 処 理 かを 制 御 し ます。 このプ ロパテ ィ は、 <strong>Block</strong> <strong>Plugin</strong> のユーザーイ ン<br />

タフェースでは 表 示 されず、 それぞれテキスト 行 ブロックとテキストフローブロックとして 表 さ<br />

れます (デフ ォル ト : false) :<br />

false テキスト 行 ブロック :テキストが 一 行 で 組 まれ、PDF_fit_textline()で 処 理 されます。<br />

true<br />

テキス ト フ ローブロ ッ ク : テキス ト が 複 数 行 にわたる 場 合 があ り 、 PDF_fit_textflow( ) で<br />

処 理 されます。 標 準 テキス ト プロパテ ィ 群 に 加 え、 テキス ト フロー 関 連 のプロパテ ィ 群<br />

も 指 定 できます ( 表 <strong>12</strong>.9 参 照 )。<br />

(キーワー ド 、 必 須 ) つねに <strong>Block</strong><br />

340 第 <strong>12</strong> 章 : <strong>PPS</strong> と <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong>


<strong>12</strong>.6.2 矩 形 プ ロパテ ィ 群<br />

矩 形 プ ロパテ ィ 群 は、 すべての 種 類 のブ ロ ッ ク に 適 用 さ れます。 こ れらは、 ブ ロ ッ ク の 矩<br />

形 本 体 の 書 式 を 記 述 し ます。 必 須 の 項 目 は、 <strong>Block</strong> <strong>Plugin</strong> に よ って 自 動 生 成 さ れます。 表<br />

<strong>12</strong>.5 に、 矩 形 プ ロパテ ィ の 一 覧 を 示 し ます。<br />

表 <strong>12</strong>.5 矩 形 プロパティ 一 覧<br />

キーワー ド<br />

backgroundcolor<br />

bordercolor<br />

linewidth<br />

Rect<br />

とりうる 値 ・ 解 説<br />

( 色 ) このプ ロパテ ィ が 存 在 し、 かつ None 以 外 の 色 空 間 キーワー ド を 持 つな らば、 矩 形 が 描 かれ、<br />

与 えられた 色 で 塗 られます。 既 存 のページ 内 容 をおおい 隠 したいときに 有 用 です。 デフォルト :<br />

None<br />

( 色 ) このプ ロパテ ィ が 存 在 し、 かつ None 以 外 の 色 空 間 キーワー ド を 持 つな らば、 矩 形 が 描 かれ、<br />

与 えられた 色 で 描 線 されます。 デフ ォル ト : None<br />

(float。 正 の 値 でなければな ら ない) ブロ ッ クの 矩 形 を 描 く のに 用 いる 線 の 描 線 幅 。 bordercolor<br />

設 定 時 のみ 有 効 です。 デフ ォル ト : 1<br />

( 矩 形 、 必 須 ) ブ ロ ッ クの 座 標 。 座 標 原 点 はページ 左 下 隅 。 ただ し <strong>Block</strong> <strong>Plugin</strong> では、 座 標 は<br />

Acrobat の 方 式 で、 すなわちページ 左 上 隅 を 原 点 と し て 表 されます。 座 標 の 単 位 は、 Acrobat でそ<br />

の 時 点 で 選 択 されている 単 位 で 表 示 されますが、 PDF フ ァ イル 内 部 ではつねにポイ ン ト 単 位 で 格<br />

納 されています。<br />

Status (キーワード) <strong>PPS</strong> とブロック 機 能 がブロックを 処 理 する 方 法 を 記 述 します (デフォルト :<br />

active) :<br />

active ブ ロ ッ クは、 そのプロパテ ィ に 従 っ て 完 全 に 処 理 されます。<br />

ignore ブ ロ ッ クは 無 視 されます。<br />

ignoredefault<br />

defaulttext/image/pdf/graphics プロパテ ィ ・ オプシ ョ ンが 無 視 される、 すなわち 可<br />

変 内 容 がない と き ( 特 にプ レ ビ ューで) ブ ロ ッ クが 空 のままになる 点 を 除 き、 active<br />

と 同 じ です。 これは 特 に、 ブ ロ ッ クがプ レ ビ ュー 生 成 のためのデフ ォル ト 内 容 を 持 っ て<br />

いるかも しれないけれど も、 サーバサイ ド でブロ ッ クへ 流 し 込 みが 行 われる 際 にはその<br />

ブ ロ ッ クのデフ ォル ト 内 容 が 用 いられないよ う に し たい と きに 有 用 です。 また、 ブ ロ ッ<br />

ク を プ レ ビ ューする 際 に も、 ブ ロ ッ ク プロパテ ィ からデフ ォル ト 内 容 を 削 除 する こ と な<br />

くデフォルト 内 容 を 無 効 化 するために 用 いることができます。<br />

static 可 変 内 容 が 配 置 されません。 ブ ロ ッ ク にデフ ォル ト のテキス ト ・ 画 像 ・ PDF ・ グ ラ<br />

フ ィ ッ ク 内 容 があれば、 それが 用 い られます。<br />

<strong>12</strong>.6 ブロックのプロパティ 341


<strong>12</strong>.6.3 書 式 プ ロパテ ィ 群<br />

書 式 プ ロパテ ィ 群 は、 組 版 の 詳 細 を 指 定 し ます :<br />

> 表 <strong>12</strong>.6 に、 透 過 書 式 プ ロパテ ィ の 一 覧 を 示 し ます。 こ れ ら は、 すべての 種 類 のブ ロ ッ<br />

ク に 適 用 さ れます。<br />

> 表 <strong>12</strong>.7に、テキスト 書 式 プロパティの 一 覧 を 示 します。 これらは、テキスト 行 ブロッ<br />

クとテキストフローブロックに 適 用 されます。<br />

表 <strong>12</strong>.6 透 過 書 式 プロパテ ィ 一 覧 (すべてのブロ ッ ク に 適 用 )<br />

キーワー ド<br />

blendmode<br />

opacityfill<br />

opacitystroke<br />

とりうる 値 ・ 解 説<br />

(キーワードリスト。 PDF/A-1 モードで 用 いられるときは 値 Normal を 持 つ 必 要 があります) ブレ<br />

ン ド モー ド の 名 前 : None・Color・ColorDodge・ColorBurn・Darken・Difference・Exclusion・<br />

HardLight・Hue・Lighten・Luminosity・Multiply・None・Normal・Overlay・Saturation・<br />

Screen・SoftLight。 デフォルト:None<br />

(float。 PDF/A モー ド で 用 い られる と きは 値 1 を 持 つ 必 要 があ り ます) 塗 り 操 作 の 不 透 明 度 を 範 囲<br />

0 ~ 1 で 表 し た もの。 値 0 は 完 全 透 過 を 意 味 し、 1 は 完 全 不 透 過 を 意 味 し ます。<br />

(float。 PDF/A モー ド で 用 い られる と きは 値 1 を 持 つ 必 要 があ り ます) 描 線 操 作 の 不 透 明 度 を 範 囲<br />

0 ~ 1 で 表 し た もの。 値 0 は 完 全 透 過 を 意 味 し、 1 は 完 全 不 透 過 を 意 味 し ます。<br />

342 第 <strong>12</strong> 章 : <strong>PPS</strong> と <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong>


表 <strong>12</strong>.7 テキス ト 書 式 プロパテ ィ 一 覧 (テキス ト 行 ・ テキス ト フローブロ ッ クに 適 用 )<br />

キーワー ド<br />

とりうる 値 ・ 解 説<br />

charspacing (float またはパーセン ト 値 ) 文 字 間 隔 。 パーセン ト 値 は fontsize に 対 する 割 合 。 デフ ォル ト : 0<br />

decorationabove<br />

( 論 理 値 ) true の 場 合 、 underline ・ strikeout ・ overline オプシ ョ ンで 有 効 にされたテキス ト 装<br />

飾 がテキス ト の 前 面 に 描 かれ、 そ う でなければテキス ト の 背 面 に 描 かれます。 描 画 順 序 を 変 える<br />

と、 装 飾 線 の 書 式 に 影 響 を 与 えます。 デフ ォル ト : false<br />

fillcolor ( 色 ) テキス ト の 塗 り 色 。 デフ ォル ト : gray 0 (= 黒 )<br />

fontname 1<br />

fontsize 1<br />

( 文 字 列 ) フ ォ ン ト の 名 前 。 PDF_load_font( ) が 求 める ものと 同 じ です。 <strong>Block</strong> <strong>Plugin</strong> では、 システム<br />

で 利 用 可 能 な フ ォ ン ト の 一 覧 が 表 示 されます。 ただ し こ う し た フ ォ ン ト 名 は、 Mac ・ Windows ・<br />

Unix システム 間 で 互 換 とは 限 り ません。 fontname の 先 頭 が 「@」 キャ ラ ク タ である 場 合 は、 その<br />

フ ォ ン ト は 縦 書 き モー ド で 適 用 されます。<br />

ブ ロ ッ クへの 流 し 込 み 時 には、 PDF_fill_textblock( ) にオプシ ョ ン と し てテキス ト のエ ン コーデ ィ ン<br />

グを 与 える 必 要 があります。 ただし、 font オプシ ョ ンが 与 えられている 場 合 は 除 きます。<br />

(float) 文 字 のサイズをポイ ン ト 単 位 で 指 定 し ます<br />

horizscaling (float またはパーセン ト 値 ) テキス ト の 水 平 倍 率 。 デフ ォル ト : 100%<br />

italicangle (float) テキス ト の 斜 体 角 度 を 度 単 位 で 表 し た もの。 デフ ォル ト : 0<br />

kerning<br />

overline<br />

shadow<br />

strikeout<br />

( 論 理 値 ) カーニングの 動 作 。 デフ ォル ト : false<br />

( 論 理 値 ) 上 線 のモー ド 。 デフ ォル ト : false<br />

( 複 合 ) 影 付 き 効 果 を 生 み 出 し ます (デフ ォル ト : 影 な し)。 行 かのサブプ ロパテ ィ が 使 用 可 能 で<br />

す:<br />

fillcolor ( 色 ) 影 の 色 。 デフ ォル ト : {gray 0.8}<br />

offset (float 2 個 かパーセン ト 値 2 個 のリ ス ト ) テキス ト の 参 照 点 からの 影 のオ フ セ ッ ト を、<br />

ユーザー 座 標 で、 または 文 字 サイズに 対 するパーセン ト 値 で 表 し た もの。 デフ ォル ト :<br />

{5% -5%}<br />

( 論 理 値 ) 取 り 消 し 線 のモー ド 。 デフ ォル ト : false<br />

strokecolor ( 色 ) テキス ト の 描 線 色 。 デフ ォル ト : gray 0 (= 黒 )<br />

strokewidth<br />

(float ・ パーセン ト 値 ・ キーワー ドのいずれか。 textrendering が 袋 文 字 に 設 定 されている と きの<br />

み 意 味 を 持 ち ます) 袋 文 字 の 線 幅 (ユーザー 座 標 で、 または percentage に 対 するパーセン ト 値<br />

で)。 キーワー ド auto、またはそれと 等 価 な 値 0 は、 内 蔵 のデフ ォル ト を 用 います。 デフ ォル ト :<br />

auto<br />

textrendering ( 整 数 ) テキス ト 表 現 モー ド 。 Type 3 フ ォ ン ト では 値 3 のみ 意 味 を 持 ちます (デフ ォル ト : 0) :<br />

P<br />

0 テキス ト を 塗 る 4 テキス ト を 塗 り、 ク リ ッピングパスに 追 加<br />

1 テキス ト を 描 線 ( 袋 文 字 ) 5 テキス ト を 描 線 し、 ク リ ッピングパスに 追 加<br />

P<br />

2 テキス ト を 塗 って 描 線 6 テキス ト を 塗 って 描 線 し、 ク リ ッピングパスに 追 加<br />

3 不 可 視 テキス ト 7 テキス ト をク リ ッピングパスに 追 加<br />

(ブ ロ ッ ク では 不 可 )<br />

textrise<br />

underline<br />

(float またはパーセン ト 値 ) テキス ト の 縦 方 向 のオ フ セ ッ ト 。 パーセン ト 値 は fontsize に 対 する<br />

割 合 。 デフ ォル ト : 0<br />

( 論 理 値 ) 下 線 のモー ド 。 デフ ォル ト : false<br />

<strong>12</strong>.6 ブロックのプロパティ 343


表 <strong>12</strong>.7 テキスト 書 式 プロパティ 一 覧 (テキスト 行 ・ テキストフローブロックに 適 用 )<br />

キーワー ド<br />

underlineposition<br />

underlinewidth<br />

とりうる 値 ・ 解 説<br />

(float ・ パーセン ト 値 ・ キーワー ド のいずれか) 下 線 テキス ト のベース ラ イ ンに 対 する 描 線 の 相 対<br />

位 置 。 パーセン ト 値 は fontsize に 対 する 割 合 。 デフ ォル ト : auto<br />

(float ・ パーセン ト 値 ・ キーワー ド のいずれか) 下 線 テキス ト の 線 幅 。 パーセン ト 値 は fontsize に<br />

対 する 割 合 。 デフ ォル ト : auto<br />

wordspacing (float またはパーセン ト 値 ) 単 語 間 隔 。 パーセン ト 値 は fontsize に 対 する 割 合 。 デフ ォル ト : 0<br />

1. このプ ロパテ ィ は、 テキス ト 行 ・ テキス ト フ ローブ ロ ッ ク では 必 須 です。 <strong>Block</strong> <strong>Plugin</strong> はこれを 自 動 生 成 し ます。<br />

344 第 <strong>12</strong> 章 : <strong>PPS</strong> と <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong>


<strong>12</strong>.6.4 テキス ト 作 成 プロパテ ィ 群<br />

テキ ス ト 作 成 プ ロパテ ィ 群 は、 テキ ス ト 行 ・ テキ ス ト フ ローブ ロ ッ ク の 前 処 理 工 程 を 指 定<br />

し ます。 表 <strong>12</strong>.8 に、 テキ ス ト 行 ・ テキ ス ト フ ローブ ロ ッ ク に 適 用 さ れる テキ ス ト 作 成 プ<br />

ロパティの 一 覧 を 示 します。<br />

表 <strong>12</strong>.8 テキス ト 作 成 プロパテ ィ 一 覧 (テキス ト 行 ・ テキス ト フローブロ ッ クに 適 用 )<br />

キーワー ド<br />

charref<br />

escapesequence<br />

features<br />

language<br />

script<br />

shaping<br />

とりうる 値 ・ 解 説<br />

( 論 理 値 ) true な ら、 数 値 参 照 ・ 文 字 参 照 ・ グ リ フ 名 参 照 の 置 き 換 えを 行 います。 デフ ォル ト : グ<br />

ローバルな charref オプシ ョ ン<br />

( 論 理 値 ) true な ら、 内 容 文 字 列 ・ ハイパーテキス ト 文 字 列 ・ 名 前 文 字 列 内 のエスケープシーケン<br />

スの 置 き 換 えを 行 います。 デフ ォル ト : グローバルな escapesequence オプシ ョ ン<br />

(キーワー ドのリ ス ト ) script ・ language オプシ ョ ンに 従 って、 OpenType フォン トのどのタイポ<br />

グ ラ フ ィ 機 能 を テキス ト に 適 用 するかを 指 定 し ます。 フ ォ ン ト 内 に 存 在 し ない 機 能 に 対 するキー<br />

ワードは、 エラーを 出 さずに 無 視 されます。 以 下 のキーワード を 与 えるこ とができます :<br />

_none フ ォ ン ト 内 のどの 機 能 も 適 用 し ません。 ただ し vert 機 能 だけは、 novert キーワー ド で<br />

明 示 的 に 無 効 化 する 必 要 があ り ます。<br />

< 名 前 > 4 文 字 の OpenType タ グ 名 を 与 えてその 機 能 を 有 効 に し ます。 よ く 用 いられる 機 能 名 は<br />

liga ・ ital ・ tnum ・ smcp ・ swsh ・ zero です。 利 用 で き るすべての 機 能 の 名 前 と 説 明 の<br />

全 一 覧 は、 154 ページ 「6.3.1 対 応 し ている OpenType レ イ アウ ト 機 能 」 に 示 し ていま<br />

す。<br />

no< 名 前 > 機 能 名 の 前 に 接 尾 辞 no をつけると (noliga 等 ) その 機 能 が 無 効 化 されます。<br />

デフォルト : 横 書 きモードでは _none。 縦 書 きモードではvert が 自 動 的 に 適 用 されます。<br />

OpenType 機 能 を 利 用 するには、 PDF_load_font( ) で readfeatures オプシ ョ ンが 必 須 です。<br />

(キーワー ド。 script が 与 え られている と きのみ 意 味 を 持 ちます) 指 定 された 言 語 に 従 っ てテキス<br />

ト が 処 理 されます。 これは features ・ shaping オプシ ョ ンに 対 して 意 味 を 持 ちます。 キーワード<br />

の 全 一 覧 は 163 ページ 「6.4.2 用 字 系 と 言 語 」 に 示 し ています。 例 : ARA (アラビア 語 ) ・ JAN ( 日 本<br />

語 ) ・ HIN (ヒ ンデ ィ ー 語 )。 デフ ォル ト : _none ( 言 語 未 定 義 )<br />

(キーワー ド。 shaping=true のときは 必 須 ) 指 定 された 用 字 系 に 従 ってテキストが 処 理 されます。<br />

これは features ・ shaping ・ advancedlinebreak オプシ ョ ンに 対 して 意 味 を 持 ちます。 用 字 系 と し<br />

てもっともよ く 用 いられるキーワードは 次 のとおりです:_none ( 未 定 義 用 字 系 ) latn ・ grek ・<br />

cyrl ・ armn ・ hebr ・ arab ・ deva ・ beng ・ guru ・ gujr ・ orya ・ taml ・ thai ・ laoo ・ tibt ・ hang ・<br />

kana ・ han。 キー ワ ー ド _auto を 指 定 する と、 テキス ト 内 のキャ ラ ク タの 多 数 が 属 する 用 字 系 が 選<br />

ばれますが、 ただ し _latn と _none は 無 視 されます。 キーワー ド の 全 一 覧 は 163 ページ 「6.4.2 用<br />

字 系 と 言 語 」 に 示 し ています。 デフ ォル ト : _none<br />

( 論 理 値 ) true なら、 script ・ language オプシ ョ ンに 従 っ て 文 字 の 字 形 選 択 (シ ェ ーピ ング) が<br />

行 われます。 script オプシ ョ ンが _none 以 外 の 値 を 持 つ 必 要 があ り、 かつ、 必 要 なシ ェーピング<br />

テーブルがフ ォ ン ト 内 に 存 在 し ている 必 要 があ り ます。 デフ ォル ト : false<br />

<strong>12</strong>.6 ブロックのプロパティ 345


<strong>12</strong>.6.5 テキス ト 組 版 プロパテ ィ 群<br />

表 <strong>12</strong>.9 に、 テキス ト フ ローブロ ッ ク に 対 し てのみ 用 いる こ と ができ る テキス ト 組 版 プロ<br />

パテ ィ の 一 覧 を 示 し ます。 ただ し stamp プロパティだけは、テキス ト 行 ブロックに 対 して<br />

も 用 い る こ と がで き ます。 こ れらは、 テキ ス ト フ ローを 処 理 する ための 初 期 オプシ ョ ン リ<br />

ス ト を 構 築 する ために 用 い ら れます(PDF_create_textflow( ) の optlist パラ メ タと 対 応 して<br />

います)。 テキストフローで 用 いるインラインオプションリストは、 プラグインでは 指 定<br />

するこ とができず、 サーバ 上 で PDF_fill_textblock( ) によ るブロ ッ クへの 流 し 込 みの 際 に、<br />

またはブロッ クの defaulttext プロパティ 内 で、 テキス ト 内 容 の 一 部 として 与 えるこ とが<br />

できます。<br />

表 <strong>12</strong>.9 テキス ト 組 版 プ ロパテ ィ 一 覧 ( 主 にテキス ト フ ローブ ロ ッ ク に 適 用 )<br />

alignment<br />

fixedleading<br />

キーワー ド<br />

adjustmethod<br />

advancedlinebreak<br />

avoidemptybegin<br />

hortabmethod<br />

とりうる 値 ・ 解 説<br />

(キーワー ド ) minspacing ・ maxspacing オプシ ョ ンで 指 定 された 制 限 内 で 単 語 間 隔 を 詰 めた り 拡 げ<br />

た り し て も テキス ト の 一 部 が 行 内 に 収 ま ら ない 時 、 行 の 調 整 に 用 いる 方 式 (デフ ォル ト : auto) :<br />

auto 次 の 方 式 を 順 に 適 用 : shrink ・ spread ・ nofit ・ split。<br />

clip<br />

nofit<br />

shrink<br />

split<br />

spread<br />

はめ 込 み 枠 の 右 端 (rightindent オプシ ョ ン を 考 慮 ) からはみ 出 し た 部 分 を 切 り 落 と す<br />

点 を 除 いて、 nofit と 同 じ。<br />

最 後 の 単 語 を 次 行 へ 送 り ます。 ただ し、 残 される ( 短 い) 行 が、 nofitlimit オプシ ョ<br />

ンで 指 定 されたパーセン ト 値 よ り も 短 く な ら ない 場 合 に 限 り ます。 均 等 配 置 の 段 落 で<br />

あっても、 若 干 がたついて 見 えることがあります。<br />

単 語 が 行 内 に 収 ま ら ない と き、 テキス ト を shrinklimit の 制 限 内 で 圧 縮 し ます。 それで<br />

も 収 まらなければ nofit 方 式 を 適 用 し ます。<br />

最 後 の 単 語 を 次 行 へ 送 らず、 強 制 的 にハイ フ ネーシ ョ ン し ます。 テキス ト フ ォ ン ト な ら<br />

ハイフンキャラクタを 挿 入 しますが、 記 号 フォン ト なら 挿 入 しません。<br />

最 後 の 単 語 を 次 行 へ 送 り 、 残 された ( 短 い) 行 を 均 等 配 置 する よ う 単 語 内 の 文 字 間 の 間<br />

隔 を spreadlimit の 制 限 内 で 拡 げます。 それで 均 等 配 置 で き なければ nofit 方 式 を 適 用<br />

します。<br />

( 論 理 値 ) 複 雑 用 字 系 で 必 要 と される 高 度 な 改 行 アルゴ リ ズムを 適 用 し ます。 これはタ イ 語 等 、 単<br />

語 間 の 区 切 り を 空 白 キャ ラ ク タ を 用 いて 示 さ ない 用 字 系 での 改 行 に 必 須 です。 locale ・ script オ<br />

プショ ンに 従 います。 デフォルト : false<br />

(キーワー ド ) 段 落 内 の 行 の 書 式 を 指 定 。 デフ ォル ト : left。<br />

left 左 揃 え (leftindent を 始 点 と して)。<br />

center 中 央 揃 え (leftindent から rightindent までの 間 で)。<br />

right 右 揃 え (rightindent を 終 点 と して)。<br />

justify 両 端 揃 え。<br />

( 論 理 値 ) true な ら、 はめ 込 み 枠 先 頭 の 空 行 が 削 除 されます。 デフ ォル ト : false<br />

( 論 理 値 ) true な ら、 各 行 内 で 最 初 に 見 つかっ た 行 送 り 値 を 用 います。 そ う でないな ら、 行 内 のす<br />

べての 行 送 り 値 の う ちの 最 大 値 を 用 います。 デフ ォル ト : false<br />

(キーワー ド ) テキス ト 内 の 水 平 タ ブの 扱 い。 算 出 位 置 がカ レ ン ト テキス ト 位 置 よ り 左 のと きは、<br />

そのタ ブは 無 視 されます (デフ ォル ト : relative) :<br />

relative hortabsize で 指 定 された 分 、 位 置 を 進 めます。<br />

typewriter hortabsize の 次 の 倍 数 まで 位 置 を 進 めます。<br />

ruler ruler オプシ ョ ン 内 の n 番 目 のタ ブ 値 まで 位 置 を 進 めます。 こ こ で n は、 その 行 内 でそ<br />

れまでに 見 つかっ た タ ブの 数 です。 n がタ ブ 位 置 の 数 を 超 える 分 については、 relative<br />

方 式 を 適 用 し ます。<br />

346 第 <strong>12</strong> 章 : <strong>PPS</strong> と <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong>


表 <strong>12</strong>.9 テキス ト 組 版 プロパテ ィ 一 覧 ( 主 にテキス ト フローブロ ッ クに 適 用 )<br />

キーワー ド<br />

とりうる 値 ・ 解 説<br />

hortabsize (float またはパーセン ト 値 ) 水 平 タ ブの 幅 1 。 その 解 釈 は hortabmethod オプシ ョ ンに 依 存 します。<br />

デフ ォル ト : 7.5%<br />

lastalignment<br />

leading<br />

locale<br />

(キーワー ド ) 段 落 内 の 最 終 行 の 書 式 。 alignment オプシ ョ ンのすべてのキーワード を 用 いること<br />

がで き るほか、 以 下 のキーワー ド も 用 いる こ とがで き ます (デフ ォル ト : auto) :<br />

auto<br />

alignment オプシ ョ ンの 値 を 用 います。 ただしそれが justify のときは left を 用 いま<br />

す。<br />

(float またはパーセン ト 値 ) テキス ト のベース ラ イ ン 間 の 間 隔 。 ユーザー 座 標 で、 または 文 字 サイ<br />

ズに 対 するパーセン ト 値 で 指 定 し ます。 デフ ォル ト : 100%<br />

(キーワー ド) advancedlinebreak=true のと き、 用 字 系 特 有 の 改 行 方 式 で 用 い られる ロケール。<br />

キーワー ド は、 以 下 の 構 成 要 素 ( 複 数 可 ) から 成 り 、 オプシ ョ ナルな 構 成 要 素 は 下 線 キャ ラ ク タ<br />

「_」 で 区 切 られます (その 文 法 は、 NLS/POSIX のロケール ID とは 若 干 異 な っ ています) :<br />

> ( 必 須 ) ISO 639-2 に 従 っ た、 小 文 字 2 文 字 または 3 文 字 の 言 語 コー ド (www.loc.gov/standards/<br />

iso639-2 参 照 )。 例 : en ( 英 語 ) ・ de ( ド イ ツ 語 ) ・ ja ( 日 本 語 )。 これは language オプシ ョ ンと<br />

は 異 な っ ています。<br />

> (オプシ ョ ン) ISO 15924 に 従 っ た、 4 文 字 の 用 字 系 コー ド (www.unicode.org/iso15924/iso15924-<br />

codes.html 参 照 )。 例 : Hira (ひらがな) ・ Hebr (ヘブ ラ イ 文 字 ) ・ Arab (ア ラ ビア 文 字 ) ・ Thai<br />

(タイ 文 字 )。<br />

> (オプシ ョ ン) ISO 3166 に 従 っ た、 大 文 字 2 文 字 の 国 コー ド (www.iso.org/iso/country_codes/iso_<br />

3166_code_lists 参 照 )。 例 : DE (ドイツ)・CH (スイス) ・ GB (イギリス)。<br />

ロケールを 指 定 する こ とは、 高 度 な 改 行 のために 必 須 ではあ り ません。 キーワー ド _none は、 ロ<br />

ケール 独 自 の 処 理 が 行 われない こ と を 指 定 し ます。 デフ ォル ト : _none。<br />

例 :de_DE ・ en_US ・ en_GB<br />

maxspacing<br />

minspacing<br />

minlinecount<br />

nofitlimit<br />

parindent<br />

rightindent<br />

leftindent<br />

ruler 2<br />

shrinklimit<br />

spreadlimit<br />

(float またはパーセン ト 値 ) 単 語 間 の 最 大 間 隔 ・ 最 小 間 隔 (ユーザー 座 標 で 表 すか、 空 白 キャ ラ ク<br />

タの 幅 に 対 するパーセン ト 値 で 指 定 )。 算 出 される 単 語 間 隔 が、 与 え られた 値 までに 制 限 されます<br />

(ただし、 wordspacing オプシ ョ ンはなお 加 算 されます)。 デフォルト : minspacing=50%、<br />

maxspacing=500%<br />

( 整 数 ) はめ 込 み 枠 の 最 終 段 落 の 最 小 行 数 。 これよ り 行 が 少 ない と きは、 次 のはめ 込 み 枠 内 に 配 置<br />

されます。 値 2 を 用 いる と、 段 落 の 中 の 1 行 だけがはめ 込 み 枠 末 尾 に 配 置 される (「オーフ ァ ン」)<br />

のを 避 けられます。 デフォルト : 1<br />

(float またはパーセン ト 値 ) nofit 方 式 における 行 の 長 さの 下 限 (ユーザー 座 標 で 表 すか、 はめ 込<br />

み 枠 の 幅 に 対 するパーセン ト 値 で 指 定 )。 デフ ォル ト : 75%<br />

(float またはパーセン ト 値 ) 段 落 の 先 頭 行 の 左 イ ンデン ト 1 。 leftindent に この 値 が 加 算 されま<br />

す。 このオプシ ョ ンを 行 内 で 指 定 する と、 タ ブのよ う に 動 作 し ます。 デフ ォル ト : 0<br />

(float またはパーセン ト 値 ) 全 テキス ト 行 の 右 イ ンデン ト ・ 左 イ ンデン ト 1 。 leftindent が 行 内 で<br />

指 定 された 場 合 、 決 定 された 位 置 がカ レ ン ト テキス ト 位 置 よ り 左 のと きは、 このオプシ ョ ンはカ<br />

レ ン ト 行 については 無 視 されます。 デフ ォル ト : 0<br />

(float の リ ス ト 、 またはパーセン ト 値 の リ ス ト ) hortabmethod=ruler に 対 する 絶 対 タ ブ 位 置 の リ ス<br />

ト 1 。 この リ ス ト は、 非 負 値 を 昇 順 で 最 大 32 個 持 てます。 デフ ォル ト : hortabsize の 整 数 倍<br />

(パーセン ト 値 ) shrink 方 式 における テキス ト 長 体 の 下 限 。 算 出 される 縮 小 率 が、 与 え られた 値 ま<br />

でに 制 限 されます。 ただ し、 horizscaling オプシ ョ ンの 値 が 乗 算 されます。 デフ ォル ト : 85%<br />

(float またはパーセン ト 値 ) spread 方 式 における 2 文 字 間 の 間 隔 の 上 限 (ユーザー 座 標 で 表 すか、<br />

文 字 サイズに 対 するパーセン ト 値 で 指 定 )。 算 出 された 文 字 間 隔 が、 charspacing オプシ ョ ンの 値<br />

に 加 算 されます。 デフ ォル ト : 0<br />

<strong>12</strong>.6 ブロックのプロパティ 347


表 <strong>12</strong>.9 テキス ト 組 版 プ ロパテ ィ 一 覧 ( 主 にテキス ト フ ローブ ロ ッ ク に 適 用 )<br />

キーワー ド<br />

stamp<br />

tabalignchar<br />

tabalignment 2<br />

とりうる 値 ・ 解 説<br />

(キーワード。 テキス ト 行 ・ テキス ト フローブロ ッ ク) このオプシ ョ ンを 使 う と、 ブロ ッ ク 矩 形 内<br />

の 対 角 線 上 にス タ ン プ を 作 成 する こ とがで き ます。 ス タ ン プのテキス ト は 可 能 な 限 り 拡 大 されて<br />

印 字 されます。 ス タ ンプのテキス ト を 枠 内 に 配 置 する 際 には、 position ・ fitmethod ・ orientate<br />

(north ・ south のみ) オプシ ョ ンに 従 います。 デフ ォル ト : none。<br />

ll2ur 左 下 隅 から 右 上 隅 へ 向 か う 対 角 線 上 にス タ ン プが 配 置 されます。<br />

ul2lr 左 上 隅 から 右 下 隅 へ 向 か う 対 角 線 上 にス タ ン プが 配 置 されます。<br />

none ス タ ン プは 作 成 されません。<br />

( 整 数 ) タ ブの 小 数 点 揃 えの 整 列 位 置 に し たいキャ ラ ク タの Unicode 値 。 デフ ォル ト : キャ ラ ク タ<br />

「.」 (U+002E)<br />

(キーワー ド の リ ス ト ) タ ブ 位 置 の 整 列 方 式 。 リ ス ト 内 の 各 項 目 はそれぞれ、 ruler オプシ ョ ン 内<br />

で 対 応 する 項 目 の 整 列 方 式 を 定 義 し ます (デフ ォル ト : left) :<br />

center テキス ト はタ ブ 位 置 で 中 央 揃 え されます。<br />

decimal<br />

left<br />

right<br />

最 初 に 現 れる tabalignchar をタブ 位 置 で 左 揃 えされます。 tabalignchar が 見 つから な<br />

い と きは 右 揃 えが 適 用 されます。<br />

テキス トはタブ 位 置 で 左 揃 えされます。<br />

テキス トはタブ 位 置 で 右 揃 えされます。<br />

1. ユーザー 座 標 で、 またははめ 込 み 枠 の 幅 に 対 するパーセン ト 値 で 指 定 し ます。<br />

2. タ ブ 設 定 は、 ブ ロ ッ ク プロパテ ィ ダ イ ア ログの「テキスト 組 版 」グループの「hortabmethod=ruler におけるルーラタブ」サ<br />

ブグループで 編 集 する こ とができます。<br />

348 第 <strong>12</strong> 章 : <strong>PPS</strong> と <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong>


<strong>12</strong>.6.6 オブジェ ク トはめ 込 みプロパテ ィ 群<br />

はめ 込 みプ ロパテ ィ 群 は、 すべての 種 類 のブ ロ ッ ク で 利 用 で き ますが、 い く つかのプ ロパ<br />

テ ィ は、 特 定 の 種 類 のブ ロ ッ ク でのみ 利 用 で き ます。 こ れらは、 ブ ロ ッ ク 内 に 内 容 が 配 置<br />

される 方 法 を 制 御 します :<br />

> 表 <strong>12</strong>.10 に、 テキ ス ト 行 ・ 画 像 ・ PDF ・ グ ラ フ ィ ッ ク ブ ロ ッ ク で 利 用 で き るはめ 込 みプ<br />

ロパティの 一 覧 を 示 します。<br />

> 表 <strong>12</strong>.11 に、テキ ス ト フ ローブ ロ ッ ク で 利 用 で き るはめ 込 みプ ロパテ ィ の 一 覧 を 示 し ま<br />

す ( 主 に 縦 方 向 のはめ 込 みに 関 する も のです)。<br />

オブジ ェ ク ト はめ 込 みアルゴ リ ズムは、 ブ ロ ッ ク 矩 形 をはめ 込 み 枠 と し て 用 います。<br />

fitmethod=clip の 場 合 を 除 き、 切 り 落 と しは 行 われません。 ブ ロ ッ ク 内 容 がブ ロ ッ ク 矩 形<br />

か らはみ 出 さ ないよ う に し たい と きは、 fitmethod=nofit を 避 けて く ださい。<br />

表 <strong>12</strong>.10 はめ 込 みプ ロパテ ィ 一 覧 (テキス ト 行 ・ 画 像 ・ PDF ・ グ ラ フ ィ ッ ク ブ ロ ッ ク に 適 用 )<br />

キーワー ド<br />

alignchar<br />

dpi<br />

fitmethod<br />

margin<br />

minfontsize<br />

orientate<br />

position<br />

とりうる 値 ・ 解 説<br />

(Unichar またはキーワー ド 。 テキス ト 行 ブ ロ ッ クにのみ 適 用 ) 指 定 されたキャ ラ ク タ を テキス ト<br />

内 に 見 つけた と き、 その 左 下 隅 を、 ブロ ッ ク 矩 形 の 左 下 隅 に 整 列 させます。 横 書 き テキス ト で<br />

orientate=north か south の 場 合 には、 position オプシ ョ ンの 1 番 目 の 値 で 位 置 を 決 定 し ます。<br />

縦 書 き テキス ト で orientate=west か east の 場 合 には、 position オプシ ョ ンの 2 番 目 の 値 で 位 置<br />

を 決 定 し ます。 指 定 された 位 置 整 列 キャ ラ ク タがテキス ト 内 にない と きは、 このオプシ ョ ンは 無<br />

視 されます。 値 0 かキーワード none ならば、 位 置 整 列 キャ ラ ク タ を 無 効 に し ます。 fitmethod は<br />

指 定 されれば 適 用 し ますが、 alignchar で 強 制 的 に 位 置 整 列 されるので、 はめ 込 み 枠 内 にテキス ト<br />

配 置 する こ とはで き ません。 デフ ォル ト : none<br />

(float の リ ス ト 。 画 像 ブロ ッ ク にのみ 適 用 ) 縦 方 向 ・ 横 方 向 の 画 像 解 像 度 を 表 す 1 個 または 2 個 の<br />

値 。 単 位 は pixels per inch。 値 0 の 場 合 、 画 像 内 部 に 解 像 度 が 格 納 されていればそれを 用 い、 なけ<br />

れば 72 dpi と し ます。 fitmethod プロパティが 指 定 されていて、 そのキーワードが auto ・ meet ・<br />

slice ・ entire のいずれかならば、 本 プロパテ ィ は 無 視 されます。 デフ ォル ト : 0<br />

(キーワー ド ) 与 え られた 内 容 がブロ ッ ク 矩 形 に 収 ま り き ら ない と きの 解 決 方 式 。 と り う る 値 は<br />

auto ・ nofit ・ clip ・ meet ・ slice ・ entire。 テキスト 行 ・ 画 像 ・PDF・グラフィックブロックにつ<br />

いては、 このプ ロパテ ィ は 標 準 的 に 解 釈 されます (デフ ォル ト : meet)。 テキス ト フ ローブ ロ ッ ク<br />

については、 ブ ロ ッ クがテキス ト に 対 し て 小 さ すぎる と きは、 以 下 のよ う に 解 釈 されます :<br />

auto テキス ト が 収 まるまで、 fontsize と leading を 縮 めます。<br />

nofit テキス ト を ブロ ッ ク 下 端 からはみ 出 させます。<br />

clip テキス ト をブロ ッ クの 端 で 切 り 落 と します。<br />

(float の リ ス ト 。 テキス ト 行 ブロ ッ ク にのみ 適 用 ) テキス ト 枠 の 縦 ・ 横 方 向 の 長 さ 差 し 引 き を 記 述<br />

する 1 個 または 2 個 の 値 。 デフ ォル ト : 0<br />

(float またはパーセン ト 値 。 テキス ト 行 にのみ 適 用 ) fitmethod=auto で shrinklimit を 超 えたと<br />

き、 テキス ト がブロ ッ ク 矩 形 に 収 まるよ う 縮 小 される 際 に、 許 される 最 小 の 文 字 サイズ。 下 限 値<br />

を、 ユーザー 座 標 で、 またはブロックの 高 さに 対 するパーセント 値 で 指 定 します。 下 限 に 達 した<br />

と きは、 テキス ト は 指 定 された minfontsize を 文 字 サイズ と し て 生 成 されます。 デフ ォル ト : 0.1%<br />

(キーワード) 内 容 を 配 置 する 向 きを 指 定 します。 と り う る 値 は north ・ east ・ south ・ west。 デ<br />

フォルト :north<br />

(float の リ ス ト ) 内 容 の 中 における 参 照 点 の 位 置 を 指 定 する、 1 個 または 2 個 の 値 。 ブロ ッ ク 内 で<br />

のパーセン ト 値 として 位 置 を 指 定 します。 テキスト 行 ブロックのみ : キーワード auto を、 リス ト<br />

の 1 番 目 の 値 と し て 用 いる こ と も で き ます。 これは、 テキス ト の 筆 記 方 向 が 右 書 きの 場 合 (ア ラ<br />

ビア 文 字 ・ ヘブ ラ イ 文 字 等 ) には right を 意 味 し、 そ う でない 場 合 ( 欧 文 等 ) には left を 意 味 し<br />

ます。<br />

デフォルト : {0 0}、 すなわち 左 下 隅<br />

<strong>12</strong>.6 ブロックのプロパティ 349


表 <strong>12</strong>.10 はめ 込 みプ ロパテ ィ 一 覧 (テキス ト 行 ・ 画 像 ・ PDF ・ グ ラ フ ィ ッ ク ブ ロ ッ クに 適 用 )<br />

キーワー ド<br />

rotate<br />

scale<br />

shrinklimit<br />

とりうる 値 ・ 解 説<br />

(float) 回 転 角 を 度 単 位 で 表 し た もの。 処 理 が 始 まる 前 にブ ロ ッ クが 反 時 計 回 り に 回 転 されます。<br />

参 照 点 が 回 転 の 中 心 と な り ます。 デフ ォル ト : 0<br />

(float の リ ス ト ) 縦 方 向 ・ 横 方 向 の 拡 縮 倍 率 を 表 す 1 個 または 2 個 の 値 。 fitmethod プロパティが<br />

指 定 されていて、 かつそのキーワー ドが auto ・ meet ・ slice ・ entire のいずれかならば、 本 プロ<br />

パテ ィ は 無 視 されます。 デフ ォル ト : 1<br />

(float またはパーセン ト 値 。 テキス ト 行 ブロ ッ クにのみ 適 用 ) fitmethod=auto でテキスト を 収 める<br />

際 に 適 用 される 縮 小 倍 率 の 下 限 。 デフ ォル ト : 0.75<br />

表 <strong>12</strong>.11 はめ 込 みプ ロパテ ィ 一 覧 (テキス ト フ ローブ ロ ッ ク に 適 用 )<br />

キーワー ド<br />

firstlinedist<br />

とりうる 値 ・ 解 説<br />

(float ・ パーセン ト 値 ・ キーワー ド のいずれか) ブ ロ ッ ク 矩 形 上 端 と テキス ト 先 頭 行 ベース ラ イ ン<br />

との 間 隔 を、 ユーザー 座 標 で 表 すか、 そ この 文 字 サイズ (fixedleading=true な ら 行 の 先 頭 の 文 字<br />

サイズ、 そ う でないな ら 行 内 のすべての 文 字 サイズの う ちの 最 大 値 ) に 対 するパーセン ト 値 で 表<br />

すか、 キーワー ド で 表 したもの (デフ ォル ト : leading)。<br />

leading<br />

先 頭 行 について 決 定 された 行 送 り 値 。 ヒのよ う な、 読 み 分 け 記 号 つきの 文 字 は 普 通 、 は<br />

め 込 み 枠 上 端 に 接 するで し ょ う 。<br />

ascender 先 頭 行 について 決 定 されたアセンダ 値 。 d や h のよ う な、 大 き なアセンダを 持 つ 文 字 は<br />

普 通 、 はめ 込 み 枠 上 端 に 接 するで し ょ う 。<br />

capheight 先 頭 行 について 決 定 されたキャ ッ プハイ ト 値 。 H のよ う な 大 文 字 は 普 通 、 はめ 込 み 枠 上<br />

端 に 接 するで し ょ う。<br />

xheight 先 頭 行 について 決 定 された x ハイ ト 値 。 x のよ う な 小 文 字 は 普 通 、 はめ 込 み 枠 上 端 に 接<br />

するでし ょ う。<br />

fixedleading=false なら、 先 頭 行 内 で 見 出 されたすべての leading ・ ascender ・ xheight ・<br />

capheight 値 の う ちの 最 大 値 が 用 いられます。<br />

fitmethod (キーワー ド ) 与 え られた 内 容 が 枠 に 収 ま り き ら ない と きの 解 決 方 式 。 と り う る 値 は auto ・<br />

nofit ・ clip。 デフォルト:auto。 テキス ト フ ローブ ロ ッ クの 場 合 、 ブロ ッ クがテキス ト に 対 し て<br />

小 さすぎるときは、 以 下 のように 解 釈 されます :<br />

auto テキス ト が 収 まるまで、 fontsize と leading を 縮 めます。<br />

nofit テキス ト を ブ ロ ッ ク 下 端 からはみ 出 させます。<br />

clip テキス ト をブロ ッ クの 端 で 切 り 落 と します。<br />

lastlinedist<br />

linespreadlimit<br />

(float ・ パーセン ト 値 ・ キーワー ド のいずれか。 fitmethod=nofit のと きは 無 視 されます) テキス<br />

ト 最 終 行 ベース ラ イ ン とはめ 込 み 枠 下 端 との 間 隔 を、 ユーザー 座 標 で 表 すか、 文 字 サイズ<br />

(fixedleading=true な ら 行 の 先 頭 の 文 字 サイズ、 そ う でないな ら 行 内 のすべての 文 字 サイズの う<br />

ちの 最 大 値 ) に 対 するパーセント 値 で 表 すか、キーワードで 表 したもの。デフォルト:0、すなわ<br />

ちはめ 込 み 枠 下 端 をベース ラ イ ン と し て 用 い、 デ ィ センダは 普 通 、 はめ 込 み 枠 の 下 へはみ 出 すで<br />

しょう。<br />

descender 最 終 行 について 決 定 されたデ ィ センダ 値 。 g や j のよ う な、 デ ィ センダを 持 つ 文 字 は 普<br />

通 、 はめ 込 み 枠 下 端 に 接 するで し ょ う 。<br />

fixedleading=false な ら、 最 終 行 内 で 見 出 されたすべてのデ ィ センダ 値 の う ちの 最 大 値 が 用 い ら<br />

れます。<br />

(float またはパーセン ト 値 。 verticalalign=justify の 場 合 のみ) 上 下 合 わせの 場 合 に 行 送 り を 増<br />

やす 際 の 最 大 値 を、 ユーザー 座 標 で 表 すか、 行 送 り に 対 するパーセン ト 値 で 表 し た もの。 デフ ォ<br />

ル ト : 200%<br />

350 第 <strong>12</strong> 章 : <strong>PPS</strong> と <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong>


表 <strong>12</strong>.11 はめ 込 みプ ロパテ ィ 一 覧 (テキス ト フ ローブ ロ ッ ク に 適 用 )<br />

キーワー ド<br />

maxlines<br />

minfontsize<br />

orientate<br />

rotate<br />

とりうる 値 ・ 解 説<br />

( 整 数 またはキーワー ド ) はめ 込 み 枠 内 の 最 大 行 数 。 あるいはキーワー ド auto を 指 定 して、 でき<br />

るだけ 多 く の 行 をはめ 込 み 枠 内 に 入 れさせる こ と も で き ます。 最 大 行 数 が 入 っ た と き、 PDF_fit_<br />

textflow( ) は 文 字 列 _boxfull を 返 します。<br />

(float またはパーセン ト 値 ) 特 に fitmethod=auto のと き、 はめ 込 み 枠 に 収 まる よ う テキス ト が 縮<br />

小 される 際 に 許 される 最 小 文 字 サイズ。 下 限 値 を、 ユーザー 座 標 で、 またははめ 込 み 枠 の 高 さ に<br />

対 するパーセン ト 値 で 指 定 し ます。 下 限 に 達 し て も なおテキス ト が 収 ま り き ら ない と きは、 文 字<br />

列 _boxfull が 返 されます。 デフ ォル ト : 0.1%<br />

(キーワー ド ) テキス ト を 配 置 する 向 き を 指 定 し ます。 と り う る 値 は north ・ east ・ south ・ west。<br />

デフォルト : north<br />

(float) 回 転 角 を 度 単 位 で 表 し た もの。 はめ 込 み 枠 の 左 下 隅 を 中 心 と し て、 座 標 系 を 回 転 させます。<br />

これによって、 枠 とテキス トが 回 転 されます。 テキス トが 配 置 された 時 点 で 回 転 はリセッ ト され<br />

ます。 デフォルト : 0<br />

verticalalign (キーワー ド ) はめ 込 み 枠 内 のテキス ト の 縦 揃 え (デフ ォル ト : top) :<br />

top<br />

center<br />

bottom<br />

justify<br />

先 頭 行 から 下 へ 順 に 組 版 。 テキス ト がはめ 込 み 枠 に 満 たない と きは、 テキス ト の 下 に 余<br />

白 があき ます。<br />

はめ 込 み 枠 内 の 縦 方 向 の 中 央 にテキス ト を 配 置 。 テキス ト がはめ 込 み 枠 に 満 たない と き<br />

は、 テキス ト の 上 下 に 余 白 があき ます。<br />

最 終 行 から 上 へ 順 に 組 版 。 テキス ト がはめ 込 み 枠 に 満 たない と きは、 テキス ト の 上 に 余<br />

白 があき ます。<br />

はめ 込 み 枠 の 上 端 と 下 端 にテキス ト を 合 わせます。 それを 実 現 するために、 行 送 り を 増<br />

やします。 ただし、 linespreadlimit で 指 定 された 限 界 まで しか 増 やし ません。 先 頭 行<br />

の 高 さは、 firstlinedist=leading の 場 合 のみ 増 やし ます。<br />

<strong>12</strong>.6 ブロックのプロパティ 351


<strong>12</strong>.6.7 デフォルト 内 容 に 関 するプロパティ 群<br />

デフ ォル ト 内 容 に 関 するプロパテ ィ 群 は、 内 容 が 特 に 与 え られなかった と きのブロ ッ クへ<br />

の 流 し 込 みの 方 法 を 指 定 し ます。 こ れ ら は と り わけプレ ビ ュー 機 能 で 有 用 です。 なぜな ら<br />

プレ ビ ューではブ ロ ッ ク にへそのデフ ォル ト 内 容 を 流 し 込 むか ら です。 表 <strong>12</strong>.<strong>12</strong> に、 デ<br />

フ ォル ト 内 容 に 関 する プ ロパテ ィ の 一 覧 を 示 し ます。<br />

表 <strong>12</strong>.<strong>12</strong> デフ ォル ト 内 容 に 関 する プロパテ ィ 一 覧<br />

defaultimage<br />

defaultpdf<br />

キーワー ド<br />

defaultgraphics<br />

defaultpdfpage<br />

defaulttext<br />

とりうる 値 ・ 解 説<br />

( 文 字 列 。 グ ラ フ ィ ッ ク ブ ロ ッ ク にのみ 適 用 ) グ ラ フ ィ ッ クがク ラ イ アン ト アプ リ ケーシ ョ ンから<br />

与 えられなかったと きに 用 いられるグラ フ ィ ッ ク フ ァ イルのパス 名 。 1<br />

( 文 字 列 。 画 像 ブ ロ ッ ク にのみ 適 用 ) 置 き 換 え 画 像 がク ラ イ アン ト アプ リ ケーシ ョ ンから 与 え られ<br />

なかっ た と きに 用 い られる 画 像 のパス 名 。 1<br />

( 文 字 列 。 PDF ブ ロ ッ ク にのみ 適 用 ) 置 き 換 え PDF がク ラ イ アン ト アプ リ ケーシ ョ ンから 与 え られ<br />

なかったと きに 用 いられる PDF 文 書 のパス 名 。 1<br />

( 整 数 。 PDF ブ ロ ッ ク にのみ 適 用 ) デフ ォル ト PDF 文 書 内 のページのページ 番 号 。 デフ ォル ト : 1<br />

( 文 字 列 。 テキス ト 行 ・ テキス ト フ ローブ ロ ッ ク にのみ 適 用 ) 可 変 テキス ト がク ラ イ アン ト アプ リ<br />

ケーシ ョ ンから 与 えられなかったと きに 用 いられるテキス ト 2<br />

1. フ ァ イル 名 には 絶 対 パスを 付 けず、 SearchPath 機 能 を 利 用 する よ う 、 <strong>PPS</strong> ク ラ イ アン ト アプ リ ケーシ ョ ン を 作 っ てお く ほ<br />

う がよいで し ょ う 。 そ う すればブ ロ ッ ク 処 理 を、 プ ラ ッ ト フ ォームやフ ァ イルシステムの 細 かい 違 いから 切 り 離 すこ とができ<br />

ます。<br />

2. テキス ト は winansi エ ン コーデ ィ ングか Unicode で 解 釈 されます。<br />

<strong>12</strong>.6.8 カスタムプロパティ<br />

カ ス タ ムプ ロパテ ィ は、 すべての 種 類 のブ ロ ッ ク に 適 用 さ れます。 <strong>PPS</strong> と プレ ビ ュー 機 能<br />

か ら は 無 視 さ れます。 表 <strong>12</strong>.13 に、 カ ス タ ムプ ロパテ ィ の 命 名 規 則 を 示 し ます。<br />

表 <strong>12</strong>.13 カ ス タ ムブ ロ ッ ク プロパテ ィ (すべての 種 類 のブ ロ ッ ク に 適 用 )<br />

キーワー ド<br />

3 種 類 のキャラクタ[ ] /<br />

を 含 まないあらゆる 名 前<br />

とりうる 値 ・ 解 説<br />

( 文 字 列 ・ 名 前 ・floatのいずれか、 またはfloatのリスト) 各 カスタムプロパティの<br />

値 を ど う 解 釈 するかは、 全 く ク ラ イ アン ト アプ リ ケーシ ョ ンの 領 分 です。 <strong>PPS</strong> から<br />

は 無 視 されます。<br />

352 第 <strong>12</strong> 章 : <strong>PPS</strong> と <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong>


<strong>12</strong>.7 pCOS でブロッ ク 名 とプロパティ を 取 得<br />

<strong>PPS</strong> に よ る 自 動 ブ ロ ッ ク 処 理 に 加 えて、 内 蔵 の pCOS 機 能 を 使 う と 、 ブ ロ ッ ク 名 を 評 価 し<br />

た り 、 標 準 ・ カ ス タ ムプ ロパテ ィ を 取 得 し た り する こ と がで き ます。<br />

クックブック 取 り 込 んだPDFの 中 に 含 まれている ブロ ッ クのプロパテ ィ を 取 得 するための 完 全 な コー ド<br />

サンプルがク ッ クブッ クの blocks/query_block_properties トピックにあります。<br />

ブロ ッ クの 数 と 名 前 の 取 得 クライアントコード 側 では、 取 り 込 んだページ 上 のブロッ<br />

ク の 名 前 も 数 も 知 ら な く てかまいません。 なぜな ら 取 得 する こ と も で き る か ら です。 下 記<br />

のステー ト メ ン ト は、 ページ 番 号 pagenum のページ 上 のブロ ッ ク の 数 を 返 し ます :<br />

blockcount = (int) p.pcos_get_number(doc, "length:pages[" + pagenum + "]/blocks");<br />

下 記 のス テー ト メ ン ト は、 ページ pagenum 上 の blocknum 番 目 のブ ロ ッ ク の 名 前 を 返 し<br />

ます (ブ ロ ッ ク と ページの 番 号 は 0 か ら 始 ま り ます) :<br />

blockname = p.pcos_get_string(doc,<br />

"pages[" + pagenum + "]/blocks[" + blocknum + "]/Name");<br />

返 されたブロック 名 はその 後 、 ブロックのプロパティを 取 得 したり、 ブロックへテキス<br />

ト・ 画 像 ・PDF・グラフィック 内 容 を 流 し 込 んだりするために 利 用 することができます。<br />

指 定 さ れたブ ロ ッ ク が 存 在 し ない と きは、 例 外 が 発 生 し ます。 こ れを 避 け る には、 length<br />

接 頭 辞 を 用 いて、ブロ ッ クの 数 を 知 り、ひいては <strong>Block</strong>s 配 列 の 最 大 添 字 を 知 る こ と がで き<br />

ます ( 配 列 の 添 字 が 0 か ら 始 ま る ため、 ブ ロ ッ ク の 数 は 最 大 可 能 添 字 よ り 1 大 き い こ と に<br />

留 意 し て く だ さ い)。<br />

ブ ロ ッ ク プ ロパテ ィ を 特 定 するパス 文 法 において、 以 下 の 表 現 は 等 価 です。 こ こ で、 通<br />

し 番 号 < 番 号 > のブロ ッ クが、その Name プロパティを < ブロック 名 > に 設 定 されている<br />

とします:<br />

pages[...]/blocks[< 番 号 >]<br />

pages[...]/blocks/<br />

ブロ ッ クの 座 標 の 取 得 名 前 foo のブ ロ ッ ク の 左 下 隅 と 右 上 隅 を 記 述 する 2 個 の 座 標 ペア<br />

(llx, lly) および (urx, ury) は、 以 下 の よ う に し て 取 得 で き ます :<br />

llx = p.pcos_get_number(doc, "pages[" + pagenum + "]/blocks/foo/Rect[0]");<br />

lly = p.pcos_get_number(doc, "pages[" + pagenum + "]/blocks/foo/Rect[1]");<br />

urx = p.pcos_get_number(doc, "pages[" + pagenum + "]/blocks/foo/Rect[2]");<br />

ury = p.pcos_get_number(doc, "pages[" + pagenum + "]/blocks/foo/Rect[3]");<br />

上 記 の 座 標 はデフ ォル ト 座 標 系 で 与 え られている こ と に 注 意 し て く ださい ( 左 下 隅 が 原<br />

点 。 ただ し、 そのページの CropBox に よ って 変 更 さ れてい る 可 能 性 も あ り ます)。 こ れに<br />

対 し て <strong>Block</strong> <strong>Plugin</strong> は、 ページ 左 上 隅 に 原 点 を 持 つ Acrobat のユーザーイ ン タ フ ェース 座<br />

標 系 に 従 って 座 標 を 表 示 し ます。 ブ ロ ッ ク の 座 標 に 優 先 させる ための Rect オプシ ョ ンは、<br />

CropBox エン ト リ に よ って 適 用 さ れてい る いかな る 変 更 を も 考 慮 には 入 れないので、 元 の<br />

ブ ロ ッ ク か ら 取 得 さ れた 座 標 は、CropBox が 存 在 する 場 合 には 新 し い 座 標 と し てそのま ま<br />

受 け 渡 す こ と はで き ません。 こ れを 回 避 する には、 refpoint ・ boxsize オプシ ョ ンを 用 いる<br />

ことができます。<br />

また、 topdown オプシ ョ ンはブ ロ ッ ク 座 標 取 得 の 際 には 考 慮 さ れない こ と に も 留 意 し<br />

てください。<br />

<strong>12</strong>.7 pCOS でブロッ ク 名 とプロパテ ィ を 取 得 353


カ ス タ ムプ ロパテ ィ の 取 得 カスタムプロパティは、 下 記 の 例 のよ うに 取 得 することが<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>


<strong>12</strong>.8 ブロックをプログラム 的 に 生 成 ・ 取 り 込 み<br />

<strong>12</strong>.8.1 <strong>PDFlib</strong> ブロックを POCA で 生 成<br />

<strong>PDFlib</strong> ブ ロ ッ ク は、<strong>PPS</strong> に 内 蔵 さ れてい る POCA イ ン タ フ ェースでプ ロ グ ラ ム 的 に 生 成 す<br />

る こ と も 可 能 です。 POCA を 用 い る と 、 ブ ロ ッ ク のために 必 要 な PDF データ 構 造 を 作 成<br />

したうえで、PDF_begin/end_page_ext( ) の blocks オプシ ョ ンに 与 える こ とができ ます。 ブ<br />

ロ ッ ク 定 義 を 作 成 する 際 には、 357 ページ 「<strong>12</strong>.9 <strong>PDFlib</strong> ブ ロ ッ ク の 仕 様 」 の 要 請 に 従 う 必<br />

要 があ り ます。 ブ ロ ッ ク プ ロパテ ィ は、 340 ページ 「<strong>12</strong>.6 ブ ロ ッ ク のプ ロパテ ィ 」 に 挙 げ<br />

たデータ 型 に 従 って 作 成 する 必 要 があ り ます。<br />

クックブック <strong>PDFlib</strong> ブロックを <strong>PPS</strong> で 作 成 するためのコードサンプルが <strong>PDFlib</strong> クックブックのblockhandling-and-pps<br />

カテゴリにあります。<br />

<strong>PDFlib</strong> ブ ロ ッ ク の 仕 様 には、 1 つのブ ロ ッ ク の 名 前 が 2 回 記 録 さ れてい る と い う 残 念 な 冗<br />

長 性 があ り ます。 ページの メ イ ン <strong>Block</strong>s 辞 書 内 に 1 回 と 、 特 定 のブ ロ ッ ク 辞 書 内 の Name<br />

項 目 に も う 1 回 です。 こ の 2 個 の 名 前 は、 そのブ ロ ッ ク に <strong>PPS</strong> で 流 し 込 みを 行 う 際 や、 そ<br />

のブ ロ ッ ク を <strong>Block</strong> <strong>Plugin</strong> でプレ ビ ューする 際 に 問 題 が 起 こ る こ と を 避 け る ために、 同 一<br />

でなければな り ません。 PDF_begin/end_page_ext( ) はそのため、 blocks オプシ ョ ンで 与 え<br />

られた 辞 書 がこの 「 同 一 ブロ ッ ク 名 」 規 則 に 違 反 するブロ ッ ク 定 義 を 含 んでいる 場 合 に<br />

は、 例 外 を 発 生 さ せます。 下 記 のコー ド サンプルでは、 対 応 する 対 を 青 色 で 示 し ています。<br />

下 記 のコー ド 断 片 では、357 ページ「ブ ロ ッ ク 辞 書 のキー」で 示 すブ ロ ッ ク 定 義 を POCA<br />

関 数 群 を 用 いて 作 成 する 様 子 を 演 示 し ています :<br />

/* ブロック 辞 書 を 作 成 */<br />

blockdict = p.poca_new("containertype=dict usage=blocks");<br />

/* ---------------------------------------------------------<br />

* テキストブロックを 作 成<br />

* ---------------------------------------------------------<br />

*/<br />

textblock = p.poca_new("containertype=dict usage=blocks type=name key=Type value=<strong>Block</strong>");<br />

container1 = p.poca_new("containertype=array usage=blocks " +<br />

"type=integer values={70 640 300 700}");<br />

p.poca_insert(textblock, "type=array key=Rect value=" + container1);<br />

p.poca_insert(textblock, "type=name key=Name value=job_title");<br />

p.poca_insert(textblock, "type=name key=Subtype value=Text");<br />

p.poca_insert(textblock, "type=name key=fitmethod value=auto");<br />

p.poca_insert(textblock, "type=name key=fontname value=Helvetica");<br />

p.poca_insert(textblock, "type=float key=fontsize value=<strong>12</strong>");<br />

/* このブロックをページのブロック 辞 書 内 に 挿 入 */<br />

p.poca_insert(blockdict, "type=dict key=job_title direct=false value=" + textblock);<br />

/* ---------------------------------------------------------<br />

* 画 像 ブロックを 作 成<br />

* ---------------------------------------------------------<br />

*/<br />

imageblock = p.poca_new("containertype=dict usage=blocks " +<br />

"type=name key=Type value=<strong>Block</strong>");<br />

container2 = p.poca_new("containertype=array usage=blocks " +<br />

<strong>12</strong>.8 ブロ ッ ク を プ ログ ラム 的 に 生 成 ・ 取 り 込 み 355


"type=integer values={70 440 300 600}");<br />

p.poca_insert(imageblock, "type=array key=Rect value=" + container2);<br />

p.poca_insert(imageblock, "type=name key=Name value=logo");<br />

p.poca_insert(imageblock, "type=name key=Subtype value=Image");<br />

p.poca_insert(imageblock, "type=name key=fitmethod value=auto");<br />

/* このブロックをページのブロック 辞 書 内 に 挿 入 */<br />

p.poca_insert(blockdict, "type=dict key=logo direct=false value=" + imageblock);<br />

/* ---------------------------------------------------------<br />

* PDFブロックを 作 成<br />

* ---------------------------------------------------------<br />

*/<br />

pdfblock = p.poca_new("containertype=dict usage=blocks " +<br />

"type=name key=Type value=<strong>Block</strong>");<br />

container3 = p.poca_new("containertype=array usage=blocks " +<br />

"type=integer values={70 240 300 400}");<br />

p.poca_insert(pdfblock, "type=array key=Rect value=" + container3);<br />

p.poca_insert(pdfblock, "type=name key=Name value=pdflogo");<br />

p.poca_insert(pdfblock, "type=name key=Subtype value=PDF");<br />

p.poca_insert(pdfblock, "type=name key=fitmethod value=meet");<br />

/* このブロックをページのブロック 辞 書 内 に 挿 入 */<br />

p.poca_insert(blockdict, "type=dict key=pdflogo direct=false " + "value=" + pdfblock);<br />

/* ---------------------------------------------------------<br />

* このブロック 辞 書 をカレントページ 内 に 挿 入<br />

* ---------------------------------------------------------<br />

*/<br />

p.end_page_ext("blocks=" + blockdict);<br />

/* クリーンナップ */<br />

p.poca_delete(blockdict, "recursive");<br />

<strong>12</strong>.8.2 <strong>PDFlib</strong> ブロックを 取 り 込 む<br />

入 力 文 書 から1 個 ないし 複 数 の<strong>PDFlib</strong>ブロ ッ ク を、PDF_process_pdi( ) と action=copyallblocks<br />

か action=copyblock で 下 記 の よ う にカ レ ン ト 出 力 ページへ 複 製 する こ と も 可 能 です :<br />

if (p.process_pdi(p, doc, 0, "action=copyallblocks block={pagenumber=1}") != 1)<br />

{<br />

/* エラー */<br />

}<br />

こ の よ う にする と 、マルチレベルのブ ロ ッ ク 流 し 込 みワー ク フ ローを 実 装 する こ と がで き<br />

ます。 ただ し、 各 ページ 上 でブ ロ ッ ク 名 は 一 意 でなければな ら ない こ と に 留 意 し て く だ さ<br />

い。 すなわち、 同 じ 名 前 を 持 つ 複 数 のブ ロ ッ ク を 同 じページ 上 へ 取 り 込 む こ と はで き ませ<br />

ん。 ブ ロ ッ ク を 複 製 時 に 名 称 変 更 する には outputblockname サブオプシ ョ ンを 用 います。<br />

356 第 <strong>12</strong> 章 : <strong>PPS</strong> と <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong>


<strong>12</strong>.9 <strong>PDFlib</strong> ブロ ッ クの 仕 様<br />

ブ ロ ッ ク の 文 法 は、PDF ページを 構 成 するデータ 構 造 にアプ リ ケーシ ョ ンが 独 自 データ を<br />

追 加 格 納 で き る よ う にする 拡 張 の し く みを 定 めた PDF Reference に 準 拠 し ています。 こ こ<br />

では <strong>PDFlib</strong> ブ ロ ッ ク の 文 法 を 説 明 し ます。 <strong>Block</strong> <strong>Plugin</strong> か <strong>PDFlib</strong> でブ ロ ッ ク を 作 成 する<br />

ユーザーにはこの 情 報 は 必 要 ではあ り ません。<br />

<strong>PDFlib</strong> ブロックの PDF オブジェ ク ト 構 造 ページ 辞 書 は PieceInfo 項 目 を 含 んでお り 、 こ<br />

の 項 目 は 値 と し て 別 の 辞 書 を 持 っています。 ページ 辞 書 は、 ブ ロ ッ ク 構 造 の 作 成 ま たは 最<br />

終 更 新 の タ イ ム ス タ ンプを 内 容 と する キー LastModified を も 含 む 必 要 があ り ます。 こ の 辞<br />

書 はキー<strong>PDFlib</strong> を 含 んでおり、このキーはアプ リ ケーシ ョ ンデータ 辞 書 を 値 と して 持 って<br />

います。 こ のアプ リ ケーシ ョ ンデータ 辞 書 は、 表 <strong>12</strong>.14 に 挙 げる 2 個 の 標 準 キーを 含 んで<br />

います。<br />

表 <strong>12</strong>.14 アプ リ ケーシ ョ ンデー タ 辞 書 内 項 目 一 覧<br />

キー 値<br />

LastModified<br />

( 日 付 文 字 列 、 必 須 ) ページ 上 のブロ ッ クが 作 成 された、 または 最 近 更 新 された 日 時 。 この 項 目<br />

は、 POCA イ ン タ フ ェ ースでブ ロ ッ ク を 作 成 し た 場 合 には <strong>PDFlib</strong> が 生 成 し ます。<br />

Private ( 辞 書 、 必 須 ) ブ ロ ッ ク リ ス ト ( 表 <strong>12</strong>.15 参 照 )<br />

ブ ロ ッ ク リ ス ト と は、 ブ ロ ッ ク 処 理 に 関 する 一 般 的 な 情 報 に 加 えて、 ページ 上 のすべての<br />

ブロ ッ ク の 一 覧 を も 含 んだ 辞 書 です。 表 <strong>12</strong>.15 に、 ブロ ッ ク リ ス ト 辞 書 の 中 のキーの 一 覧<br />

を 示 します。<br />

表 <strong>12</strong>.15 ブロ ッ ク リ ス ト 辞 書 内 項 目 一 覧<br />

キー 値<br />

<strong>Block</strong>s<br />

<strong>Block</strong>Producer 1<br />

( 辞 書 、 必 須 ) キーはそれぞれ、 ブロ ッ ク 名 の 名 前 オブジ ェ ク ト 。 対 応 する 値 はそれぞれ、 そのブ<br />

ロ ッ クに 対 する ブロ ッ ク 辞 書 です ( 表 <strong>12</strong>.17 参 照 )。 ブ ロ ッ ク 辞 書 内 の Name キーは、 この 辞 書 内 の<br />

ブロック 名 と 同 じでなければなりません。<br />

( 文 字 列 ) ブ ロ ッ ク を プ ログ ラム 的 に 作 成 するのに 用 いられた ソ フ ト ウ ェ アの 名 前 。 この 項 目 は、<br />

POCA イ ン タ フ ェ ースでブロ ッ ク を 作 成 し た 際 に <strong>PDFlib</strong> によ っ て 作 成 されます。<br />

<strong>Plugin</strong>Version 1 ( 文 字 列 ) ブ ロ ッ クの 作 成 に 使 われた <strong>Block</strong> <strong>Plugin</strong> のバージ ョ ン 識 別 を 表 す 文 字 列 。<br />

pdfmark 1<br />

( 論 理 値 ) ブ ロ ッ ク リ ス ト が pdfmark を 用 いて 生 成 されている 場 合 は true でなければなりません。<br />

Version<br />

( 数 、 必 須 ) フ ァ イルが 準 拠 する ブロ ッ ク 仕 様 のバージ ョ ン 番 号 。 本 文 書 では、 バージ ョ ン 10 の<br />

ブ ロ ッ ク 仕 様 を 解 説 し ています。<br />

1. キー <strong>Block</strong>Producer ・ <strong>Plugin</strong>Version ・ pdfmark の う ちのいずれか 1 つが、 かつ 1 つのみが 存 在 する 必 要 があ り ます。<br />

ブロックプロパティのデータ 型 プロパティはオプショ ン リ ス ト と 同 じデータ 型 に 対 応<br />

しています。ただしハンドルと、アクションリストのような 特 化 されたリストには 対 応 し<br />

ていません。 表 <strong>12</strong>.16 に、 こ れら の 型 と PDF のデータ 型 と の 対 応 づけを 示 し ます。<br />

ブロ ッ ク 辞 書 のキー<br />

ブ ロ ッ ク 辞 書 は、 表 <strong>12</strong>.17 に 挙 げる キーを 含 むこ と がで き ます。<br />

<strong>12</strong>.9 <strong>PDFlib</strong> ブロックの 仕 様 357


表 <strong>12</strong>.16 ブ ロ ッ ク プ ロパテ ィ のデー タ 型 一 覧<br />

データ 型<br />

PDF での 型 および 注 釈<br />

論 理 値 ( 論 理 値 )<br />

文 字 列 ( 文 字 列 )<br />

キーワー ド<br />

( 名 前 )<br />

float ・ 整 数<br />

パーセン ト<br />

値<br />

( 名 前 ) そのプ ロパテ ィ が 対 応 するキーワー ド の リ ス ト にないキーワー ド を 与 える と エ ラー。<br />

( 数 値 ) オプシ ョ ン リ ス ト では 点 も カ ンマ も 小 数 点 と し て 対 応 し ているのに 対 し、 PDF の 数 値 では<br />

点 を 必 要 と します。<br />

( 要 素 2 個 の 配 列 ) 配 列 の 1 番 目 の 要 素 は 数 、 2 番 目 の 要 素 はパーセン ト キャ ラ ク タ を 持 っ た 文 字<br />

列 。<br />

リスト ( 配 列 )<br />

色<br />

unichar<br />

( 要 素 2 個 か 3 個 の 配 列 ) 配 列 の 1 番 目 の 要 素 は 色 空 間 を 指 定 し、 2 番 目 の 要 素 は 色 値 を 指 定 。 色<br />

な し を 指 定 するには、 各 プ ロパテ ィ を 省 略 する 必 要 があ り ます。 配 列 の 1 番 目 の 要 素 に 対 し ては<br />

以 下 の 項 目 が 指 定 で き ます :<br />

/DeviceGray<br />

2 番 目 の 要 素 はグレー 値 1 個 。<br />

/DeviceRGB<br />

2 番 目 の 要 素 は RGB 値 3 個 の 配 列 。<br />

/DeviceCMYK<br />

2 番 目 の 要 素 は CMYK 値 4 個 の 配 列 。<br />

[/Separation/ スポッ ト カラー 名 ]<br />

1 番 目 の 要 素 は、 キーワー ド Separation と スポ ッ ト カ ラー 名 1 個 を 持 っ た 配 列 。 2 番 目<br />

の 要 素 は 濃 度 値 。<br />

オプシ ョ ン と し て 3 番 目 の 要 素 で、 スポ ッ ト カ ラーの 代 替 色 を 指 定 し ます。 代 替 色 はそ<br />

れ 自 体 が 1 個 の 色 配 列 であ り 、 DeviceGray ・ DeviceRGB ・ DeviceCMYK ・ Lab のいずれか<br />

の 色 空 間 で 表 されます。 代 替 色 を 指 定 し ない と きは、 スポ ッ ト カ ラー 名 は、 <strong>PPS</strong> が 内 部<br />

的 に 知 っ ている 色 か、 またはアプ リ ケーシ ョ ンで 動 作 時 に 定 義 し ておいた 色 でなければ<br />

なりません。<br />

[/Lab] 1 番 目 の 要 素 はキーワー ド Lab を 持 っ た 配 列 。 2 番 目 の 要 素 は Lab 値 3 個 の 配 列 。<br />

(テキス ト 文 字 列 ) UTF-16 BOM U+FEFF で 始 まる utf16be 形 式 の Unicode 文 字 列<br />

表 <strong>12</strong>.17 ブ ロ ッ ク 辞 書 内 項 目 一 覧<br />

プロパティグループ<br />

管 理 プロパテ ィ 群<br />

矩 形 プロパテ ィ 群<br />

書 式 プロパテ ィ 群<br />

テキス ト 作 成 プロパテ ィ 群<br />

テキス ト 組 版 プロパテ ィ 群<br />

オブジェ ク トはめ 込 みプロ<br />

パテ ィ 群<br />

値<br />

(い く つかのキーは 必 須 ) 表 <strong>12</strong>.4 に 従 っ た 管 理 プ ロパテ ィ 群<br />

(い く つかのキーは 必 須 ) 表 <strong>12</strong>.5 に 従 っ た 矩 形 プ ロパテ ィ 群<br />

(い く つかのキーは 必 須 ) 表 <strong>12</strong>.6 に 従 っ た、 すべての 種 類 のブ ロ ッ ク に 適 用 される<br />

書 式 プロパティ 群 と、 表 <strong>12</strong>.7に 従 った、 テキスト 行 ・テキストフローブロックに 適<br />

用 されるテキスト 書 式 プロパティ 群<br />

(オプシ ョ ン) 表 <strong>12</strong>.8 に 従 った、 テキス ト 行 ・ テキス ト フローブロ ッ クに 適 用 され<br />

るテキスト 作 成 プロパティ 群<br />

(オプシ ョ ン) 表 <strong>12</strong>.9 に 従 った、 テキス ト 行 ・ テキス ト フローブロ ッ クに 適 用 され<br />

るテキスト 組 版 プロパティ 群<br />

(オプシ ョ ン) 表 <strong>12</strong>.10 に 従 っ た、 テキス ト 行 ・ 画 像 ・ PDF ・ グ ラ フ ィ ッ ク ブ ロ ッ ク<br />

に 適 用 されるオブジ ェ ク ト はめ 込 みプ ロパテ ィ 群 と、 表 <strong>12</strong>.11 に 従 っ た、 テキス ト<br />

フ ローブ ロ ッ ク に 適 用 されるはめ 込 みプロパテ ィ 群<br />

358 第 <strong>12</strong> 章 : <strong>PPS</strong> と <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong>


表 <strong>12</strong>.17 ブロ ッ ク 辞 書 内 項 目 一 覧<br />

プロパティグループ<br />

デフォルト 内 容 に 関 するプ<br />

ロパテ ィ 群<br />

カスタム<br />

値<br />

(オプシ ョ ン) 表 <strong>12</strong>.<strong>12</strong> に 従 った、 デフ ォル ト 内 容 に 関 するプロパテ ィ 群<br />

( 辞 書 、 オプシ ョ ン) 表 <strong>12</strong>.13 に 従 っ た、 カ ス タ ムプ ロパテ ィ に 対 するキー ・ 値 の 対<br />

を 含 んだ 辞 書<br />

作 成 例 以 下 に 示 す PDF コー ド は、 job_title というテキストブロックと、 logo という 画<br />

像 ブロ ッ ク の、 2 個 のブロ ッ ク を 扱 っています。 テキス ト ブロ ッ ク には format というカ<br />

スタムプロパティが 含 まれています:<br />

><br />

/Contents <strong>12</strong> 0 R<br />

/Type /Page<br />

/Parent 1 0 R<br />

/MediaBox [ 0 0 595 842 ]<br />

/LastModified (D:20<strong>12</strong>0813200730)<br />

/PieceInfo ><br />

13 0 obj<br />

><br />

/LastModified (D:20<strong>12</strong>0813200730)<br />

>><br />

endobj<br />

14 0 obj<br />

<br />

>><br />

endobj<br />

15 0 obj<br />

><br />

<strong>12</strong>.9 <strong>PDFlib</strong> ブロックの 仕 様 359


360 第 <strong>12</strong> 章 : <strong>PPS</strong> と <strong>PDFlib</strong> <strong>Block</strong> <strong>Plugin</strong>

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!