...

PDFlib APIリファレンス8.0.3

by user

on
Category: Documents
209

views

Report

Comments

Transcript

PDFlib APIリファレンス8.0.3
ABC
PDFlib, PDFlib+PDI, PPS
A library for generating PDF on the fly
Version 8.0.3
API リ フ ァ レ ン ス
COM ・ .NET ・ REALbasic エデ ィ シ ョ ン
Copyright © 1997–2011 PDFlib GmbH and Thomas Merz. All rights reserved.
PDFlib ユーザーは本マニ ュ アルを内部利用のために印刷または電子的に複製する こ と を許諾 さ れます。
PDFlib GmbH
Franziska-Bilek-Weg 9, 80339 München, Germany
www.pdflib.com
電話 +49 • 89 • 452 33 84-0
FAX +49 • 89 • 452 33 84-99
疑問点がおあ り の場合は tech.groups.yahoo.com/group/pdflib にある PDFlib メ ー リ ン グ リ ス ト と アー カ イ ブ
を ご覧 く だ さ い。
ラ イ セ ン ス取得のための連絡先 : [email protected]
商用 PDFlib ラ イ セ ン ス保持者向けサポー ト : [email protected] (ラ イ セ ン ス番号をお知らせ く だ さ い)
この出版物および こ こ に含まれた情報はあ り のま まに供給 さ れる ものであ り 、 通知な く 変更 さ れる こ と が
あ り 、 また、 PDFlib GmbH によ る誓約 と し て解釈 さ れるべき ものではあ り ません。 PDFlib GmbH はいかな
る誤 り や不正確に対 し て も責任や負担を全 く 負 う ものではな く 、 こ の出版物に関するいかな る類の (明示
的 ・ 暗示的または法定に関わ ら ず) 保障を も行 う ものではな く 、 そ し て、 いかな る そ し てすべての売買可
能性の保障 と 、 特定の目的に対する適合性 と 、 サー ド パーテ ィ の権利の侵害 と を明白に否認 し ます。
PDFlib と PDFlib ロ ゴは PDFlib GmbH の登録商標です。 PDFlib ラ イ セ ン ス保持者は PDFlib の名称 と ロ ゴ を彼
らの製品の文書内で用いる権利を与え られます。 ただ し 、 こ れは必須ではあ り ません。
Adobe ・ Acrobat ・ PostScript ・ XMP は Adobe Systems Inc. の商標です。 AIX ・ IBM ・ OS/390 ・ WebSphere ・
iSeries ・ zSeries は International Business Machines Corporation の商標です。 ActiveX ・ Microsoft ・ OpenType ・
Windows は Microsoft Corporation の 商標です。 Apple ・ Macintosh ・ TrueType は Apple Computer, Inc. の 商標
です。 Unicode ・ Unicode ロ ゴは Unicode, Inc. の 商標です。 Unix は The Open Group の 商標です。 Java ・
Solaris は Sun Microsystems, Inc. の 商標です。 HKS は HKS 商標連合= Hostmann-Steinberg ・ K+E Printing
Inks ・ Schmincke の登録商標です。 他の企業の製品 と サービ ス名は他の商標やサービ スマー ク である場合が
あ り ます。
ソ フ ト ウ ェ ア ア プ リ ケーシ ョ ンやユーザー向け文書で表示 さ れる PANTONE® カ ラ ーは PANTONE 定義規格 と
一致 し ない場合があ り ます。 正確な色については最新の PANTONE Color Publication を ご覧 く だ さ い。
PANTONE® およびその他の Pantone, Inc. の商標は Pantone, Inc. に帰属 し ます。 © Pantone, Inc., 2003.
Pantone, Inc. は PDFlib GmbH に対 し て PDFlib ソ フ ト ウ ェ ア と の組み合わせでのみ使用する ための頒布ラ イ
セ ン ス さ れた色デー タ および/または ソ フ ト ウ ェ アの著作権者です。 PANTONE カ ラ ーデー タ および/また
は ソ フ ト ウ ェ アは PDFlib ソ フ ト ウ ェ アの実行の部分 と し て以外に他のデ ィ ス ク上や メ モ リ 内へ複製 し ては
いけません。
PDFlib は以下のサー ド パーテ ィ ソ フ ト ウ ェ アの変更 さ れた部分を含んでいます。
ICClib、 Copyright © 1997-2002 Graeme W. Gill
GIF 画像デ コ ーダ、 Copyright © 1990-1994 David Koblas
PNG 画像参照ラ イ ブ ラ リ (libpng)、 Copyright © 1998-2004 Glenn Randers-Pehrson
Zlib 圧縮ラ イ ブ ラ リ 、 Copyright © 1995-2002 Jean-loup Gailly and Mark Adler
TIFFlib 画像ラ イ ブ ラ リ 、 Copyright © 1988-1997 Sam Leffler、 Copyright © 1991-1997 Silicon Graphics, Inc.
Eric Young の書いた Cryptographic ソ フ ト ウ ェ ア 、 Copyright © 1995-1998 Eric Young ([email protected])
Independent JPEG Group の JPEG ソ フ ト ウ ェ ア、 Copyright © 1991-1998, Thomas G. Lane
Cryptographic ソ フ ト ウ ェ ア、 Copyright © 1998-2002 The OpenSSL Project (www.openssl.org)
Expat XML パーサ、 Copyright © 1998, 1999, 2000 Thai Open Source Software Center Ltd
ICU International Components for Unicode, Copyright © 1995-2009 International Business Machines Corporation
and others
参照 sRGB ICC カ ラ ープ ロ フ ァ イルデー タ , Copyright © 1998 Hewlett-Packard Company
PDFlib は RSA Security, Inc. の MD5 メ ッ セージダ イ ジ ェ ス ト アルゴ リ ズムを含んでいます。
目次
1 オプ シ ョ ン リ ス ト
1.1
7
オプ シ ョ ン リ ス ト の文法 7
1.2 基本型 11
1.3 文字サイ ズ ・ 色 ・ ア ク シ ョ ン 13
1.4 図形型 15
1.5 制限 17
2 一般関数
19
2.1 関数のス コ ープ 19
2.2 パラ メ タ ・ オプ シ ョ ン処理 21
2.3 セ ッ ト ア ッ プ 24
2.4 PDFlib 仮想フ ァ イルシス テム (PVF) 26
2.5 例外処理 28
2.6 ログ記録 30
3 文書 ・ ページ関数
33
3.1 文書関数 33
3.2 PDF 文書を メ モ リ か ら取得 41
3.3 ページ関数 42
3.4 レ イ ヤー 47
4 フ ォ ン ト ・ テキス ト 関数
4.1
53
フ ォ ン ト 処理 53
4.2 Type 3 フ ォ ン ト の定義 65
4.3 エ ン コ ーデ ィ ングの定義 68
4.4 単純テキス ト 出力 69
4.5 Unicode 変換関数 73
5 テキス ト と 表の組版
5.1
75
テキス ト オプ シ ョ ン 75
5.2 テキス ト 行によ る一行テキス ト 80
目次
3
5.3 テキス ト フ ローによ る複数行テキス ト 85
5.4 表の組版 102
6 オブ ジ ェ ク ト のはめ込み と 範囲枠
111
オブ ジ ェ ク ト のはめ込み 111
6.1
6.2 範囲枠 118
7 グ ラ フ ィ ッ ク関数
121
グ ラ フ ィ ッ ク書式パ ラ メ タ ・ オプ シ ョ ン 121
7.1
7.2 グ ラ フ ィ ッ ク状態 124
7.3 座標系の変換 129
7.4 パスの作成 131
7.5 描画 と ク リ ッ ピ ング 135
7.6 パスオブ ジ ェ ク ト 137
8 色関数
141
8.1 色 と 色空間の設定 141
8.2 ICC プ ロ フ ァ イル 145
8.3 パ タ ーン と シ ェ ーデ ィ ング 149
9 画像 ・ テ ン プ レー ト 関数
153
画像 154
9.1
9.2 テ ン プ レー ト 163
9.3 サムネール 166
10 PDF 取 り 込み (PDI) ・ pCOS 関数
文書関数 167
10.1
10.2 ページ関数 170
10.3 その他の PDI 処理 175
10.4 pCOS 関数 176
11 ブ ロ ッ ク 流 し 込み関数 (PPS)
ブ ロ ッ ク流 し 込み関数の矩形オプ シ ョ ン 179
11.1
11.2 テキス ト 行 ・ テキス ト フ ローブ ロ ッ ク 180
4
目次
179
167
11.3 イ メ ージ ブ ロ ッ ク 182
11.4 PDF ブ ロ ッ ク 183
12 イ ン タ ラ ク テ ィ ブ機能
12.1
185
イ ン タ ラ ク テ ィ ブ要素のパ ラ メ タ 185
12.2 ア ク シ ョ ン 185
12.3 名前付き移動先 190
12.4 注釈 192
12.5 フ ォ ーム フ ィ ール ド 201
12.6 し お り 209
12.7 PDF パ ッ ケージ ・ PDF ポー ト フ ォ リ オ 211
13 3D ・ 地理空間機能
215
13.1 3D アー ト ワー ク 215
13.2 地理空間機能 220
14 文書交換
223
14.1 文書情報 フ ィ ール ド 223
14.2 XMP メ タ デー タ 225
14.3 タ グ付き PDF 227
14.4 マー ク付き内容 231
A 全関数一覧
233
B 全パラ メ タ 一覧
235
C 全オプ シ ョ ン ・ キーワー ド 一覧
D 改訂履歴
索引
237
255
257
目次
5
6
目次
1 オプ シ ョ ン リ ス ト
オプシ ョ ン リ ス ト は、 さ ま ざ ま な API 関数呼び出 し を制御する ための強力な、 それでいて
簡単な手段です。 関数に多数の引数を与え る 必要な し に、 多 く の API メ ソ ッ ド で、 オプ
シ ョ ン リ ス ト を用い る こ と がで き ます。 略 し て optlist と も いい ます。 こ れは、 オプシ ョ
ン を何個で も 内容 と し て持つ こ と ので き る 文字列です。 オプシ ョ ン リ ス ト には、 さ ま ざ ま
なデー タ 型や、 リ ス ト な ど の複合デー タ を内容 と し て持たせる こ と がで き ます。 多 く の言
語バ イ ンデ ィ ン グで optlist は簡単に、必要な キー ワー ド と 値を文字列連結 し てい く だけで
作成す る こ と がで き ます。
バインディング .NET 言語バ イ ンデ ィ ン グ : C# プ ロ グ ラ マーは、 StringBuilder の AppendFormat( ) メ ソ ッ ド
では中括弧 { } を用いて書式項目を表現 し 、 それが引数の文字列表現で置換 さ れ る 点に留
意す る 必要があ り ます。 こ れに対 し 、 Append( ) メ ソ ッ ド では中括弧に特別な意味を持た
せ て い ま せ ん。 オ プ シ ョ ン リ ス ト の 文 法 で は 中 括 弧 を 利 用 し て い ま す の で、
AppendFormat( ) メ ソ ッ ド か Append( ) メ ソ ッ ド か を適切に選んで用い る よ う 注意す る 必要
があ り ます。
1.1 オ プ シ ョ ン リ ス ト の文法
オ プ シ ョ ン リ ス ト の文法形式の定義 オプシ ョ ン リ ス ト は、 以下の規則に従っ て作成す
る 必要があ り ます。
> オプシ ョ ン リ ス ト 内のすべての要素 (キー と 値) は、 右記の区切 り キ ャ ラ ク タ の う ち
の 1 個ない し 複数に よ っ て区切 る 必要があ り ます : スペース ・ タ ブ ・ キ ャ リ ッ ジ リ タ ー
ン ・ ニ ュ ー ラ イ ン ・ 等号 「=」。
> 最 も 外側を囲 う 中括弧は要素の内容 と し て扱われません。 文字列 { } は、 空の要素を表
し ます。
> 最 も 外側の中括弧対の内側にあ る 区切 り キ ャ ラ ク タ は、 要素を区切 ら ず、 要素の一部
分 と な り ます。 ですので、 区切 り キ ャ ラ ク タ のあ る 要素は中括弧で囲 う 必要があ り ま
す。
> 要素が中括弧キ ャ ラ ク タ (群) を含む と き は、各キ ャ ラ ク タ の直前にバ ッ ク ス ラ ッ シ ュ
キ ャ ラ ク タ 1 個を付けて保護す る 必要があ り ます。
> 要素が、中括弧キ ャ ラ ク タ の直前にバ ッ ク ス ラ ッ シ ュ キ ャ ラ ク タ を 1 個ない し 複数連続
し て含んでい る と き は、そのキ ャ ラ ク タ 列の中の各バ ッ ク ス ラ ッ シ ュ に も う 1 個のバ ッ
ク ス ラ ッ シ ュ キ ャ ラ ク タ を付けて保護す る 必要があ り ます。
> 要素に、 開閉照応 し ない中括弧があ る と き は、 こ の中括弧は直前にバ ッ ク ス ラ ッ シ ュ
キ ャ ラ ク タ を つけ て保護す る 必要が あ り ま す。 要素の閉 じ 中括弧の直前のバ ッ ク ス
ラ ッ シ ュ に も 、 直前にバ ッ ク ス ラ ッ シ ュ キ ャ ラ ク タ をつけ る 必要があ り ます。
> オプシ ョ ン リ ス ト にバ イ ナ リ ゼ ロ 値を含めてはいけ ません。
オプシ ョ ンは、 こ の PDFlib リ フ ァ レ ン ス での記述に従っ て、 リ ス ト 値を内容 と し て持つ
こ と がで き る 場合があ り ます。 リ ス ト 値は、 1 個ない し 複数の要素を内容 と し て持ち ます
( こ れ ら の要素自体が ま た リ ス ト であ る 場合 も あ り ます)。それ ら は上記の規則に従っ て区
切 ら れますが、 ただ し こ の場合、 等号は区切 り キ ャ ラ ク タ と し て扱われない点だけが異な
り ます。
注 オプ シ ョ ン名 (すなわちキー) がハイ フ ンキ ャ ラ ク タ を含む こ と はあ り ません。 オプ シ ョ
ンの説明の表の中では、オプ シ ョ ン名が長い と き にはハイ フ ン区切 り し て示 し てある場合
1.1 オプ シ ョ ン リ ス ト の文法
7
があ り ますので、 こ の点に注意 し て く だ さ い。 そのハ イ フ ンは、 そのオ プ シ ョ ン を オ プ
シ ョ ン リ ス ト 内で与え る際にはな く す必要があ り ます。
単純な オ プ シ ョ ン リ ス ト 多 く の場合オプシ ョ ン リ ス ト は、 1 個ない し 複数のキー / 値対
を内容 と し て持ち ます。 キー と 値の間、 お よ びキー / 値対ど う し の間は、 1 個ない し 複数
の空白キ ャ ラ ク タ (スペース ・ タ ブ ・ キ ャ リ ッ ジ リ タ ーン ・ ラ イ ン フ ィ ー ド ) で区切 る 必
要があ り ます。 あ る いは、 キー と 値の間は等号 「=」 で区切 る こ と も で き ます :
key=value
key = value
key value
key1 = value1
key2 = value2
可読性を上げ る ために、 キー と 値の間には等号を用い、 隣 り 合 う キー / 値対の間には空白
を用い る こ と を推奨 し ます。
オプシ ョ ン リ ス ト は左か ら 右へ評価 さ れてい き ますので、1 つのオプシ ョ ン を同 じ リ ス
ト の中で複数回与え る こ と も で き ます。 その場合は、 最後に出て き た も のがそれ よ り 前の
も の を上書 き し ま す。 下記の例では、 最初のオプシ ョ ン割 り 当て を次の も のが上書 き し
て、 オプシ ョ ン リ ス ト 処理完了後の key は値 value2 と な り ます :
key=value1 key=value2
リ ス ト 値 リ ス ト は、 1 個ない し 複数の値の間を区切っ た も のを内容 と し て持ち ます。 こ
れ ら の値は、 単純値であ る 場合 も あ り ます し 、 それ自体が さ ら に リ ス ト であ る こ と も 可能
です。 リ ス ト は中括弧 { } で囲まれ、 リ ス ト 内の値の間は空白キ ャ ラ ク タ で区切 る 必要が
あ り ます。 例 :
dasharray={11 22 33}
position={ center bottom }
(数値3個を内容として持つリスト)
(キーワード2個を内容として持つリスト)
リ ス ト は、 内容 と し て リ ス ト を入れ子で持つ こ と も 可能です。 こ の場合 も 、 リ ス ト ど う し
の間は空白で区切 る 必要があ り ます。 隣 り 合 う } キ ャ ラ ク タ と { キ ャ ラ ク タ と の間には区
切 り キ ャ ラ ク タ を入れ る 必要があ り ますが、同 じ 種類の中括弧ど う し の間では省略す る こ
と も で き ます :
polylinelist={{10 20 30 40} {50 60 70 80}}
(リスト2個を内容として持つリスト)
リ ス ト の中に リ ス ト が 1 個だけあ る と き も 、入れ子に さ れた リ ス ト の中括弧は省略 し ては
いけ ません :
polylinelist={{10 20 30 40}}
(入れ子のリスト1個を内容として持つリスト)
入れ子に さ れたオ プ シ ョ ン リ ス ト と リ ス ト 値 オプシ ョ ン のなかには、 オ プ シ ョ ン リ ス
ト 型 ま たはオ プ シ ョ ン リ ス ト の リ ス ト 型の値を持つ こ と がで き る も のが あ り ま す。 オ プ
シ ョ ン リ ス ト 型のオプシ ョ ンは、従属す る 1 個ない し 複数のオプシ ョ ン を内容 と し て持ち
ます。 オプ シ ョ ン リ ス ト の リ ス ト 型のオプシ ョ ンは、 入れ子に さ れた 1 個ない し 複数のオ
プシ ョ ン リ ス ト を内容 と し て持ち ます。オプシ ョ ン リ ス ト を入れ子に し て扱 う 際に重要な
こ と は、 適切な数の中括弧を記述す る こ と です。 以下にい く つかの例を挙げます。
オプシ ョ ン metadata の値がオプシ ョ ン リ ス ト であ り 、 それ自体が 1 個のオプシ ョ ン
filename を内容 と し て持つ :
metadata={filename=info.xmp}
8
第 1 章 : オプ シ ョ ン リ ス ト (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
オプシ ョ ン fill の値がオプシ ョ ン リ ス ト の リ ス ト であ り 、 それがオプシ ョ ン リ ス ト 1 個を
内容 と し て持つ :
fill={{ area=table fillcolor={rgb 1 0 0} }}
オプシ ョ ン fill の値がオプシ ョ ン リ ス ト の リ ス ト であ り 、 それがオプシ ョ ン リ ス ト 2 個を
内容 と し て持つ :
fill={{ area=rowodd fillcolor={rgb 0 1 0} } { area=roweven fillcolor={rgb 1 0 0} }}
リ ス ト がオプシ ョ ン リ ス ト 1 個を内容 と し て持ち、 その値の中に空白があ る :
attachments={{filename={foo bar.xml} }}
リ ス ト が文字列 3 個を内容 と し て持つ :
itemnamelist = {{Isaac Newton} {James Clark Maxwell} {Albert Einstein}
リ ス ト がキーワー ド 2 個を内容 と し て持つ :
position={left bottom}
リ ス ト が複数の型を内容 と し て持つ (float と キーワ ー ド ) :
position={10 bottom}
リ ス ト が矩形 1 個を内容 と し て持つ :
boxes={{10 20 30 40}}
リ ス ト が折れ線 2 個を内容 と し て持ち、 その中にパーセ ン ト 値があ る :
polygons = {{10 20 40 60 90 120}} {12 87 34 98 34% 67% 34% 7%}}
よ く あ る落 と し 穴 オプシ ョ ン リ ス ト の文法について、 よ く あ る 誤 り を以下に挙げます。
中括弧は区切 り キ ャ ラ ク タ ではあ り ませんので、 下記は誤 り です :
key1 {value1}key2 {value2}
誤り!
こ の場合、 エ ラ ー メ ッ セージ 「Unknown option 'value2'」 が発生 し ます。 同様に、 下記 も
区切 り キ ャ ラ ク タ があ り ませんので誤 り です :
key{value}
key={{value1}{value2}}
誤り!
誤り!
中括弧は開閉照応 し てい る 必要があ り ますので、 下記は誤 り です :
key={open brace {}
誤り!
こ の場合、 エ ラ ー メ ッ セージ 「Braces aren't balanced in option list 'key={open brace {}'」 が
発生 し ます。 文字列の中に単独の中括弧があ る と き は、 その直前にバ ッ ク ス ラ ッ シ ュ キ ャ
ラ ク タ を付加す る 必要があ り ます :
key={closing brace \} and open brace \{}
正しい!
1.1 オプ シ ョ ン リ ス ト の文法
9
文字列値の末尾がバ ッ ク ス ラ ッ シ ュ の場合は、 も し その直後が閉 じ 中括弧キ ャ ラ ク タ な ら
ば、 直前に も う 1 個バ ッ ク ス ラ ッ シ ュ をつけ る 必要があ り ます :
filename={C:\path\name\}
filename={C:\path\name\\}
10
誤り!
正しい!
第 1 章 : オプ シ ョ ン リ ス ト (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
1.2 基本型
文字列 文字列はプ レ ー ン な ASCII 文字列で あ り (EBCDIC プ ラ ッ ト フ ォ ー ム 上では
EBCDIC 文字列)、 通常、 ロ ーカ ラ イ ズ対象でないキーワー ド に用い ら れます。 文字列の
中に空白キ ャ ラ ク タ か 「=」 キ ャ ラ ク タ があ る と き は、 { } でか こ む必要があ り ます :
(文字列値の中に空白が3個ある)
(文字列値の中に等号が1個ある)
password={ secret string }
contents={length=3mm}
キ ャ ラ ク タ { か } を文字列に入れたい と き は、 直前にキ ャ ラ ク タ \ を付加す る 必要があ り
ます :
(文字列値の中に右中括弧が1個ある)
password={weird\}string}
要素の閉 じ 中括弧の直前にバ ッ ク ス ラ ッ シ ュ があ る と き は、その直前にバ ッ ク ス ラ ッ シ ュ
キ ャ ラ ク タ をつけ る 必要があ り ます :
(文字列の末尾がバックスラッシュ 1個)
filename={C:\path\name\\}
空文字列は中括弧の対で作成で き ます :
{}
内容文字列 ・ ハ イ パーテ キ ス ト 文字列 ・ 名前文字列 : こ れ ら は各種形式の Unicode 内容を
持つ こ と がで き ます。 パ ラ メ タ escapesequence が設定 さ れていれば、 シ ン グルバ イ ト を
エ ス ケープシーケ ン ス で表現で き ます。 こ れ ら の文字列型 と 、 文字列オプシ ョ ンでのエン
コ ーデ ィ ン グの選択について詳 し く は、 PDFlib チ ュ ー ト リ アルを参照 し て く だ さ い。
Unichar Unichar は 1 個の Unicode 値であ り 、 右記の各種文法が使え ます : 10 進値≧ 10
(例 : 173) 、 16 進値の前に x ・ X ・ 0x ・ 0X ・ U+ のいずれか をつけた も の (xAD ・ 0xAD ・
U+00AD) 、 数値参照 ・ 文字参照 ・ グ リ フ名参照か ら 「&」 ・ 「;」 修飾を除いた も の (shy ・
#xAD ・ #173) 。 あ る いは、 リ テ ラ ルな キ ャ ラ ク タ を与え る こ と も で き ます。 Unichar は、
範囲 0 ~ 65535 (0 ~ 0xFFFF) でなければな り ません。 例 :
replacementchar=?
replacementchar=63
replacementchar=x3F
replacementchar=0x3F
replacementchar=U+003F
replacementchar=euro
replacementchar=.question
replacementchar=.marina
(リテラル)
(10進)
(16進)
(16進)
(Unicode記法)
(HTML文字参照)
(標準のグリフ名参照)
(フォント独自のグリフ名参照)
数字 1 文字は リ テ ラ ルに扱われ、 10 進 Unicode 値 と し ては扱われません :
replacementchar=3
(U+0033 THREE。U+0003ではありません!)
Unicode 範囲 Unicode 範囲は、 連続的な範囲の Unicode キ ャ ラ ク タ 群を、 その範囲の先
頭キ ャ ラ ク タ と 末尾キ ャ ラ ク タ と で指定 し た も のです。 Unicode 範囲の先頭値 と 末尾値 と
は、 空白を入れずに負号 「-」 で区切 る 必要があ り ます。 例 :
forcechars={U+03AC-U+03CE}
1.2 基本型
11
論理値 論理値は値 true か false を持ち ます。論理値オプシ ョ ンの値が省略 さ れた と き は、
値 true であ る と 見な さ れます。 name=false のかわ り に短縮記法 noname を用い る こ と も
で き ます :
embedding
noembedding
(embedding=trueと同等)
(embedding=falseと同等)
キーワー ド キー ワ ー ド 型のオプシ ョ ンは、 固定キー ワ ー ド 群の定義済み リ ス ト か ら 1
つを持つ こ と がで き ます。 例 :
blendmode=overlay
オプシ ョ ンのなかには、 数値かキーワー ド のいずれかの値を持つ も のがあ り ます。
数値 オプシ ョ ン リ ス ト は、 い く つかの数値型に対応 し てい ます。
整数型は、 10 進ま たは 16 進の整数を持つ こ と がで き ます。 x ・ X ・ 0x ・ 0X のいずれかで
始ま る 正の整数は 16 進値を表 し ます :
-12345
0
0xFF
float は、 浮動小数点数ま たは整数を持つ こ と がで き ます。 浮動小数点値の小数点 と し ては
ピ リ オ ド と カ ン マ を用い る こ と がで き ます。 指数記法に も 対応 し てい ます。 以下の値はす
べて同等です :
size
size
size
size
=
=
=
=
-123.45
-123,45
-1.2345E2
-1.2345e+2
パーセ ン ト 値は、 数値の直後に % キ ャ ラ ク タ を 1 個つけた数値です。 オプシ ョ ンに よ っ て
は負のパーセ ン ト 値が許 さ れます :
leading=120%
topoffset=-20.5%
ハ ン ド ル ハン ド ルは、 フ ォ ン ト ・ 画像 ・ ア ク シ ョ ン と いっ た さ ま ざ ま な種類のオブジ ェ
ク ト を特定 し ます。 技術的には こ れ ら は、 API 関数に よ っ て以前に返 さ れた整数値です。
た と えば、 フ ォ ン ト ハン ド ルは load_font( ) に よ っ て返 さ れます。 ハン ド ルはつねに不透
明な値 と し て取 り 扱 う 必要があ り 、アプ リ ケーシ ョ ン側で直接変更 し た り 作成 し た り し て
はいけ ません (API 関数に よ っ て返 さ れたハン ド ルを用い る 必要があ り ます) 。 ハン ド ル
はつねに、 それぞれのオブジ ェ ク ト の種類に対 し て有効でな ければな り ま せん。 た と え
ば、 ど ち ら のハン ド ル も 整数型だか ら と いっ て、 画像ハン ド ルを受け付け る オプシ ョ ンに
フ ォ ン ト ハン ド ルを与え てはいけ ません。
12
第 1 章 : オプ シ ョ ン リ ス ト (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
1.3 文字サ イ ズ ・ 色 ・ ア ク シ ョ ン
文字サ イ ズ 文字サ イ ズは、 い く つかの方式で定義す る こ と がで き 、 それに よ り 、 テ キ ス
ト のサ イ ズ を絶対値で指定 し た り 、 何 ら かの外部の実体に対する 相対値で指定 し た り 、 何
ら かの フ ォ ン ト プ ロ パテ ィ に対す る 相対値で指定 し た り す る こ と がで き ます。 通常、 文字
サ イ ズは 0 以外でなければな り ませんが、ただ し オプシ ョ ンの解説で特記あ る 場合は こ の
限 り ではあ り ません。
多 く の場合、 文字サ イ ズは float 値 1 個を内容 と し て持ち、 こ れはユーザー座標系にお
け る 単位に対す る 比率を表 し ます :
fontsize = 12
ま たは、 パーセ ン ト 値を内容 と し て持つ こ と も で き 、 こ れが何に対す る パーセ ン ト 値であ
る かは コ ン テ キ ス ト に よ っ て異な り ます (例:fit_textline( ) では、はめ込み枠に対す る 幅):
fontsize = 8%
あ る いは文字サ イ ズは、 オプシ ョ ン リ ス ト と し て指定する こ と も で き 、 こ れはキーワー ド
と 数値を内容 と し て持つ必要があ り ます。 こ こ でキーワ ー ド は、 求め る フ ォ ン ト メ ト リ ッ
ク を表 1.1 に従っ て記述 し 、 数値は、 求め る サ イ ズです。 選ばれた テ キ ス ト メ ト リ ッ ク が、
与え ら れた値に一致す る よ う 、 PDFlib が適切な文字サ イ ズ を算出 し ます :
fontsize = {capheight 5}
表 1.1 文字サイズ型のオプ シ ョ ンのサブオプ シ ョ ン一覧
オプ シ ョ ン
説明
ascender
数値は、 アセ ン ダの高 さ と し て解釈 さ れます。
bodyheight
数値は、 ベース ラ イ ンの間隔の最小値 と し て解釈 さ れます。 すなわち、 こ の値を行送 り と し て用
いた と きは、 隣 り 合 う 行のデ ィ セ ン ダ と ア セ ン ダがち ょ う ど く っ つ く 形にな り ます。 こ れは、
キーワー ド が与え られない と きのデ フ ォル ト の動作です。
capheight
数値は、 大文字の高 さ と し て解釈 さ れます。
xheight
数値は、 小文字の高 さ と し て解釈 さ れます。
色 色は、 3 種類の形式で定義す る こ と がで き ます : RGB カ ラ ー名、 16 進 RGB 値、 任意
の色空間の色のための フ レ キ シブルなオプシ ョ ン リ ス ト のいずれかを用い ます。
第一の形式では、 SVG 1.1 のすべての有効な色名を直接与えて、 RGB 色を指定す る こ
と がで き ます。 例 : .
strokecolor=pink
こ の色名は、大文字/小文字を区別 し ます。有効な色名の一覧は、下記の場所で得 ら れます:
www.w3.org/TR/SVG11/types.html#ColorKeywords
第二の形式では、 ハ ッ シ ュ 「#」 キ ャ ラ ク タ の直後に、 3 個の 16 進数対 00 ~ FF の任意の
組み合わせを与え て、 RGB 色値を指定す る こ と がで き ます。 例 :
strokecolor=#FFC0CB
1.3 文字サイ ズ ・ 色 ・ ア ク シ ョ ン
13
第三の形式は、 色空間 と 色値を指定す る 色オプシ ョ ン リ ス ト です。 色オプ シ ョ ン リ ス ト
は、 色空間キー ワー ド 1 個 と 、 その色空間に よ っ て決ま る 個数の float 値の リ ス ト 1 個を
内容 と し て持ち ます。 色空間キー ワー ド は、 setcolor( ) (141 ページ 「8.1 色 と 色空間の設
定」 参照) に対する も の と 同 じ です。 具体的な説明 と 例を表 1.2 に示 し ます。 各関数の説
明で記 し ますが、 オプシ ョ ン リ ス ト に よ っ ては、 上記のキーワー ド の一部分 し か与え ない
も の も あ り ます。
ク ッ ク ブ ッ ク 完全な コ ー ド サン プルが ク ッ ク ブ ッ クの color/starter_color ト ピ ッ ク にあ り ます。
表 1.2 オプ シ ョ ン リ ス ト 内の色デー タ 型のキーワー ド 一覧
キーワー ド
後続する値
例
gray
グ レースケール色空間の float 値 1 個
{ gray 0.5 }
rgb
RGB 色空間の float 値 3 個
{ rgb 1 0 0 }
(キーワー ド
な し)
HTML カ ラ ー名ま たは RGB 色の 16 進値
pink
cmyk
CMYK 色空間の float 値 4 個
{ cmyk 0 1 0 0 }
lab
Lab 色空間の float 値 3 個
{ lab 100 50 30 }
spot
スポ ッ ト カ ラ ーハン ド ル と 、 濃度値を指定する float 1 個
{ spot 1 0.8 }
spotname
(最大 63 バイ ト 。 Unicode キ ャ ラ ク タ 群な ら ばも っ と 少な く 、
形式 ・ エ ン コ ーデ ィ ングに依存) スポ ッ ト カ ラ ー名 と 、 濃度
値を指定する float 1 個
{ spotname {PANTONE 281 U} 0.5 }
spotname
上記の簡単な形の spotname と 同様ですが、 色値を追加する こ
と によ り 、 カ ス タ ムスポ ッ ト カ ラ ー (すなわち PDFlib が内部
的に知 ら ないスポ ッ ト カ ラ ー名) に対する代替色を指定する
こ と がで き ます。 複数のオプ シ ョ ン で同 じ カ ス タ ムスポ ッ ト
カ ラ ー名を定義する と きは、 すべての定義で整合性を と る
(すなわち同 じ 代替色を定義する) 必要があ り ます。
{ spotname {PDFlib Blue} 0.5
{ lab 100 50 30 } }
#FFC0CB
iccbasedgray float 値 1 個
{ iccbasedgray 0.5 }
iccbasedrgb
float 値 3 個
{ iccbasedrgb 1 0 0 }
iccbasedcmyk
float 値 4 個
{ iccbasedgray 0 1 0 0 }
pattern
パ タ ーンハン ド ル
{ pattern 1 }
none
色がない こ と を示 し ます
none
ア ク シ ョ ン リ ス ト ア ク シ ョ ン リ ス ト は、 1 個ない し 複数のア ク シ ョ ン を指定 し ます。 リ
ス ト 内の各項目は、 イ ベン ト キー ワー ド ( ト リ ガ) 1 個 と 、 ア ク シ ョ ンハン ド ル群の リ ス
ト 1 個 と か ら 成 り ます。 こ のア ク シ ョ ンハン ド ルは、 create_action( ) で作成 し てお く 必要
があ り ます。 ア ク シ ョ ンは、 リ ス ト 内に記述 さ れた順に実行 さ れます。 許 さ れ る イ ベン ト
(例 : docopen) と ア ク シ ョ ン の種類 (例 : JavaScript) は、 オプシ ョ ン ご と にそのつど記
し ます。
リ ス ト が、 ト リ ガ 1 個 と ア ク シ ョ ン 3 個を内容 と し て持つ :
action={ activate { 0 1 2 } }
リ ス ト が ト リ ガ 3 個を持ち、 それぞれがア ク シ ョ ン を 1 個ずつ持つ :
action={ keystroke=0 format=1 validate=2 }
14
第 1 章 : オプ シ ョ ン リ ス ト (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
1.4 図形型
線 線は、 float 値 4 個の リ ス ト であ り 、 こ れ ら は、 線分の始点 と 終点の x 座標 と y 座標を
指定 し ます。 こ れ ら の座標を解釈す る ための座標系 (デフ ォ ル ト 座標系ま たはユーザー座
標系) は、 オプシ ョ ンに よ っ て異な り ますので、 個別に示 し ます :
line = {10 40 130 90}
折れ線 折れ線は、 n>2 の偶数 n 個の float 値を内容 と し て持つ リ ス ト です。 リ ス ト 内の
それぞれの対は、 点 1 個の x 座標 と y 座標を指定 し ます。 こ れ ら の点が線分でつながれま
す。 こ れ ら の座標を解釈す る ための座標系 (デフ ォ ル ト 座標系ま たはユーザー座標系) は、
オプシ ョ ンに よ っ て異な り ますので、 個別に示 し ます :
polyline = {10 20 30 40 50 60}
以下のオプシ ョ ン リ ス ト は同等です :
polyline = {10 20 30r 40r 50r 60r}
polyline = {10 20 40 60 90 120}
四辺形は、 特殊な種類の折れ線です。 こ れは矩形が回転 し た も のであ り 、 ち ょ う ど 4 個の
点を指定す る 必要があ り ます。
も う 1 つの特殊な種類は多角形です。 こ れは、 自動的に線分に よ っ て閉 じ ら れ る 折れ
線です。
矩形 矩形は、 float 値 4 個の リ ス ト であ り 、 こ れ ら は、 矩形の左下隅 と 右上隅の x 座標 と
y 座標を指定 し ま す。 こ れ ら の座標を解釈す る ための座標系 (デ フ ォ ル ト 座標系 ま たは
ユーザー座標系) は、 オプシ ョ ンに よ っ て異な り ますので、 個別に示 し ます。 オプシ ョ ン
のなかには、 パーセ ン ト 値を受け付け る も の も あ り 、 こ れが何に対す る パーセ ン ト 値であ
る かは コ ン テ キ ス ト に よ っ て異な り ます (例 : テ キ ス ト フ ロ ーのはめ込み枠) 。 数値の直
後に接尾辞 r を付加す る こ と に よ り 、 相対座標を指定す る こ と も で き ます。 座標 リ ス ト の
中で、 相対座標は、 直前の x 座標か y 座標に対す る 値 と な り ます。 相対座標が リ ス ト の先
頭にあ る と き は、 原点に対す る 値 と な り ますので、 すなわち絶対座標 と な り ます。 例 :
cropbox={ 0 0 500 600 }
box={40% 30% 50% 70%}
以下のオプシ ョ ンは同等です :
box={12 34 56r 78r}
box={12 34 68 112}
円 円は、 float 値 4 個の リ ス ト と し て指定 さ れ、 1 番目の対は、 中心の x 座標 と y 座標を
指定 し 、 2 番目の対は、 円周上の任意の点の x 座標 と y 座標を指定 し ます。 こ れ ら の座標
を解釈す る ための座標系 (デ フ ォ ル ト 座標系 ま たはユーザー座標系) は、 オプ シ ョ ン に
よ っ て異な り ますので、 個別に示 し ます :
circle={200 325 200 200}
曲線 リ ス ト 曲線 リ ス ト は、 連結 さ れた 2 本以上の 3 次のベジエ曲線分か ら 成 り ます。 1
本のベジエ曲線は、 4 個の制御点に よ っ て指定 さ れます。 1 個目の制御点は曲線の始点で
あ り 、 4 個目の点は終点です。 2 個目の点 と 3 個目の点は曲線の形状を制御 し ます。 曲線
1.4 図形型
15
リ ス ト では、 1 つの曲線分の最後の点が、 次の曲線分の 1 個目の点 と な り ます。 よ っ て、
曲線 リ ス ト は、 n ≧ n の 6 × n 個の float 値の リ ス ト と し て指定 さ れます :
curve={200 700 240 600 80 580 400 660 400 660 440 620}
曲線の描画後は、 最後の制御点が新 し いカ レ ン ト 点 と な り ます。
16
第 1 章 : オプ シ ョ ン リ ス ト (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
1.5 制限
PDF リ フ ァ レ ン ス、 Acrobat、 お よ びい く つかの PDF 標準の よ っ て課 さ れてい る 制限条項
に準拠 し た PDF 出力を生成す る ために、 PDFlib ではい く つかの項目に制約を設けてい ま
す。 こ れ ら の制約を以下に示 し ます。
以下の制約は、 強制的に守 ら せ る よ う 、 値が適切に変更 さ れます。
> PDF におけ る 浮動小数点値の最小の絶対値:0.000015。 こ れ よ り も 絶対値が小 さ い数は
0 に置 き 換え ら れます。
> (PDF 1.4。それ よ り 後の PDF バージ ョ ンにはあ ては ま り ません)PDF において浮動小数
点数値 と し て表す こ と ので き る 最大の絶対値 : 32767.0。 こ れ よ り も 絶対値が大 き い数
は、 いちばん近い整数に置 き 換え ら れます。
以下の制限に違反 し た と き は、 例外が発生 し ます。
> PDFlib では、 PDF 出力フ ァ イ ルサ イ ズについて、 何 ら 固定的な制限はあ り ませんが、
PDF/A-1 ・ PDF/X-4 ・ PDF/X-5 の生成時には、 特定の制限を強制す る 必要があ り ます。
詳 し く は PDFlib チ ュ ー ト リ アルを参照 し て く だ さ い。
> PDF で許容 さ れ る 最大の数値 : 2,147,483,647。
> ハ イ パーテ キ ス ト 文字列の最大長 : 65535。
> ページ上のテ キ ス ト 文字列の最大長:kerning=false かつ wordspacing=0 の場合は 32,763
バ イ ト (すなわち CID フ ォ ン ト な ら 16,381 キ ャ ラ ク タ )、 それ以外の場合は 4095 キ ャ
ラクタ
> 以下のオプシ ョ ンの リ ス ト 項目は最大 8191 個に制限 さ れます。
views ・ namelist ・ polylinelist ・ fieldnamelist ・ itemnamelist ・ itemtextlist ・ children ・ group
> PDF/A-1 ・ PDF/X-4 ・ PDF/X-5 文書 1 個の中の間接オブジ ェ ク ト の最大数 : 8,388,607
1.5 制限
17
18
第 1 章 : オプ シ ョ ン リ ス ト (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
2 一般関数
2.1 関数のス コ ープ
PDFlib のアプ リ ケーシ ョ ンは、 わか り やすい一定の構造規則に従 う 必要があ り ます。 た と
えば、 文書を開始す る 前に終了す る こ と な ど当然で き ません。 PDFlib の API は、 文書や
ページのつ く り に非常に近い設計にな っ てい ますので、 文書を 「自然な」 や り 方で生成す
れば、 正 し い PDFlib ク ラ イ ア ン ト プ ロ グ ラ ムがで き あが り ます。 PDFlib は、 関数が正 し
い順序で呼び出 さ れ る よ う 、 厳格な ス コ ープ機構で強制 し てい ます。 各ス コ ープの定義を
表 2.1 に示 し ます。 ス コ ープの入れ子を図 2.1 に図示 し ます。 関数の解説では、 各関数の
許 さ れ る ス コ ープ を示 し ます。 その許 さ れ る ス コ ープの外で関数を呼ぶ と 、 例外が発生 し
ます。 scope パ ラ メ タ を使 う と 、 カ レ ン ト の ス コ ープを知 る こ と がで き ます。
ク ッ ク ブ ッ ク 完全な コ ー ド サン プルが ク ッ ク ブ ッ クの general/function_scopes ト ピ ッ ク にあ り ます。
図 2.1
ス コ ープの入れ子
2.1 関数のス コ ープ
19
表 2.1 関数のス コ ープの定義一覧
ス コ ープ名
定義
パス
moveto( ) ・ circle( ) ・ arc( ) ・ arcn( ) ・ rect( ) ・ ellipse( ) のいずれかで開始。 135 ページ 「7.5 描画 と ク
リ ッ ピ ング」 のいずれかの関数で終了
ページ
begin_page( ) と end_page( ) の間、 ただ し パスス コ ープの外
テ ン プ レー
ト
begin_template_ext( ) と end_template( ) の間、 ただ し パスス コ ープの外
パ タ ーン
begin_pattern( ) と end_pattern( ) の間、 ただ し パスス コ ープの外
フォン ト
begin_font( ) と end_font( ) の間、 ただ し グリフス コ ープの外
グリ フ
begin_glyph( ) と end_glyph( ) の間、 ただ し パスス コ ープの外
文書
begin_document( ) と end_document( ) の間、 ただ し ページ ・ テンプレート ・ パターン ・ フォントス
コ ープの外
オブ ジ ェ ク
ト
PDFlib オブ ジ ェ ク ト が存在 し ている間、 ただ し 文書ス コ ープの外
20
第 2 章 : 一般関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
2.2 パ ラ メ タ ・ オ プ シ ョ ン処理
PDFlib の操作は、 さ ま ざ ま な グ ロ ーバルパ ラ メ タ で制御する こ と がで き ます。 文字列 と 数
値のパ ラ メ タ があ り 、 それ ら を使っ て、 PDFlib や、 PDF 出力の体裁を制御す る こ と がで き
ます。 数値 と 文字列のパ ラ メ タ を設定ま たは取得す る ために、 4 つの関数があ り ます。 そ
れぞれの節の最初に、 関連す る パ ラ メ タ のキー名 と 値を記 し ます。 使え る パ ラ メ タ の全一
覧を 「付章 B 全パ ラ メ タ 一覧」 に示 し ます。
こ れ ら のパ ラ メ タ の設定は、 PDFlib オブジ ェ ク ト が存在 し てい る 間ずっ と 、 も し く は
ク ラ イ ア ン ト が明示的に設定を変更す る ま で保持 さ れ ます。 ただ し パ ラ メ タ に よ っ ては、
各ページが始ま る ご と に明示的に再設定 さ れ る も の も あ り ます ( こ れは各説明でその旨を
そのつど示 し ます)。
VB RB Function get_value(key As String, modifier As Double) As Double
C# double get_value(String key, double modifier)
数値型の PDFlib パ ラ メ タ の値を得ます。
key
取得 し たいパ ラ メ タ の名前。
modifier
も し あれば、 パ ラ メ タ に適用 し たい修飾子。 修飾子が必要か ど う か、 そ し て何
に関す る かは、 さ ま ざ ま なパ ラ メ タ 一覧表で説明 し ます。 修飾子を使わない と き は 0 にす
る 必要があ り ます。 多 く のパ ラ メ タ では修飾子 と し て、 ハン ド ルを渡す必要があ り ます。
戻り値 パ ラ メ タ の数値。
スコープ key に依存。
VB RB Sub set_value(key As String, value As Double)
C# void set_value(String key, double value)
数値型の PDFlib パ ラ メ タ に値を設定 し ます。
key
value
設定 し たいパ ラ メ タ の名前。
パ ラ メ タ に設定 し たい新 し い値。
スコープ key に依存。
VB RB Function get_parameter(key As String, modifier As Double) As String
C# String get_parameter(String key, double modifier)
文字列型の PDFlib パ ラ メ タ の内容を得ます。
key
取得 し たいパ ラ メ タ の名前。
modifier
も し あれば、 パ ラ メ タ に適用 し たい修飾子。 修飾子が必要か ど う か、 そ し て何
に関す る も のかは、 さ ま ざ ま なパ ラ メ タ 一覧表で説明 し ます。 修飾子を使わない と き は 0
にす る 必要があ り ます。 多 く のパ ラ メ タ では修飾子 と し て、 ハン ド ルを渡す必要があ り ま
す。
戻り値 パ ラ メ タ の文字列値を、 ハ イ パーテ キ ス ト 文字列 と し て。 返 さ れた文字列は、 カ レ ン ト 文
書ス コ ープ を終え る ま で使え ます。 情報が得 ら れない と き は空文字列が返 さ れます。
2.2 パラ メ タ ・ オプ シ ョ ン処理
21
スコープ key に依存。
VB RB Sub set_parameter(key As String, value As String)
C# void set_parameter(String key, String value)
文字列型の PDFlib パ ラ メ タ を設定 し ます。
key
value
設定 し たいパ ラ メ タ の名前。
(名前文字列) パ ラ メ タ に設定 し たい新 し い値。
スコープ key に依存。
VB RB Sub set_option(optlist As String)
C# void set_option(String optlist)
グ ロ ーバルなオプシ ョ ン (複数可) を設定 し ます。
optlist 表 2.2 に従っ た グ ロ ーバルなオプシ ョ ン群を指定す る オプシ ョ ン リ ス ト 。 1 つの
オプシ ョ ンが複数回与え ら れた と き は、最後に出現 し た も のがそれ以前のすべて を上書 き
し ます。 1 つのオプシ ョ ンに対 し て複数の値を与え る ためには (例 : searchpath)、 そのオ
プシ ョ ンに対す る 1 つの リ ス ト 引数の中ですべての値を与え て く だ さ い。下記のオプシ ョ
ン を用い る こ と がで き ます :
filenamehandling ・ logging ・ resourcefile ・ searchpath ・ shutdownstrategy
詳細 searchpath 以外では、新 し い値は古い値を上書き し ます。set_option( ) は、set_parameter( )
のパ ラ メ タ 群のサブセ ッ ト に対応 し てい ます。
スコープ any
表 2.2 set_option( ) のオプ シ ョ ン一覧
オプ シ ョ ン
定義
filenamehandling
(キーワー ド 。 Windows では不必要) フ ァ イル名に関する対象のエ ン コ ーデ ィ ング (デ フ ォ ル ト :
Mac OS X では unicode、 それ以外では legacy) :
ascii
7 ビ ッ ト ASCII
basicebcdic コ ー ド ページ 1047 に従っ た基本 EBCDIC、 ただ し Unicode 値≦ U+007E のみ
basicebcdic_37
コ ー ド ページ 0037 に従っ た基本 EBCDIC、 ただ し Unicode 値≦ U+007E のみ
honorlang 環境変数 LANG を解釈 し て フ ァ イル名に適用、 ただ し それが utf8 ・ UTF-8 ・ cpXXXX ・
CPXXXX ・ iso8859-x ・ ISO-8859-x のいずれかを指定 し ている と きのみ。
legacy
host エ ン コ ーデ ィ ン グ (すなわち カ レ ン ト シ ス テムのエ ン コ ーデ ィ ング) を用いて
フ ァ イル名を解釈 し 、 かつ、 honorlang パラ メ タ が設定 さ れていれば LANG 変数を解
釈。
unicode
(EBCDIC-) UTF-8 形式の Unicode エ ン コ ーデ ィ ング
すべての有効な エ ン コ ーデ ィ ング名
PDFlib に よ っ て認識 さ れる任意の (内蔵ま たはユーザー定義の) エ ン コ ーデ ィ ング (表
4.3 参照)、 ただ し glyphid ・ builtin を除 く
logging
22
(オプ シ ョ ン リ ス ト ) 表 2.8 に従っ た ログ記録オプ シ ョ ン群
第 2 章 : 一般関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 2.2 set_option( ) のオプ シ ョ ン一覧
オプ シ ョ ン
定義
resourcefile
(名前文字列) PDFlib UPR リ ソ ース フ ァ イルの相対フ ァ イル名または絶対 フ ァ イル名。 リ ソ ース
フ ァ イルはただ ちに読み込まれます。 既存の リ ソ ースは保持 さ れますが、 再設定 さ れた と き には
新 し い値で上書き さ れます。
searchpath
(名前文字列の リ ス ト ) 読み取 り たい フ ァ イルが位置するデ ィ レ ク ト リ の相対パス名または絶対パ
ス名 (複数可)。 検索パスは複数回設定する こ と がで き、 その項目群は蓄積 さ れて、 設定 さ れた順
に用い ら れます (詳 し く は PDFlib チ ュ ー ト リ アルを参照)。 空の名前文字列 (すなわち {{}}) は、
既存の検索パス項目群をすべて削除 し ます。 Windows は、 検索パスはレ ジ ス ト リ 項目で設定する こ
と も で き ます。 デ フ ォ ル ト : 空
shutdownstrategy
(整数) すべての PDFlib オブ ジ ェ ク ト に対 し て一度割 り 当て られたグローバルな リ ソ ース を解放す
る方式。 各グ ローバル リ ソ ースはそれぞれ、 それが初めて必要 と さ れた時に要求によ っ て初期化
さ れます。 このオプ シ ョ ンは、 1 つのプ ロ セス内のすべての PDF オブ ジ ェ ク ト に対 し て、 同 じ 値
に設定する必要があ り ます。 そ う でない場合には動作は未定義です (デ フ ォ ル ト : 0) :
0
参照カ ウ ン タ が、 い く つの PDFlib オブ ジ ェ ク ト がその リ ソ ース を使っ ているかを追跡
し ます。 最後の PDFlib オブ ジ ェ ク ト が削除 さ れて参照カ ウン タ がゼロに減っ た と き、
その リ ソ ースは解放 さ れます。
1
リ ソ ースはプ ロ セスの終了ま で保持 さ れます。 こ れはパ フ ォ ーマ ン ス を若干向上 さ せま
すが、 最後の PDFlib オブ ジ ェ ク ト が削除 さ れた後によ り 多 く の メ モ リ を必要 と し ます。
2.2 パラ メ タ ・ オプ シ ョ ン処理
23
2.3 セ ッ ト ア ッ プ
PDFlib のセ ッ ト ア ッ プに関連す る パ ラ メ タ と 値のキー名を表 2.3 ・ 表 2.4 に示 し ます (21
ページ 「2.2 パ ラ メ タ ・ オプシ ョ ン処理」 参照)。
表 2.3 get/set_parameter( ) のセ ッ ト ア ッ プ関連のキー一覧
キー
説明
任意の
リ ソ ース
カテゴ リ名
任意の リ ソ ース カ テ ゴ リ 内の項目。 get_parameter( ) の場合 : 修飾子は項目番号を と り ます (先頭
が 1)。 項目がも う ない と きは空文字列が返 さ れます。 カ テ ゴ リ 名の一覧は PDFlib チ ュ ー ト リ アル
を参照。 ス コ ープ : 任意
filenamehandling
表 2.2 に従 っ た フ ァ イル名に対する対象エ ン コ ーデ ィ ング
honorlang
(非推奨。 filenamehandling=honorlang を用いて く だ さ い) true にする と 、 環境変数 LANG が解
釈 さ れて、 それが utf8 ・ UTF-8 ・ cp1252 ・ CP1252 ・ iso8859-x ・ ISO-8859-x のいずれかを指定 し て
いる と きは、 フ ァ イル名に適用 さ れます。 デ フ ォ ル ト : false。 ス コ ープ : オブ ジ ェ ク ト
license1
PDFlib か PDFlib+PDI か PPS のラ イ セ ン スキーを設定 し ます。 キーを設定で き るのは、 初めて
begin_document( ) を呼び出す前です。 誤っ た プ ラ ッ ト フ ォ ームに対する ラ イ セ ン スキーは、 警告な
く 無視 さ れます。 ラ イ セ ン スキーがないためにデモ ス タ ン プが生成 さ れて し ま う 事故を防ぐ ため、
nodemostamp パラ メ タ を用いて く だ さ い。 ス コ ープ : オブ ジ ェ ク ト
licensefile
ラ イ セ ン スキーの入 っ た フ ァ イルの名前を設定 し ます。 ラ イ セ ン ス フ ァ イルを設定で き るのは、
初めて begin_document( ) を呼び出す前に 1 回だけです。 ス コ ープ : オブ ジ ェ ク ト
nodemostamp
true な ら、 有効な ラ イ セ ン スキーが見つから なかっ た と き に例外が発生 し ます。 false な ら、 全
ページにデモ ス タ ン プが生成 さ れます。 こ のオプ シ ョ ンは、 初めて begin_document( ) を呼び出
す前に設定する必要があ り ます。 デ フ ォ ル ト : false。 ス コ ープ : オブ ジ ェ ク ト
resourcefile
PDFlib の UPR リ ソ ース フ ァ イルの相対ま たは絶対 フ ァ イル名。 その リ ソ ース フ ァ イルはただ ちに
読み込まれます。 既存の リ ソ ースは保持 さ れますが、 その値は再設定すれば新 し い値で上書き さ
れます。 ス コ ープ : 任意
scope2
カ レ ン ト ス コ ープの名前を返 し ます (表 2.1 参照)。 ス コ ープ : 任意
SearchPath
読みたい フ ァ イルの入っ たデ ィ レ ク ト リ の相対または絶対パス名。 こ の SearchPath は複数回設定
する こ と も で き、 その内容は蓄積 さ れて、 設定 し た順序に使われます。 空文字列だ と SearchPath
リ ス ト の全文字列を (デ フ ォ ル ト 項目群 も) 削除 し ます。
get_parameter( ) : 修飾子は項目番号を と り ます (先頭が 1)。 項目がも う ない と きは空文字列が返
さ れます。 返 さ れる文字列のエ ン コ ーデ ィ ングは UTF-8 です。 ス コ ープ : 任意
string2
修飾子で与え る文字列番号で指定 さ れる文字列を返 し ます。 返 さ れた文字列は、 次に何 らかの API
関数を呼び出すま で有効です。 ス コ ープ : 任意
version2
PDFlib の完全なバージ ョ ン文字列。 その形式は < メ ジ ャー>.<マ イ ナー>.< リ ビ ジ ョ ン> で、 さ ら に末
尾に beta ・ rc 等の限定詞がつ く こ と も あ り ます。 ス コ ープ : 任意 ・ null
1. set_parameter( ) のみ
2. get_parameter( ) のみ
24
第 2 章 : 一般関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 2.4 get/set_value( ) のセ ッ ト ア ッ プ関連のキー一覧
キー
説明
compress
圧縮レ ベル。 圧縮な し = 0 か ら、 1 =最高速、 等々、 最高圧縮= 9 ま で。 このパラ メ タ は、 パスス
ルーモー ド で処理 さ れる画像デー タ に対 し ては効力を持ち ません。 デ フ ォ ル ト : 6。 ス コ ープ :
ページ ・ 文書
major minor
revision1
それぞれ PDFlib の メ ジ ャ ー ・ マ イ ナー ・ リ ビ ジ ョ ン番号を返 し ます。 ス コ ープ : 任意 ・ null
maxfilehandles
(非サポー ト 。 Windows にのみ実装) 同時に開かれている (C ラ ン タ イ ム内で) フ ァ イルの数の新
し い最大値。 こ の数は 20 以上、 2048 以下である必要があ り ます。 この新 し い値が C ラ ン タ イ ム
に よ っ て受け付け られなかっ た と きは、 例外が発生 し ます。 ス コ ープ : オブ ジ ェ ク ト
1. get_value( ) のみ
2.3 セ ッ ト ア ッ プ
25
2.4 PDFlib 仮想 フ ァ イ ルシ ス テム (PVF)
ク ッ ク ブ ッ ク 完全な コ ー ド サン プルが ク ッ ク ブ ッ クの general/starter_pvf ト ピ ッ ク にあ り ます。
VB RB Sub create_pvf(filename As String, data, optlist As String)
C# void create_pvf(String filename, byte[] data, String optlist)
メ モ リ 内で与え たデー タ か ら 、 名前付 き の仮想の読み取 り 専用フ ァ イ ルを作成 し ます。
filename (名前文字列) 仮想フ ァ イ ルの名前。 こ れは任意の文字列で、 以後の PDFlib の
呼び出 し で仮想フ ァ イ ルを参照す る ために使え ます。 仮想フ ァ イ ルの名前は、 それがデ ィ
レ ク ト リ ま たはフ ァ イ ル名の区切 り キ ャ ラ ク タ と し て ス ラ ッ シ ュ 「/」 キ ャ ラ ク タ のみを
用いてい る と き は、 SearchPath 機構に従い ます。
data 仮想フ ァ イ ルに入れたいデー タ を持つバ リ ア ン ト 値 (REALbasic では メ モ リ ブ ロ ッ
ク )。
optlist
表 2.5 に従っ たオプシ ョ ン リ ス ト 。 次のオプシ ョ ンが使え ます。 copy
詳細 仮想フ ァ イ ル名は、 入力フ ァ イ ルを使 う あ ら ゆ る API 関数に与え る こ と がで き ます (仮想
フ ァ イ ルを生成 PDF 出力に使 う こ と はで き ません。 それをす る には begin_document( ) で
空の フ ァ イ ル名を使い ます)。こ う し た関数のなかには、デー タ が不要にな る ま で仮想フ ァ
イ ルを ロ ッ ク で き る も の も あ り ます。 仮想フ ァ イ ルは、 delete_pvf( ) で明示的に、 ま たは
delete( ) で自動的に削除 さ れ る ま で メ モ リ 内に保持 さ れます。
PDFlib オブジ ェ ク ト はそれぞれ、 PVF フ ァ イ ルのセ ッ ト を独立 し て保持 し ます。 仮想
フ ァ イ ルは、 複数の PDFlib オブジ ェ ク ト 間で共有す る こ と はで き ませんが、 それを使っ
て同 じ PDFlib オブジ ェ ク ト か ら 複数の文書を作成す る こ と はで き ます。 別々の PDFlib オ
ブジ ェ ク ト を用いて動作 し てい る 複数の ス レ ッ ド は、PVF の使用を同期 さ せ る 必要はあ り
ません。 filename と い う 仮想フ ァ イ ルがすでにあ る と き は、 例外が発生 し ます。 こ の関数
は、 通常のデ ィ ス ク フ ァ イ ルですでに filename が使われていないか と い う 検証は行い ま
せん。
copy オプシ ョ ン を与え ていない と き は、 対にな る delete_pvf( ) を呼び出 し て成功す る
ま では、 与え たデー タ を呼び出 し 側で変更 し た り 解放 (削除) し てはいけ ません。 こ の規
則に従わない と おそ ら く ク ラ ッ シ ュ が発生 し ます。
スコープ 任意
表 2.5 create_pvf( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
copy
(論理値) PDFlib が、 与えたデー タ の内部的な コ ピーを ただ ちに作成 し ます。 こ の場合、 呼び出 し
側は与えたデー タ を こ の呼び出 し のす ぐ後に捨て て も かまいません。 この copy オプ シ ョ ンは、
COM ・ .NET ・ Java バイ ンデ ィ ングでは自動的に true に設定 さ れます (その他のバイ ンデ ィ ングで
はデ フ ォ ル ト : false)。 それ以外の言語バイ ンデ ィ ン グでは、 copy オプ シ ョ ン を与えなければ
デー タ は コ ピー さ れません。
26
第 2 章 : 一般関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
VB RB Function delete_pvf(filename As String) As Long
C# int delete_pvf(String filename)
名前付 き の仮想フ ァ イ ルを削除 し て、 そのデー タ 構造を解放 し ます (ただ し 内容は解放 し
ません)。
filename (名前文字列。グ ロ ーバルな filenamehandlingオプシ ョ ン ま たはパ ラ メ タ に従っ
て解釈 さ れます。 表 2.2 参照) create_pvf( ) に与え て あ る の と 同 じ 仮想フ ァ イ ル名。
戻り値 その仮想フ ァ イ ルがあ る が ロ ッ ク さ れてい る と き は -1、 それ以外な ら 1。
詳細
フ ァ イ ルが ロ ッ ク さ れていなければ、 PDFlib は filename に関連づいたデー タ 構造を ただ
ちに削除 し ます。 filename と い う 有効な仮想フ ァ イ ルがない と き は、 こ の関数は警告 も 出
さ ず何 も し ません。 こ の関数を呼び出 し て成功 し た後は、 filename は使い ま わす こ と も で
き ます。 仮想フ ァ イ ルは、 delete( ) ですべて自動的に削除 さ れます。
細かい意味は、 対にな る create_pvf( ) を呼び出 し た時に copy オプシ ョ ン を与え ておい
たかに よ っ て異な り ます。 copy オプシ ョ ン を与え ておいた な ら 、 フ ァ イ ルのための管理
デー タ 構造 も フ ァ イ ル内容本体 (デー タ ) も 両方解放 さ れますが、 そ う でないな ら 内容は
ク ラ イ ア ン ト が解放す る と い う 前提なので解放 さ れません。
スコープ 任意
2.4 PDFlib 仮想フ ァ イルシ ス テム (PVF)
27
2.5 例外処理
こ の節に関連す る オプシ ョ ン を表 2.6 に示 し ます。 こ れ ら のオプシ ョ ンは多 く の関数で用
い る こ と がで き 、 それぞれのオプシ ョ ン リ ス ト の開設でその旨示 さ れてい ます。 こ れ ら の
オプシ ョ ンは、get/set_parameter( ) に対す る パ ラ メ タ キー名 と し て も 用い る こ と がで き ま
す (21 ページ 「2.2 パ ラ メ タ ・ オプシ ョ ン処理」 参照)。
表 2.6 get/set_parameter( ) の例外関連のキー一覧 (オプ シ ョ ン と し て も使用可能)
キー
説明
errorpolicy
(キーワー ド ) エ ラ ー発生時の さ ま ざ ま な関数の動作を制御 し ます。 errorpolicy パラ メ タ は、 さ
ま ざ ま な関数の errorpolicy オプ シ ョ ンに よ っ て上書きする こ と がで き、 こ のオプ シ ョ ンに対す
るデ フ ォ ル ト と し てはた ら き ます。 使え るキーワー ド (デ フ ォル ト : legacy。 ス コ ープ : 任意) :
legacy
(非推奨) 関数の動作は PDFlib 6 と 同 じ です。
return
エ ラ ーが起き る と 関数は返 り ます。 エ ラ ー コ ー ド を返せる関数 (load_image( ) 等) は -1
を返 し ます。 結果文字列を返す関数 (fit_table( ) 等) は文字列 _error を返 し ます。 ア プ
リ ケーシ ョ ンの開発者は、 戻 り 値が -1 または _error でないかを検査 し てエ ラ ー状況を
検出する必要があ り ます。 エ ラ ーが起き た と きは、 問題の詳 し い内容は get_errmsg( ) で
取得で き ます。 新規のア プ リ ケーシ ョ ンには こ の設定を推奨 し ます。
exception エ ラ ーが起き る と 、 関数は例外を発生 さ せます。 こ の例外は、 バイ ンデ ィ ング固有の し
く みを用いて ク ラ イ ア ン ト コ ー ド 内で補足する必要があ り ます。 その時点ま でに生成 さ
れた作 り かけの PDF 出力は使え な く な り ますので、 破棄する必要があ り ます。
VB RB Function get_errnum( ) As Long
C# int get_errnum( )
最後に発生 し た例外か、 ま たは関数呼び出 し 失敗の原因の番号を得ます。
戻り値
も っ と も 最近のエ ラ ー条件のエ ラ ー コ ー ド 。
スコープ PDFlib で例外が発生 し てか ら 、 PDFlib オブジ ェ ク ト が死ぬま での間。 あ る いは関数がエ
ラ ー コ ー ド -1 を返 し てか ら 、 こ の節で示 し てい る も のを除 く 任意の関数を呼び出すま で
の間に、 こ の関数を呼び出す こ と も で き ます。
バインディング ・ .NET ・ REALbasic では、 こ の関数は PDFlibException オブジ ェ ク ト で get_errnum( ) と し て
も 得 ら れます。
VB RB Function get_errmsg( ) As String
C# String get_errmsg( )
最後に発生 し た例外か、 ま たは関数呼び出 し 失敗の原因のテ キ ス ト を得ます。
戻り値
も っ と も 最近のエ ラ ー条件の記述 さ れたテ キ ス ト 。
スコープ PDFlib で例外が発生 し てか ら 、 PDFlib オブジ ェ ク ト が死ぬま での間。 あ る いは関数がエ
ラ ー コ ー ド -1 を返 し てか ら 、 こ の節で示 し てい る も のを除 く 任意の関数を呼び出すま で
の間に、 こ の関数を呼び出す こ と も で き ます。
バインディング ・ .NET ・ REALbasic では、 こ の関数は PDFlibException オブジ ェ ク ト で get_errmsg( ) と し て
も 得 ら れます。
28
第 2 章 : 一般関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
VB RB Function get_apiname( ) As String
C# String get_apiname( )
最後の例外を発生 さ せたか、 ま たは失敗 し た API 関数の名前を得ます。
戻り値 例外を発生 さ せた API 関数の名前か、 ま たは も っ と も 最近に呼び出 さ れて失敗 し エ ラ ー
コ ー ド を返 し た関数の名前。
スコープ PDFlib で例外が発生 し てか ら 、 PDFlib オブジ ェ ク ト が死ぬま での間。 あ る いは関数がエ
ラ ー コ ー ド -1 を返 し てか ら 、 こ の節で示 し てい る も のを除 く 任意の関数を呼び出すま で
の間に、 こ の関数を呼び出す こ と も で き ます。
バインディング ・ .NET ・ REALbasic では、 こ の関数は PDFlibException オブジ ェ ク ト で get_apiname(( ) と し
て も 得 ら れます。
2.5 例外処理
29
2.6 ロ グ記録
ロ グ記録機能を使 う と 、 API の呼び出 し を ト レースす る こ と がで き ます。 ロ グ フ ァ イ ルの
内容は、 デバ ッ グ目的に も 有用です し 、 PDFlib GmbH のサポー ト か ら 求め ら れ る こ と も あ
り ます。 ロ グ記録機能のためのパ ラ メ タ のキー名を表 2.7 に示 し ます (21 ページ 「2.2 パ
ラ メ タ ・ オプシ ョ ン処理」 参照)。
表 2.7 set_parameter( ) のログ記録関連のキー一覧
キー
説明
logging
表 2.8 に従 っ た ロ グ記録オプ シ ョ ンに よ る オプ シ ョ ン リ ス ト
logmsg
ログ フ ァ イルへ コ ピー さ せたい文字列
ロ グ記録のオプシ ョ ンは、 以下の方法で与え る こ と がで き ます。
> set_option( ) の logging オプシ ョ ンに対す る オプシ ョ ン リ ス ト と し て。 例 :
p.set_option("logging", "filename=debug.log remove")
> set_parameter( ) の logging オプシ ョ ンに対する オプシ ョ ン リ ス ト と し て。 例 :
p.set_parameter("logging", "filename=debug.log remove")
> PDFLIBLOGGING と い う 環境変数で。こ う す る と 、いちばん初めに何 ら かの API 関数を呼
び出 し た時か ら ロ グ出力が始め ら れます。
表 2.8 logging パラ メ タ のオプ シ ョ ン一覧
キー
説明
(空 リ ス ト )
ログ出力を有効に し ます
disable
(論理値) ログ記録の出力を無効に し ます
enable
(論理値) ログ出力の出力を有効に し ます
filename
(文字列) ログ フ ァ イルの名前。 特殊名 と し て stdout と stderr も 認識 さ れます。 CICS では この
オプ シ ョ ンは無視 さ れ、 ロ グ出力はつねに stderr へ書き出 さ れます。 既存の内容がある と きは、
出力はそれに追加 さ れます. デ フ ォ ル ト :
pdflog
MVS の場合
PDFlib.log
Mac ・ iSeries の場合
\PDFlib.log
Windows の場合
/tmp/PDFlib.log
それ以外の全シ ス テムの場合
あるいはログ フ ァ イルの名前は、 PDFLIBLOGFILE と い う 環境変数で与え る こ と も で き ます。
flush
(論理値) true な ら、 出力が終わる たびに ログ フ ァ イルが閉 じ られ、 次の出力で また開かれるの
で、 出力が確実に フ ラ ッ シ ュ さ れます。 こ れは、 ログ フ ァ イルの中断箇所を見て プ ログ ラ ムの ク
ラ ッ シ ュ を追いたい と き に有用ですが、 ただ し 処理はかな り 遅 く な り ます。 false な ら ロ グ フ ァ イ
ルは 1 回だけ開かれます。 デ フ ォ ル ト : false
remove
(論理値) true な ら、 既存のログ フ ァ イルは、 新 し い出力が書き出 さ れる前に削除 さ れます。 デ
フ ォル ト : false
stringlimit
(整数) 行あた り の文字数の制限値か、 ま たは 0 で無制限。 デ フ ォ ル ト : 0
30
第 2 章 : 一般関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 2.8 logging パラ メ タ のオプ シ ョ ン一覧
キー
説明
classes
(オプ シ ョ ン リ ス ト ) 整数型のオプ シ ョ ン を入れたオプ シ ョ ン リ ス ト 。 こ こ で各オプ シ ョ ンはログ
記録種別を記述 し 、 その値は粒度レ ベルを記述 し ます。 レ ベル 0 な ら そのログ記録種別は無効に
な り 、 正の値な ら その種別は有効にな り ます。 レ ベルを上げるほど出力は詳 し く な っ てい き ます。
以下のオプ シ ョ ンが用意 さ れています (デ フ ォ ル ト : {api=1 warning=1}) :
api
すべての API 呼び出 し を、 その関数パラ メ タ と 戻 り 値 と と も にログ記録 し ます。 api=2
にする と 、 すべての API ト レース行の頭に タ イ ムス タ ン プが生成 さ れる と と も に、 非推
奨の関数 ・ オプ シ ョ ンはその旨が示 さ れます。 api=3 にする と 、 try/catch 呼び出 し がロ
グ記録 さ れます (例外処理が入れ子にな っ ている問題のデバ ッ グに有用)。
filesearch SearchPath または PVF によ る フ ァ イル検索に関連 し たすべての試みを ログ記録 し ます。
resource
Windows レ ジ ス ト リ と UPR 定義に よ るすべての リ ソ ース検索の試みを、 その リ ソ ース
検索の結果 と と も にロ グ記録 し ます。
user
logmsg パラ メ タ で与えている、 ユーザー指定のログ記録出力。
warning
すべての PDFlib 警告を ログ記録 し ます。 警告 と は、 無視または内部対応で き る エ ラ ー
状況です。 warning=2 にする と 、 例外を発生 さ せずに メ ッ セージ テキス ト を中継 さ せて
get_errmsg( ) で取得 さ せる関数から の メ ッ セージ と 、 フ ァ イルを開 こ う と し て失敗 し た
すべての試みの原因も ログ記録 さ れます。
2.6 ログ記録
31
32
第 2 章 : 一般関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
3 文書 ・ ページ関数
3.1 文書関数
VB RB Function begin_document(filename As String, optlist As String) As Long
C# int begin_document(String filename, String optlist)
新規 PDF フ ァ イ ルを さ ま ざ ま なオプシ ョ ンに従っ て作成 し ます。
filename (名前文字列。グ ロ ーバルな filenamehandlingオプシ ョ ン ま たはパ ラ メ タ に従っ
て解釈 さ れ ま す。 表 2.2 参照) 生成 し た い PDF 出力 フ ァ イ ルの絶対名 ま た は相対名。
filename が空な ら ば、 PDF 文書はフ ァ イ ル上でな く メ モ リ 内に生成 さ れ、 その生成 PDF
デー タ を ク ラ イ ア ン ト へ取 り 出すには get_buffer( ) 関数を使 う 必要があ り ます。 Windows
では、 UNC パ スや、 割 り 当て ら れたネ ッ ト ワー ク ド ラ イ ブを使っ て も か ま い ません。
optlist 文書オプシ ョ ン群を指定 し たオプシ ョ ン リ ス ト :
> 一般オプシ ョ ン : errorpolicy (表 2.6 参照)
> 表 3.1 に従っ た文書オプシ ョ ン群。 end_document( ) で指定す る オプシ ョ ンは、 begin_
document( ) で指定 し た同等のオプシ ョ ン よ り も 優先 さ れます。 以下のオプシ ョ ンが
使え ます :
attachmentpassword ・ attachments ・ autoxmp ・ compatibility ・ destination ・ groups ・
inmemory ・ labels ・ lang ・ linearize ・ masterpassword ・ metadata ・ moddate ・
objectstreams ・ openmode ・ optimize ・ pagelayout ・ pdfa ・ pdfx ・ permissions ・
rolemap ・ search ・ tagged ・ tempdirname ・ uri ・ userpassword ・ viewerpreferences
戻り値 エ ラ ーな ら -1、 そ う でなければ 1。 filename が空の と き は、 こ の関数は必ず成功 し 、 決 し
てエ ラ ー値 -1 を返 し ません。
詳細
こ の関数は、 与え ら れた filename を使っ て新規 PDF フ ァ イ ルを作成 し ます。 PDFlib は、
その与え ら れた名前の フ ァ イ ルを開 こ う と 試み、 そ し てその PDF 文書が完了 し た と き に
はフ ァ イ ルを閉 じ ます。
スコープ オ ブ ジ ェ ク ト 。 こ の関数は、 フ ァ イ ル を う ま く 開け た と き は文書 ス コ ープ を開始 さ せ ま
す。 対応す る end_document( ) と 必ず対に し て呼び出す必要があ り ます。
バインディング ASP : こ の関数に渡すフルパ ス名を作 る には MapPath 機能を使 う 必要があ り ます。
VB RB Sub end_document(optlist As String)
C# void end_document(String optlist)
生成 さ れた PDF フ ァ イ ルを閉 じ て、 さ ま ざ ま なオプシ ョ ン を適用 し ます。
optlist 文書処理オプシ ョ ン群を指定 し たオプシ ョ ン リ ス ト :
> 一般オプシ ョ ン : errorpolicy (表 2.6 参照)
> 表 3.1 に従っ た文書オプシ ョ ン群。 end_document( ) で指定す る オプシ ョ ンは、 begin_
document( ) で指定 し た同等のオプシ ョ ン よ り も 優先 さ れます。 以下のオプシ ョ ンが
使え ます :
3.1 文書関数
33
action ・ attachmentpassword ・ attachments ・ autoxmp ・ createpvf ・ destination ・
destname ・ labels ・ metadata ・ moddate ・ objectstreams ・ openmode ・ pagelayout ・
portfolio ・ rolemap ・ search ・ uri ・ viewerpreferences
詳細
こ の関数は、 生成 さ れた PDF 文書を完了 し 、 文書に関連する リ ソ ース をすべて解放 し 、 そ
の PDF 文書が begin_document( ) で開かれていた と き には出力フ ァ イ ルを閉 じ ます。 こ の
関数は、 PDF 文書を開いた と き の手段が何であ ろ う と 、 ク ラ イ ア ン ト がすべてのページ を
生成 し おわっ た時点で呼び出す必要があ り ます。
文書を メ モ リ 内に生成 し た と き は (フ ァ イ ル上でな く )、 その文書のバ ッ フ ァ は こ の関
数を呼び出 し た後 も 保持 さ れ (get_buffer( ) で取 り 出せ る よ う に)、次に begin_document( )
を呼び出 し た と き か、 ま たは PDFlib オブジ ェ ク ト が ス コ ープ外に出た と き に解放 さ れま
す。
スコープ 文書。 こ の関数は文書ス コ ープを終了 さ せます。 対応する begin_document( ) 関数 と 必ず
対に し て呼び出す必要があ り ます。
表 3.1 begin_document( ) ・ end_document( ) の文書オプ シ ョ ン一覧
オプ シ ョ ン
action
1
説明
(ア ク シ ョ ン リ ス ト 。 PDF/A では不可) 以下のイ ベン ト (複数可) に対する文書ア ク シ ョ ンの リ ス
ト 。 デ フ ォル ト : 空 リ ス ト 。
open
文書が開かれた時に実行 さ せたいア ク シ ョ ン。 Acrobat 内の実行順序の関係上、 文書レ
ベルの JavaScript は open ア ク シ ョ ン と し て使え ません。
didprint/didsave/willclose/willprint/willsave
(PDF 1.4) 文書の印刷後 / 文書の保存後 / 文書を閉 じ る前 / 文書の印刷前 / 文書の保存
前に実行 さ せたい JavaScript ア ク シ ョ ン。
attachmentpassword2 , 3
(文字列。 PDF 1.6。 userpassword か masterpassword を設定 し ている と きは無視 さ れます。
linearize ・ optimize オプ シ ョ ン と の併用は不可) フ ァ イル添付が、 指定文字列をパスワー ド と し
て暗号化 さ れます。 文書のそれ以外は暗号化 さ れません。
attachments (オプ シ ョ ン リ ス ト の リ ス ト ) 文書レ ベルの フ ァ イル添付を指定 し ます (ページ上の特定箇所に結
びつ く 添付注釈 と は異な り ます)。 begin_document( ) と end_document( ) の両方で フ ァ イル添付を与
え て も かまいません。 使え るオプ シ ョ ン :
description (ハイパーテキス ト 文字列。 PDF 1.6) フ ァ イルに関する説明テキス ト 。
filename
(ハイパーテキス ト 文字列。 必須) フ ァ イルの名前。 Unicode フ ァ イル名は使え ますが、
ただ し Acrobat で正 し く 表示 さ れる ためには PDF 1.7 が必要です。
mimetype (文字列) フ ァ イルの MIME タ イ プ。 Acrobat は、 添付が開かれた時に、 適切な ア プ リ
ケーシ ョ ン を起動 さ せる ために こ れを用います。
name
autoxmp
34
(ハイパーテキス ト 文字列) 添付の名前。 デ フ ォル ト : filename からパス要素をすべて
除いた も の
(論理値。 PDF/X-3/4/5 ・ PDF/A-1 モー ド では true を強制 さ れます) true にする と 、 PDFlib は文
書情報 フ ィ ール ド か ら XMP 文書 メ タ デー タ を作成 し ます (225 ページ 「14.2 XMP メ タ デー タ 」 参
照)。 デ フ ォ ル ト : false
第 3 章 : 文書 ・ ページ関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 3.1 begin_document( ) ・ end_document( ) の文書オプ シ ョ ン一覧
オプ シ ョ ン
説明
compatibility2 (キーワー ド 。 pdfx ・ pdfa オプ シ ョ ンのいずれかが none 以外の値で用い られている と きは無視 さ
れます) 文書の PDF バージ ョ ン を、 以下に挙げるキーワー ド のいずれかに設定 し ます。 こ のオプ
シ ョ ンは、 どの PDF 生成機能が利用可能か と 、 どの PDF 文書を PDFlib+PDI で取 り 込めるかに影響
を与え ます (デ フ ォル ト : 1.7) :
1.3
PDF 1.3。 Acrobat 4 以上が必要です。
1.4
PDF 1.4。 Acrobat 5 以上が必要です。
1.5
PDF 1.5。 Acrobat 6 以上が必要です。
1.6
PDF 1.6。 Acrobat 7 以上が必要です。
1.7
PDF 1.7。 ISO 32000-1 で定義 さ れてお り 、 Acrobat 8 以上が必要です。
1.7ext3
PDF 1.7 拡張レ ベル 3。 Acrobat 9 以上が必要です。 1.7ext8PDF 1.7 拡張レ ベル 8。
Acrobat X 以上が必要です。
createpvf2
(論理値) true にする と 、 PDF フ ァ イルを フ ァ イル上で な く メ モ リ 内に生成 し ます。 与え る フ ァ イ
ル名は、 end_document( ) の呼び出 し によ っ て生成 さ れる仮想 フ ァ イルの名前です。 こ の場合、 PDF
出力デー タ を取 り 出すために get_buffer( ) を呼び出す こ と はで き ません。 かわ り に、 生成 さ れた
PVF フ ァ イルの名前を、 他の PDFlib 関数に与え る こ と がで き ます。 こ れは、 PDF ポー ト フ ォ リ オ
に含める文書を生成する と き に有用で し ょ う 。 デ フ ォ ル ト : false
destination
(オプ シ ョ ン リ ス ト 。 文書を開 く ア ク シ ョ ン を指定 し ている と きは無視 さ れます) 文書を開 く ア ク
シ ョ ン を表 12.5 に従っ て指定 し たオプ シ ョ ン リ ス ト 。
destname1
(ハイパーテキス ト 文字列。 destination オプ シ ョ ン を指定 し ている と きは無視 さ れます) 文書を
開 く ア ク シ ョ ン と し て使わせたい、 add_nameddest( ) で定義 し てあ る移動先の名前。
groups2
(文字列の リ ス ト ) 文書で使いたいページグループの名前 と 順序を定義 し ます。 ページグループは
複数のページ を ま と めます (ページ ラ ベルをつける と き な どに有用です)。 文書で定義 し たページ
グループの 1 つにページ を割 り 当てて、 そのグループの中で指 し 示す こ と がで き ます。 文書で
ページグループ を定義 し た と きは、 すべてのページ をページグループに割 り 当て る必要があ り ま
す。
inmemory2
(論理値) true にする と 、 linearize か optimize オプ シ ョ ン も true に し た と きは、 PDFlib は線形
化のための一時 フ ァ イルを一切作成せず、 フ ァ イルを メ モ リ 内で処理 し ます。 こ れはシ ス テムに
よ っ ては (特に MVS)、 驚異的な速度向上につなが り ますが、 文書のサイ ズの 2 倍の メ モ リ が必要
にな り ます。 false にする と 、 線形化 ・ 最適化のために一時フ ァ イルが作成 さ れます。 デ フ ォル
ト : false
labels
(オプ シ ョ ン リ ス ト の リ ス ト ) シ ンボ リ ッ ク なページ名を表 3.2 に従 っ て指定 し たオプ シ ョ ン リ ス
ト (複数可) を内容 と し て持つ リ ス ト 。 こ のページ名は Acrobat のス テー タ スバーにページ ラ ベル
と し て表示 さ れます (ページ番号のかわ り に)。 style ・ prefix ・ start 値の組み合わせが文書内で
一意であ る必要があ り ます。 デ フ ォ ル ト : none
lang2
(文字列。 tagged=true に し ている と きは推奨) 文書の自然言語を、 2 字の ISO 639 言語 コ ー ド で設
定 し ます (例 : DE ・ EN ・ FR ・ JA)。 その後に、 ハイ フ ン と 2 字の ISO 3166 国 コ ー ド をつける こ と
も 可能です (例 : EN-US ・ EN-GB ・ ES-MX)。 大文字 ・ 小文字は区別 さ れません。
こ の言語指定は、 構造ツ リ ーのあ ら ゆる レ ベルで個々のア イ テムについて上書き で き ますが、 は
じ めに文書の全体について設定 し てお く 必要があ り ます。
linearize2
(論理値) true にする と 出力文書は線形化 さ れます。 デ フ ォ ル ト : false
masterpassword2, 3
(文字列。 permissions を指定 し ている と きは必須。 PDF/A ・ PDF/X では不可) 文書のマス タ ーパ
スワー ド 。 空にする と マ ス タ ーパスワー ド は適用 さ れません。 デ フ ォ ル ト : 空
3.1 文書関数
35
表 3.1 begin_document( ) ・ end_document( ) の文書オプ シ ョ ン一覧
オプ シ ョ ン
説明
metadata
(オプ シ ョ ン リ ス ト 。 PDF 1.4) 文書の XMP メ タ デー タ を与え ます (225 ページ 「14.2 XMP メ タ
デー タ 」 参照)。 こ の XMP は、 set_info( ) で与え ている文書情報項目を上書き し ます。 PDF/A モー
ド では、 与え る XMP メ タ デー タ が準拠するべき要請が追加 さ れます (PDFlib チ ュ ー ト リ アル参
照)。
moddate
(論理値) true にする と 、 い く つかのプ リ フ ラ イ ト ツールに準拠する ために ModDate (更新日時)
文書情報キーが作成 さ れます。 デ フ ォル ト : false
objectstreams2 (キーワー ド の リ ス ト 。 PDF 1.5。 optimize または linearize が true の と きは false が強制 さ れま
す) 出力フ ァ イルサイ ズを劇的に縮小する、 圧縮 さ れたオブ ジ ェ ク ト ス ト リ ーム群を生成 し ます
(デ フ ォル ト : {other nodocinfo}) :
bookmarks し お り オブ ジ ェ ク ト 群を圧縮 し ます。
docinfo
文書情報 フ ィ ール ド 群を圧縮 し ます。
fields
フ ォ ーム フ ィ ール ド 群を圧縮 し ます。
names
名前付き参照先を持つオブ ジ ェ ク ト 群を圧縮 し ます。
none
圧縮 さ れたオブ ジ ェ ク ト ス ト リ ームを一切生成 し ません ( こ のオプ シ ョ ンの後で明示的
に有効に さ れた カ テ ゴ リ 群を除いて)。
other
こ のキーワー ド の後で明示的に無効に さ れなか っ たすべてのカ テ ゴ リ 、 およびその他の
自身のキーワー ド を持たないオブ ジ ェ ク ト 種別群。
pages
ページ ツ リ ーを構成する オブ ジ ェ ク ト 群を圧縮 し ます。
tags
マー ク さ れた内容 タ グ群を圧縮 し ます。
xref
圧縮 さ れた xref ス ト リ ームを生成 し ます。 このカ テ ゴ リ は、 他のカ テ ゴ リ を 1 つで も
有効にする と 自動的に有効にな り ます。
none ・ other 以外のすべてのキーワー ド は、 頭に no をつけて (例 : nodocinfo) そのカ テ ゴ リ の圧
縮を無効にする こ と がで き ます。 こ のよ う な否定キーワー ド を 1 つで も与え る と 、 キーワー ド
other は リ ス ト の先頭に付加 さ れます。
openmode
(キーワー ド ) 文書を開いた時の表示方式を設定 し ます。 デ フ ォ ル ト : 文書に し お り があ る な ら
bookmarks、 なければ none。
none
2
パネルを追加表示せずに開き ます。
bookmarks
し お り パネルを表示 し て開き ます。
thumbnails
ページパネルを表示 し て開き ます。
fullscreen
全画面表示で開き ます (ブ ラ ウザでは効果な し )。
layers
(PDF 1.5) レ イ ヤーパネルを表示 し て開き ます。
attachments
(PDF 1.6) フ ァ イル添付パネルを表示 し て開き ます。
optimize
(論理値) true にする と 、 出力文書が生成 さ れた後、 別途のパス で最適化 さ れます。 最適化は、 冗
長な重複オブ ジ ェ ク ト を除いて フ ァ イルサイ ズを小 さ く し ます。 通常、 ク ラ イ ア ン ト コ ー ド に非
効率がある場合 (同一画像や同一 ICC プ ロ フ ァ イルを、 ハン ド ルの再利用をせずに、 何度も読み
込んだ場合な ど) を除き、 最適化は目立 っ た効果を も た ら し ません。 デ フ ォル ト : false
pagelayout
(キーワー ド ) 文書を開いた時に使わせたいページ レ イ アウ ト 。 デ フ ォ ル ト : default。
36
default
Acrobat ビ ュ ーアのデ フ ォ ル ト 設定。
singlepage
1 ページずつ表示。
onecolumn
ページ を縦一列に並べて表示。
twocolumnleft
ページ を見開き で、 奇数ページ を左に表示。
twocolumnright
ページ を見開き で、 奇数ページ を右に表示。
twopageleft
(PDF 1.5) 2 ページずつ、 奇数番号ページ を左に表示。
twopageright
(PDF 1.5) 2 ページずつ、 奇数番号 ページ を右に表示。
第 3 章 : 文書 ・ ページ関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 3.1 begin_document( ) ・ end_document( ) の文書オプ シ ョ ン一覧
オプ シ ョ ン
説明
pdfa2
(キーワー ド ) PDF/A 準拠レ ベルを、 PDF/A-1a:2005 ・ PDF/A-1b:2005 ・ none のいずれかに設定 し
ます。 PDF/A-1a:2005 の場合、 タ グ付き PDF モー ド が自動的に有効にな り ます。 PDF/A-1 出力は
同時に、 pdfx オプ シ ョ ンの PDF/X-1a:2003 ・ PDF/X-3:2003 ・ PDF/X-4 設定に準拠 さ せる こ と が可能
です。 デ フ ォル ト : none
pdfx2
(キーワー ド ) PDF/X 準拠レ ベルを、 PDF/X-1a:2001 ・ PDF/X-1a:2003 ・ PDF/X-3:2002 ・ PDF/X3:2003 ・ PDF/X-4 ・ PDF/X-4p ・ PDF/X-5g ・ PDF/X-5pg ・ none のいずれかに設定 し ます。 デ フ ォル
ト : none
permissions2
(キーワー ド の リ ス ト 。 PDF/A ・ PDF/X では不可) 出力文書に対する利用権限の リ ス ト 。 以下の
キーワー ド を任意の数入れら れます (デ フ ォル ト : 空)。
noprint
Acrobat で フ ァ イルを印刷で き ないよ う に し ます。
nohiresprint
(PDF 1.4) Acrobat で高解像度印刷がで き ないよ う に し ます。 noprint を設定 し ていない
と きは、 「画像 と し て印刷」 機能でページ を低解像度で レ ン ダ リ ング し た もの し か印刷
で き な く な り ます。
nomodify Acrobat でページの編集 ・ 切 り 抜き と フ ォ ーム フ ィ ール ド の追加 ・ 変更を で き ないよ う
に し ます。
noassemble (PDF 1.4。 nomodify を含む) Acrobat でページの追加 ・ 削除 ・ 回転 と し お り ・ サムネー
ルの作成がで き ないよ う に し ます。
noannots Acrobat で し お り ・ フ ォ ーム フ ィ ール ド の追加 ・ 変更を で き ないよ う に し ます。
noforms
(PDF 1.4。 nomodify ・ noannots を含む) Acrobat で フ ォ ーム フ ィ ール ド への記入を で き
ないよ う に し ます。
nocopy
Acrobat で テキス ト ・ グ ラ フ ィ ッ クの コ ピー ・ 抽出を で き ないよ う に し ます。 ア ク セ シ
ビ リ テ ィ イ ン タ フ ェ ースは noaccessible で制御 し ます。
noaccessible
(PDF 1.4) Acrobat でア ク セシ ビ リ テ ィ 目的 (読み上げプ ログ ラ ムな ど) でのテキス ト
やグ ラ フ ィ ッ ク の抽出がで き ないよ う に し ます。
plainmetadata
(PDF 1.5) 暗号化 し た文書に対 し て も、 XMP 文書 メ タ デー タ を暗号化 し ないま まに し ま
す。
portfolio1
(オプ シ ョ ン リ ス ト 。 PDF 1.7) 表 12.16 に従 っ た、 PDF ポー ト フ ォ リ オ を生成する ためのサブオプ
シ ョ ン群
rolemap2
(対の リ ス ト 。 各対の 1 番目の項目は名前文字列、 2 番目の項目は文字列。 タ グ付き PDF に対 し て
のみ) カ ス タ ム要素種別から 標準要素種別へのマ ッ ピ ング。 各対は、 標準またはカ ス タ ムの要素
種別の名前 と 、 そのカ ス タ ム種別を マ ッ プ さ せたい標準要素種別の名前を内容 と し て持ち ます。
既存の要素種別に対 し て別のセマ ン テ ィ ク ス を割 り 当て る ために、 標準要素種別を、 別の種別へ
マ ッ プする こ と がで き ます。 タ グ付き PDF における カ ス タ ム要素種別の使用については 227 ペー
ジ 「14.3 タ グ付き PDF」 を参照 し て く だ さ い。
search
(オプ シ ョ ン リ ス ト ) 文書を開 く 時に検索イ ンデ ッ ク ス を読み込むよ う Acrobat に命令 し ます。 使
え るサブオプ シ ョ ン :
filename (ハイパーテキス ト 文字列。 必須) 検索イ ンデ ッ ク スの入っ た フ ァ イルの名前。 こ のイ
ンデ ッ ク スのフ ァ イル名は文書に対する相対指定で も よいですが、 正 し い イ ンデ ッ ク ス
フ ァ イル名を与え るのはユーザー側の役割 と な り ます。
indextype (名前文字列) イ ンデ ッ ク スの種類で、 Acrobat では PDX と する必要があ り ます。 デ フ ォ
ル ト : PDX
3.1 文書関数
37
表 3.1 begin_document( ) ・ end_document( ) の文書オプ シ ョ ン一覧
オプ シ ョ ン
説明
tagged2
(論理値。 PDF 1.4) true にする と タ グ付き PDF 出力が生成 さ れます。 タ グ付き PDF モー ド では、
ク ラ イ ア ン ト は適切な構造情報を与え る必要があ り ます (227 ページ 「14.3 タ グ付き PDF」 参照)。
pdfa オプ シ ョ ンの値が PDF/A-1a:2005 の と きは、 こ のオプ シ ョ ンは自動的に true を強制 さ れま
す。 デ フ ォル ト : false
tempdirname2 (文字列) linearize ・ optimize オプ シ ョ ン で必要な一時 フ ァ イルを作成 し たいデ ィ レ ク ト リ の名
前。 空にする と 、 PDFlib はカ レ ン ト デ ィ レ ク ト リ に一時 フ ァ イルを生成 し ます。 tempfilenames オ
プ シ ョ ン を与え ている と きは このオプ シ ョ ンは無視 さ れます。 デ フ ォル ト : 空
uri
(文字列) 文書にベース URL を設定 し ます。 こ れは、 他の文書への相対 Web リ ン ク を持っ た文書
を他の所へ移す と き に便利です。 ベース URL を 「元の」 場所に設定 し ておけば、 相対 リ ン クは確
実に有効であ り つづけます。 デ フ ォ ル ト : none
userpassword2, 3
(文字列。 PDF/A ・ PDF/X では不可) 文書のユーザーパスワー ド 。 空にする と ユーザーパスワー ド
は適用 さ れません。 デ フ ォ ル ト : 空
viewerpreferences
(オプ シ ョ ン リ ス ト ) さ ま ざ ま な表示設定を表 3.3 に従 っ て指定 し たオプ シ ョ ン リ ス ト 。 デ フ ォ ル
ト :空
1. end_document( ) のみ
2. begin_document( ) のみ
3. パスワー ド では、Winansi エ ン コ ーデ ィ ン グ外のキ ャ ラ ク タ は、PDF 1.7 拡張レ ベル 3 以上が生成 さ れる と き にのみ許 さ れます。
表 3.2 begin/end_document( ) の labels オプ シ ョ ン と begin/end_page_ext( ) の label オプ シ ョ ンのサブオプ シ ョ ン一
覧
オプ シ ョ ン
説明
group
(文字列。 begin_document( ) のみ。 文書がページグループ を使 っ ている と きは必須、 そ う で ない と
きは禁止) 指定する グループの全ページに ラ ベルが適用 さ れます。 後続するグループについて も、
新たな ラ ベルを適用する ま では こ のラ ベルが全ページに適用 さ れつづけます。 グループ名は、
begin_document( ) の groups オプ シ ョ ン で定義 し てある必要があ り ます。
pagenumber (整数。 end_document( ) のみ。 文書がページグループ を使 っ ていない と きは必須、 そ う でない と き
は禁止) 指定するページに ラ ベルが適用 さ れます。 後続するページについて も、 新たな ラ ベルを
適用する ま では このラ ベルが適用 さ れつづけます。
prefix
(ハイパーテキス ト 文字列) 範囲内のすべてのラ ベルにつけたい ラ ベル接頭辞。 デ フ ォル ト : な し
start
(整数≧ 1) 範囲内の最初のラ ベルに与えたい数値。 範囲内の後続するページに も、 こ の値に続け
て番号が振ら れてい き ます。 デ フ ォ ル ト : 1
style
(キーワー ド ) 使いたい番号ス タ イル。 デ フ ォ ル ト : none。
38
none
ページ番号な し 。 すなわち ラ ベルの中身は接頭辞だけにな り ます。
D
10 進ア ラ ビ ア数字 (1, 2, 3, ...)
R
大文字ローマ数字 (I, II, III, ...)
r
小文字ローマ数字 (i, ii, iii, ...)
A
大文字アルフ ァ ベ ッ ト (A, B, C, ..., AA, BB, CC, ...)
a
小文字アルフ ァ ベ ッ ト (a, b, c, ..., aa, bb, cc, ...)
第 3 章 : 文書 ・ ページ関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 3.3 begin_document( ) ・ end_document( ) の viewerpreferences オプ シ ョ ンのサブオプ シ ョ ン一覧
オプ シ ョ ン
説明
centerwindow (論理値) 文書のウ ィ ン ド ウ を画面の中央に置 く かど う かを指定 し ます。 デ フ ォ ル ト : false
direction
(キーワー ド ) 文書の閲覧方向。 見開き表示でのス ク ロール順序に対 し て効力を持ち ます (デ フ ォ
ル ト : l2r)。
l2r
左から右へ
r2l
右から左へ (縦書き な ど)
displaydoctitle (論理値) Acrobat の タ イ ト ルバーに Title 文書情報 フ ィ ール ド を表示するか (true)、 それ と も
フ ァ イル名を表示するか (false) を指定 し ます。 デ フ ォル ト : false
duplex
(キーワー ド 。 PDF 1.7) 印刷ダ イ ア ログの用紙の扱いのオプ シ ョ ン (デ フ ォル ト : none)。
DuplexFlipShortEdge
両面印刷 し て短辺を綴 じ る。
DuplexFlipLongEdge
両面印刷 し て長辺を綴 じ る。
fitwindow
用紙の扱い を設定 し ない。
Simplex
片面印刷。
(論理値) 文書のウ ィ ン ド ウ を先頭ページの大き さ に合わせるかど う かを指定 し ます。 デ フ ォ ル
ト : false
hidemenubar1
hidetoolbar
none
1
(論理値) Acrobat の メ ニ ュ ーバーを隠すかど う かを指定 し ます。 デ フ ォ ル ト : false
(論理値) Acrobat のツールバーを隠すかど う かを指定 し ます。 デ フ ォル ト : false
hidewindow- (論理値) Acrobat のウ ィ ン ド ウ コ ン ト ロールを隠すかど う かを指定 し ます。 デ フ ォル ト : false
ui1
nonfullscreenpagemode
(キーワー ド 。 openmode オプ シ ョ ン を fullscreen に設定 し ている と きのみ意味を持ち ます) 全画
面表示か ら抜けた時の文書の表示方式を指定 し ます。 デ フ ォ ル ト : none
bookmarks
ページ と し お り パネルを表示
thumbnails
ページ と ページパネルを表示
layers
ページ と レ イ ヤーパネルを表示
none
ページだけを表示
3.1 文書関数
39
表 3.3 begin_document( ) ・ end_document( ) の viewerpreferences オプ シ ョ ンのサブオプ シ ョ ン一覧
オプ シ ョ ン
説明
numcopies
(整数で範囲 1 ~ 5、 PDF 1.7) 印刷ダ イ ア ログの部数。 デ フ ォ ル ト : ビ ュ ーア依存
picktraybypdfsize
(論理値。 PDF 1.7。 Mac OS では効果な し ) 印刷ダ イ ア ログで PDF のページサイ ズに合わせて給紙
ト レ イ を選択するかど う かを指定 し ます。 デ フ ォ ル ト : ビ ュ ーア依存
printscaling
(キーワー ド 。 PDF 1.6) 文書で印刷ダ イ ア ロ グ を出 し た と き に選択 さ せてお き たい、 ページの拡縮
の選択肢。 使え るキーワー ド (デ フ ォル ト : appdefault) :
none
ページの拡縮な し 。 ページの内容を正確な大き さ で印刷 さ せたい と き に有用です。
appdefault Acrobat で指定 さ れている カ レ ン ト の印刷の拡縮を使用 し ます。
printpagerange
(整数対の リ ス ト 。 PDF 1.7) 印刷ダ イ ア ログのページ番号。 各対は、 印刷 し たいページ範囲の開始
ページ と 終了ページの番号を表 し ます (先頭ページが 1)。 デ フ ォ ル ト : ビ ュ ーア依存
printarea
printclip
viewarea
viewclip
(キーワー ド 。 PDF/X では media ・ bleed のみ可) 文書を画面表示 ・ 印刷する時に表示 ・ 断ち切 り
し たいページ領域を表すページ境界枠の種類。 Acrobat は この設定を無視 し ますが、 他のア プ リ
ケーシ ョ ン では有用かも し れません。 使え るキーワー ド (デ フ ォル ト : crop) :
art
ArtBox を使用
bleed
BleedBox を使用
crop
CropBox を使用
media
MediaBox を使用
trim
TrimBox を使用
1. Acrobat 8 以上では、 hidemenubar と hidetoolbar と hidewindowui の組み合わせ (すなわちすべてのユーザー イ ン タ フ ェ ー
ス要素を隠す) には対応 し ていません。 こ れ ら 3 つの要素を hidden に設定 し て も メ ニ ュ ーバーは依然表示 さ れます。
40
第 3 章 : 文書 ・ ページ関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
3.2 PDF 文書 を メ モ リ か ら 取得
空でない filename パ ラ メ タ が begin_document( ) に与え ら れてい る と き 、 PDFlib は名前付
き デ ィ ス ク フ ァ イ ルに PDF 文書を書 き 込みます。 あ る いは、 filename パ ラ メ タ が空であ
れば、 PDF 文書は メ モ リ 内に生成 さ れます。 こ の場合、 PDF 文書デー タ は メ モ リ か ら get_
buffer( ) で取得す る 必要があ り ます。 こ れは と り わけ、 PDF を Web サーバか ら 頒布す る と
き に有用です。
VB RB Function get_buffer( )
C# byte[] get_buffer( )
PDF 出力バ ッ フ ァ の内容を得ます。
戻り値
ク ラ イ ア ン ト 側で消費す る ためのバ イ ナ リ PDFデー タ で満た さ れたバ ッ フ ァ 。多 く のCOM
ク ラ イ ア ン ト はバ ッ フ ァ 内容の保持にバ リ ア ン ト 型を用い ます。 JavaScript で COM を使
う 場合は、 返 さ れ る バ リ ア ン ト 配列の長 さ を取得する こ と が許 さ れません ( し か し 他の言
語 と COM ではそれは動作 し ます)。 返 さ れたバ ッ フ ァ は、 ク ラ イ ア ン ト で他の何 ら かの
PDFlib 関数を呼び出す前に使 う 必要があ り ます。 他の PDFlib 関数をいろいろ呼び出 し な
が ら こ のデー タ も 使いたい と き は、 忘れずにデー タ を コ ピー し て く だ さ い (特に、 こ の
デー タ の入っ た PVF フ ァ イ ルを作成す る ために create_pvf( ) を呼び出す前には)。
詳細 生成 さ れた PDF デー タ の入っ たバ ッ フ ァ 全体ない し 一部分を取 り 出 し ます。 こ の関数が
ページ記述の合間に呼び出 さ れた と き は、 それま でに生成 さ れた PDF デー タ を返 し ます。
PDF を メ モ リ 内に生成 し てい る 場合は、 こ の関数は end_document( ) の後には少な く と も
呼び出す必要があ り 、 その と き に PDF 文書の残 り を返 し ます。 も っ と 前に呼び出 し て文
書デー タ を部分的に取 り 出 し て も よ いで し ょ う 。 こ の関数を 1 回だけ end_document( ) の
後に呼び出す場合は、 返 さ れ る バ ッ フ ァ にはその PDF 文書が ま る ご と ま と めて入っ てい
る こ と が保証 さ れます。
PDF 出力にはバ イ ナ リ キ ャ ラ ク タ が含まれてい ますので、 ク ラ イ ア ン ト ソ フ ト ウ ェ ア
側では、 null 値を含む印刷不可能キ ャ ラ ク タ を受け入れ る 態勢が必要です。
スコープ オブ ジ ェ ク ト ・ 文書 (言い換えれば、 end_page_ext( ) か ら begin_page_ext( ) ま での間か、
ま たは end_document( ) か ら delete( ) ま での間)。 こ の関数は、 begin_document( ) に空の
filename を与え てい る と き だけ使え ます。
begin_document( ) で linearize オプシ ョ ン を true に設定 し てい る と き は、 ス コ ープは
object に限 ら れますので、 すなわち こ の関数は end_document( ) の後で し か呼び出せませ
ん。
3.2 PDF 文書を メ モ リ から 取得
41
3.3 ページ関数
こ の節に関連す る パ ラ メ タ と 値のキー名を表 3.4 ・ 表 3.5 に示 し ます (21 ページ 「2.2 パ
ラ メ タ ・ オプシ ョ ン処理」 参照)。
表 3.4 get/set_parameter( ) のページ関連のキー一覧
キー
説明
topdown
true な ら、 ページ ・ パ タ ーン ・ テ ン プ レ ー ト が始ま る時の座標系は、 ページの左上隅が原点で、 y
座標が下向き に増加 し ます。 そ う で なければデ フ ォル ト 座標系が使われます。 詳 し く は PDFlib
チ ュ ー ト リ アルを参照 し て く だ さ い。 ス コ ープ : 文書。 デ フ ォル ト : false
表 3.5 get/set_value( ) のページ関連のキー一覧
キー
説明
pagewidth
pageheight
カ レ ン ト ページの大き さ (MediaBox の寸法) を得ます。 ス コ ープ : ページ ・ パス
VB RB Sub begin_page_ext(width As Double, height As Double, optlist As String)
C# void begin_page_ext(double width, double height, String optlist)
文書に新規ページ を追加 し て、 さ ま ざ ま なオプシ ョ ン を指定 し ます。
width・height 引数 width と height は、 新規ページの寸法を ポ イ ン ト 単位 (userunit オ
プシ ョ ン を指定 し て あ る と き はユーザー単位) で指定 し ます。 こ れ ら は同名のオプシ ョ ン
で上書 き で き ます (その場合、 引数にはダ ミ ーの値 0 を使えば よ いで し ょ う )。 広 く 利用
さ れ る ページ判型の一覧を表 3.6 に示 し ます。詳 し く は表 3.7 も 参照 し て く だ さ い(width・
height オプシ ョ ン)。
表 3.6 代表的な標準ページサイ ズの寸法をポ イ ン ト 単位で表 し た もの1
判型
幅
高さ
判型
幅
高さ
判型
幅
高さ
a0
2380
3368
a4
595
842
letter
612
792
a1
1684
2380
a5
421
595
legal
612
1008
a2
1190
1684
a6
297
421
ledger
1224
792
a3
842
1190
b5
501
709
11x17
792
1224
1. ISO ・ 日本 ・ 米国の標準形式に関する詳 し い情報は次の URL を参照 し て く だ さ い。
www.cl.cam.ac.uk/~mgk25/iso-paper.html
optlist 表 3.7 に従っ たオプシ ョ ン リ ス ト 。 こ れ ら のオプシ ョ ンは、 end_page_ext( ) で指
定す る 同等のオプシ ョ ン よ り も 優先順位が低いです。 以下のオプシ ョ ンが使え ます :
action ・ artbox ・ bleedbox ・ cropbox ・ defaultcmyk ・ defaultgray ・ defaultrgb ・ duration ・
group ・ height ・ label ・ mediabox ・ metadata ・ pagenumber ・ rotate ・ separationinfo ・
taborder ・ topdown ・ transition ・ transparencygroup ・ trimbox ・ userunit ・ viewports ・
width。
詳細
42
こ の関数は、 新規ページに対 し て、 テ キ ス ト ・ グ ラ フ ィ ッ ク ・ 色状態のパ ラ メ タ を、 すべ
てデフ ォ ル ト に リ セ ッ ト し ます。
第 3 章 : 文書 ・ ページ関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
スコープ 文書。 こ の関数はページ ス コ ープ を開始 さ せます。 対応す る end_page_ext( ) と 必ず対に
し て呼び出す必要があ り ます。
VB RB Sub end_page_ext(optlist As String)
C# void end_page_ext(String optlist)
ページ を終了 さ せて、 さ ま ざ ま なオプシ ョ ン を適用 し ます。
optlist 表 3.7 に従っ たオプシ ョ ン リ ス ト 。 end_page_ext( ) で指定す る オプシ ョ ンは、
begin_page_ext( ) で指定 し た同等のオプシ ョ ン よ り も 優先 さ れます。 以下のオプシ ョ ン
が使え ます :
action・artbox・bleedbox・cropbox・defaultcmyk・defaultgray・defaultrgb・duration・group・
height・label・mediabox・metadata・rotate・taborder・transition・transparencygroup・trimbox・
userunit ・ viewports ・ width
スコープ ページ。 こ の関数はページ ス コ ープ を終了 さ せます。 対応す る begin_page_ext( ) と 必ず対
に し て呼び出す必要があ り ます。
表 3.7 begin_page_ext( ) ・ end_page_ext( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
action
(ア ク シ ョ ン リ ス ト ) 以下のイ ベン ト (複数可) に対するページ ア ク シ ョ ンの リ ス ト (デ フ ォ ル
ト : 空リ ス ト ) :
open
ページ を開 く 時に実行 さ せたいア ク シ ョ ン。
close
ページ を閉 じ る時に実行 さ せたいア ク シ ョ ン。
artbox
bleedbox
cropbox
(矩形) カ レ ン ト ページのページ枠のパ ラ メ タ を変更 し ます。 座標はデ フ ォル ト 座標系で指定 し ま
す。 デ フ ォル ト : 枠項目な し
defaultgray
defaultrgb
defaultcmyk
(ICC ハン ド ル) 与え る プ ロ フ ァ イルハン ド ルに従っ て、 ページにデ フ ォル ト のグ レー ・ RGB ・
CMYK 色空間を設定 し ます。
duration
(float) openmode=fullscreen に し ている と き (表 3.1 参照)、 カ レ ン ト ページにページ表示時間を
秒単位で設定 し ます。 デ フ ォ ル ト : 1
group1
(文字列。 文書がページグループ を使 っ ている と きは必須、 そ う でない と きは禁止) ページ を属 さ
せたいページグループの名前。 この名前を使 う と 、 複数のページ を 1 つのページグループにま と
めて、 ページ を resume_page( ) で指定で き る よ う にな り ます。 このグループ名は、 begin_
document( ) で groups オプ シ ョ ン を使っ て定義 し てある必要があ り ます。
height
(float または キーワー ド 。 topdown オプ シ ョ ン またはパラ メ タ が true な ら禁止) 新規ページの寸
法をポ イ ン ト 単位 (userunit オプ シ ョ ン を指定 し てあ る と きはユーザー単位) で指定 し ます。 横
置きのページ を作るには、 width > height と するか、 または rotate オプ シ ョ ン を使います。
PDFlib は width と height を使 っ てページの MediaBox を作 り ますが、 MediaBox は明示的に
mediabox オプ シ ョ ン を使っ て設定する こ と も で き ます。 width ・ height オプ シ ョ ンは、 同名のパ
ラ メ タ を上書き し ます。
以下のシ ンボ リ ッ ク なページサイ ズ名の後に .width か .height を付けてキーワー ド と し て使 う こ
と も で き ます (例 : a4.width ・ a4.height)。
a0 ・ a1 ・ a2 ・ a3 ・ a4 ・ a5 ・ a6 ・ b5 ・ letter ・ legal ・ ledger ・ 11x17
3.3 ページ関数
43
表 3.7 begin_page_ext( ) ・ end_page_ext( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
label
(オプ シ ョ ン リ ス ト ) シ ンボ リ ッ ク なページ名を表 3.2 に従っ て指定 し たオプ シ ョ ン リ ス ト 。 こ の
ページ名は、 Acrobat のス テー タ スバーにページ ラ ベル と し て (ページ番号のかわ り に) 表示 さ れ
ます。 指定する付番方式はカ レ ン ト ページに使われるほか、 後続するページについて も、 ま た変
更する ま では こ の方式が使われつづけます。 style ・ prefix ・ start 値の組み合わせが文書内で一
意であ る必要があ り ます。
mediabox
(矩形。 topdown オプ シ ョ ン またはパラ メ タ が true な ら禁止) カ レ ン ト ページの MediaBox を変更
し ます。 座標はデ フ ォ ル ト 座標系で指定 し ます。 デ フ ォル ト では、 MediaBox は引数 width ・
height を使っ て作成 さ れます。 こ の mediabox オプ シ ョ ンは、 width ・ height オプ シ ョ ンおよびパ
ラ メ タ を上書き し ます。
metadata
(オプ シ ョ ン リ ス ト 。 PDF 1.4) ページに メ タ デー タ を与え ます (225 ページ 「14.2 XMP メ タ デー
タ 」 参照)。
pagenumber1
(整数) こ のオプ シ ョ ン で値 n を指定 し た と する と 、 ページは、 group オプ シ ョ ン で指定 し ている
ページグループ (文書がページグループ を使っ ていないな ら 文書) の既存の n 番目のページの前
に挿入 さ れます。 こ のオプ シ ョ ン を指定 し ない と 、 ページはグループの末尾に挿入 さ れます。
rotate
(整数) ページの回転値。 この回転は、 ページ表示に対 し て効力を持ち ますが、 座標系は変更 し ま
せん。 と り う る値は 0 ・ 90 ・ 180 ・ 270。 デ フ ォ ル ト : 0
separationinfo1
(オプ シ ョ ン リ ス ト ) カ レ ン ト ページに対する色分版の詳細を入れたオプ シ ョ ン リ ス ト 。 こ れは
Acrobat では無視 さ れますが、 サー ド パーテ ィ ソ フ ト ウ ェ ア では、 分版ページ を分版前工程におい
て見分けて正 し く プ レ ビ ュ ーするのに役立つか も し れません。
pages
(整数。 各色版ページセ ッ ト の先頭ページには必須、 同 じ セ ッ ト 内のそれ以降のページ
では不可) 多色ページ一枚の色デー タ を成す各色版ページ群のセ ッ ト 1 つに属するペー
ジの数。 セ ッ ト のページはすべて フ ァ イル内で連続 さ せてお く 必要があ り ます。
spotname (文字列。 spotcolor を与えていないな ら 必須) カ レ ン ト ページのためのイ ンキの名前。
spotcolor (スポ ッ ト カ ラ ーハン ド ル) カ レ ン ト ページのためのイ ンキを記述 し た カ ラ ーハン ド ル。
taborder
(キーワー ド 。 PDF 1.5) ページ上のフ ォ ーム フ ィ ール ド と 注釈に タ ブ順序を指定するキーワー ド
(デ フ ォル ト : none)。
column
注釈は段組みご と に上から下へ順に選ばれてい き、 段組みの順序は、 begin/end_
document( ) で viewerpreferences オプ シ ョ ンの direction サブオプ シ ョ ン で指定 し た
の と 同 じ にな り ます。
none
タ ブ順序を指定 し ません。
structure 注釈は構造ツ リ ー内での出現順に選ばれてい き ます。 構造ツ リ ーに入っ ていない注釈に
ついては順序は指定 さ れません。
row
注釈は上の行か ら下の行へ順に選ばれてい き、 行内での方向は、 begin/end_document( )
で viewerpreferences オプ シ ョ ンの direction サブオプ シ ョ ン で指定 し たの と 同 じ にな
り ます。
topdown1
44
(論理値) true にする と 、 ページが始ま る時の座標系は、 ページの左上隅が原点で、 y 座標が下向
き に増加 し ます。 そ う でなければデ フ ォ ル ト 座標系が使われます。 デ フ ォ ル ト : false
第 3 章 : 文書 ・ ページ関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 3.7 begin_page_ext( ) ・ end_page_ext( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
transition
(キーワー ド ) openmode=fullscreen に し ている と き (表 3.1 参照)、 カ レ ン ト ページにページ効果
を設定 し て特殊な表示遷移を さ せます。 こ れは、 PDF を Acrobat で全画面表示 し て プ レゼン テー
シ ョ ン を行 う 時に有用で し ょ う 。 デ フ ォル ト : replace
split
画面上に線が 2 本走っ てページが見え て く る
blinds
画面上に線が多数走っ てページが見え て く る
box
矩形から ページが見えて く る
wipe
画面上に線が 1 本走っ てページが見え て く る
dissolve
元ページが溶けてページが見え て く る
glitter
溶け効果が画面の一辺から他辺へ動いてい く
replace
単純に元ページから新ページに切 り 替わる
fly
(PDF 1.5) 元ページの中へ新ページが飛んで く る
push
(PDF 1.5) 元ページ を新ページが画面外へ押 し 出 し てい く
cover
(PDF 1.5) 元ページの上に新ページがすべ り 込んで く る
uncover
(PDF 1.5) 元ページが画面外へすべ り 出て新ページが見えて く る
fade
(PDF 1.5) 元ページから新ページが透けて く る
transparency (オプ シ ョ ン リ ス ト 。 PDF 1.4) ページ またはテ ン プ レー ト の透過グループ属性を指定 し ます。 使用
group
可能なオプ シ ョ ン :
colorspace (キーワー ド 。 必須) 透過グループの色空間を、 次のキーワー ド のいずれかで指定 し ま
す : DeviceGray ・ DeviceRGB ・ DeviceCMYK。
isolated
(論理値) 透過グループが分離 さ れているかを指定 し ます。 デ フ ォ ル ト : false
knockout (論理値) 透過グループが抜き グループかど う かを指定 し ます。 デ フ ォル ト : false
デ フ ォル ト : 複数ビ ッ ト か create_gstate( ) の opacityfill/opacitystroke オプ シ ョ ンの画像マス
ク がページ内にある と きは、 出力品質の向上のため、 次のオプ シ ョ ン リ ス ト が自動的に作成 さ れ
ます : transparencygroup={colorspace=DeviceRGB}
trimbox
(矩形) カ レ ン ト ページの TrimBox を指定 し ます。 座標はデ フ ォ ル ト 座標系で指定 し ます。 デ フ ォ
ル ト : TrimBox 項目な し
userunit
(float またはキーワー ド 。 PDF 1.6) ユーザー単位の大き さ をポ イ ン ト 単位で表 し た、 範囲 1 ~
75 000 の数。 またはキーワー ド mm ・ cm ・ m のいずれかを指定する と 、 その単位に拡大 さ れます。
ユーザー単位は、 実際のページ内容を変え ません。 それは Acrobat に対する ヒ ン ト で し かな く 、
ページ を印刷 し た り 、 計測ツールを使っ た り する と き に利用 さ れる だけです。 デ フ ォル ト : 1 (す
なわち 1 単位は 1 ポ イ ン ト )
viewports
(オプ シ ョ ン リ ス ト の リ ス ト 。 PDF 1.7ext3) ページ上の地理参照付き領域 (ビ ュ ーポー ト ) (複数
可) を指定 し ます。 詳 し く は 220 ページ 「13.2 地理空間機能」 を参照。
ビ ュ ーポー ト は、 ページ上の複数の領域 (複数の地図な ど) ご と に、 異な る地理空間参照
(georeference オプ シ ョ ン で指定 さ れる) を用いる こ と を可能に し ます。 ビ ュ ーポー ト リ ス ト 内の
オプ シ ョ ン リ ス ト 群の順序は、 重な り 合 う ビ ュ ーポー ト 群に対応 し ます。 すなわち、 あ る点を含
む最後のビ ュ ーポー ト が、 その点に対 し て用い られます。
width
(float または キーワー ド 。 topdown オプ シ ョ ン またはパラ メ タ が true な ら禁止) 先述の height オ
プ シ ョ ン を参照 し て く だ さ い。
1. begin_page_ext( ) のみ
3.3 ページ関数
45
VB RB Sub suspend_page(optlist As String)
C# void suspend_page(String optlist)
カ レ ン ト ページ を一時停止 し て、 後で再開で き る よ う に し ます。
optlist
詳細
将来使用す る ためのオプシ ョ ン リ ス ト 。
カ レ ン ト ページのグ ラ フ ィ ッ ク (図形 ・ 色 ・ テ キ ス ト な ど) ・ レ イ ヤー状態が内部的に保
存 さ れます。 こ れは後で resume_page( ) で再開 し て ま た内容を追加す る こ と がで き ます。
一時停止 し たページは、 再開 し なければ閉 じ る こ と がで き ません。
スコープ ページ。 こ の関数は文書ス コ ープ を開始 さ せます。 対応す る resume_page( ) と 必ず対に し
て呼び出す必要があ り ます。 こ の関数は、 タ グ付き PDF モー ド では使っ てはいけ ません。
VB RB Sub resume_page(optlist As String)
C# void resume_page(String optlist)
ページ を再開 し て、 ま たそれに内容を追加で き る よ う に し ます。
optlist 表 3.8 に従っ たオプシ ョ ン リ ス ト 。 以下のオプシ ョ ンが使え ます :
group ・ pagenumber
詳細 ページは、 suspend_page( ) で一時停止 し て あ る 必要があ り ます。 こ れが再び開かれて、 ま
た内容を追加で き る よ う にな り ます。 一時停止 し たページはすべて、 た と え も う 内容を追
加 し ていな く て も 、 再開 し なければ閉 じ る こ と がで き ません。
スコープ 文書。 こ の関数はページ ス コ ープを開始 さ せます。 対応する suspend_page( ) と 必ず対に
し て呼び出す必要があ り ます。
表 3.8 resume_page( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
group
(文字列。 文書がページグループ を使 っ ている と きは必須、 そ う で ない と きは禁止) 再開 さ れる
ページのページグループの名前。 こ のグループ名は、 begin_document( ) で groups オプ シ ョ ン を
使っ て定義 し てある必要があ り ます。
pagenumber (整数) こ のオプ シ ョ ン を与え る と 、 group オプ シ ョ ン で選んでいるページグループ (文書がペー
ジグループ を使っ ていないな ら文書) の、 指定 し た番号のページが再開 さ れます。 このオプ シ ョ
ン を与え ない と 、 グループの最終ページが再開 さ れます。
46
第 3 章 : 文書 ・ ページ関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
3.4 レ イ ヤー
ク ッ ク ブ ッ ク 完全な コ ー ド サン プルが ク ッ ク ブ ッ クの graphics/starter_layer ト ピ ッ ク にあ り ます。
VB RB Function define_layer(name As String, optlist As String) As Long
C# int define_layer(String name, String optlist)
新規レ イ ヤー定義を作成 し ます (要 PDF 1.5)。
name
(ハ イ パーテ キ ス ト 文字列) レ イ ヤーの名前。
optlist レ イ ヤー設定を表 3.9 に従っ て指定 し たオプシ ョ ン リ ス ト 。 以下のオプシ ョ ンが
使え ます :
> レ イ ヤー制御オプシ ョ ン群 :
creatorinfo ・ defaultstate ・ initialexportstate ・ initialprintstate ・ initialviewstate ・
intent ・ language ・ onpanel ・ pageelement ・ printsubtype ・ removeunused ・ zoom
戻り値
レ イ ヤーハン ド ル。 begin_layer( ) ・ set_layer_dependency( ) への呼び出 し で、 カ レ ン ト の
文書ス コ ープ を終え る ま で使え ます。
詳細
レ イ ヤーを定義 し たに も かかわ ら ず、 文書で使っ ていない と き は、 PDFlib は警告を発 し ま
す。 複数のページで使 う レ イ ヤーであ っ て も 、 その定義は 1 回だけ行 う べき です (た と え
ば最初のページ を作成す る 前に) 。 define_layer( ) を複数のページで繰 り 返 し 呼び出す と 、
レ イ ヤーの定義は蓄積 さ れて し ま い (た と え名前が同 じ で も ) 、 それは通常望む と こ ろで
はないで し ょ う 。
PDF/X : レ イ ヤーは PDF/X-1/2/3 では許 さ れてい ません。 PDF/X-4 ま たは PDF/X-5
で レ イ ヤーを使 う には、 い く つかのオプシ ョ ンが制限 さ れてお り 、 ま た、 少な く と も 2 個
の レ イ ヤーが set_layer_dependency( ) で指定 さ れてい る 必要があ り ます。
スコープ 文書 ・ ページ
表 3.9 define_layer( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
creatorinfo
(オプ シ ョ ン リ ス ト 。 PDF/X では不可) 内容 と 作成ア プ リ ケーシ ョ ン を記述 し たオプ シ ョ ン リ ス
ト 。 このオプ シ ョ ン を使 う と きは、 以下の両方の項目が必須です :
creator
(ハイパーテキス ト 文字列) レ イ ヤーを作成 し たア プ リ ケーシ ョ ンの名前
subtype
(文字列) 内容の種類。 推奨値は Artwork ・ Technical。
defaultstate
(論理値) レ イヤーをデ フ ォル ト で表示するかど う かを指定 し ます。 デ フ ォル ト : true
initialexportstate
(論理値。 PDF/X では不可) レ イ ヤーの推奨書き出 し 状態を指定 し ます。 true にする と 、 Acrobat
は、 以前の PDF バージ ョ ンや他の文書形式へ変換 ・ 書き出 し を行 う 際、 こ のレ イ ヤーを含めます。
デ フ ォル ト : true
initialprintstate
(論理値。 PDF/X では不可) レ イ ヤーの推奨印刷状態。 true にする と 、 Acrobat は、 文書を印刷す
る際、 こ のレ イ ヤーを含めます。 デ フ ォル ト : true
initialviewstate
(論理値。 PDF/X では不可) レ イ ヤーの推奨表示状態。 true にする と 、 Acrobat は、 文書を開いた
際、 このレ イ ヤーを表示 し ます。 デ フ ォル ト : true
intent
(キーワー ド ) グ ラ フ ィ ッ クの想定用途。 View ま たは Design。 デ フ ォ ル ト : View
3.4 レ イ ヤー
47
表 3.9 define_layer( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
language
(オプ シ ョ ン リ ス ト 。 PDF/X では不可) レ イ ヤーの言語を指定 し ます :
lang
(文字列。 必須) 言語を、 場合に よ っ てはロ ケール と あわせて、 表 3.1 の lang オプ シ ョ
ンについて説明 し た形式で指定 し ます
preferred (論理値) true にする と 、 レ イ ヤーは、 レ イ ヤー と シ ス テムの言語が部分的に一致する
だけで も 使われます。 デ フ ォ ル ト : false
onpanel
(論理値。 PDF/X では不可) false にする と 、 レ イ ヤーは Acrobat のレ イ ヤーパネルに表示 さ れず、
し たが っ てユーザーが操作で き な く な り ます。 デ フ ォ ル ト : true
pageelement (キーワー ド 。 PDF/X では不可) レ イ ヤーがページネーシ ョ ン アーテ ィ フ ァ ク ト を含んでいる こ と
を示 し ます。 HF (ヘ ッ ダ / フ ッ タ ) ・ FG (前面の画像またはグ ラ フ ィ ッ ク) ・ BG (背景の画像また
はグ ラ フ ィ ッ ク) ・ L (ロ ゴ) のいずれか 1 つ。
printsubtype (オプ シ ョ ン リ ス ト 。 PDF/X では不可) レ イ ヤーが印刷を想定 し ているかど う かを指定 し ます :
subtype
(キーワー ド ) レ イ ヤーの内容の種類を表す、 Trapping ・ PrintersMarks ・ Watermark の
いずれか 1 つ。
printstate (論理値) true にする と 、 Acrobat は印刷の際に このレ イ ヤーの内容を可視化 し ます。
removeunused (論理値) true にする と 、 レ イ ヤーがページ上で使われていない と きは、 こ のレ イ ヤーはそのペー
ジのレ イ ヤー一覧には表示 さ れな く な り ます。 レ イ ヤーがページ上で使われている と 見な さ れる
のは、 そのレ イ ヤーがそのページ上で少な く と も 1 回、 begin_layer( ) に与え られている と き です。
デ フ ォ ル ト : レ イ ヤーが、 listmode=visiblepages を用いて非デ フ ォ ル ト バ リ ア ン ト に含め ら れて
いないかぎ り 、 false。
zoom
(float かパーセ ン ト 値の リ ス ト 。 PDF/X では不可) 表示倍率によ る レ イ ヤーの表示切 り 替え を指定
する、 1 個か 2 個の値 (1.0 は表示倍率 100 パーセ ン ト を意味 し ます)。 値 1 個を与え る と 、 レ イ
ヤーの表示 さ れる最大の表示倍率 と し て使われます。 値 2 個を与え る と 、 最小 と 最大の表示倍率
を指定 し ます。 キーワー ド maxzoom を使 う と 、 可能な限 り 最大の表示倍率を指定する こ と がで き
ます。
VB RB Sub set_layer_dependency(type As String, optlist As String)
C# void set_layer_dependency(String type, String optlist)
レ イ ヤー間の階層 ・ グループ ・ ロ ッ ク 条件を定義 し ます (要 PDF 1.5)。
type
表 3.10 に従っ た、 依存ま たは関係の種別。
表 3.10 レ イヤーの依存 と 関係の種別一覧
種別
説明。 こ の種別に関連する オプ シ ョ ン
GroupAllOn
(PDF/X では不可) depend オプ シ ョ ン で指定する レ イ ヤーは、 group オプ シ ョ ン で指定する レ イ
ヤーがすべて表示 さ れている と き に表示 さ れます。 こ の種別に関連する オプ シ ョ ン : depend ・
group
GroupAnyOn (PDF/X では不可) depend オプ シ ョ ン で指定する レ イ ヤーは、 group オプ シ ョ ン で指定する レ イ
ヤーのいずれかが表示 さ れている と き に表示 さ れます。 この種別に関連する オプ シ ョ ン : depend ・
group
GroupAllOff
48
(PDF/X では不可) depend オプ シ ョ ン で指定する レ イ ヤーは、 group オプ シ ョ ン で指定する レ イ
ヤーがすべて隠 さ れている と き に表示 さ れます。 この種別に関連する オプ シ ョ ン : depend ・ group
第 3 章 : 文書 ・ ページ関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 3.10 レ イ ヤーの依存 と 関係の種別一覧
種別
説明。 こ の種別に関連する オプ シ ョ ン
GroupAnyOff
(PDF/X では不可) depend オプ シ ョ ン で指定する レ イ ヤーは、 group オプ シ ョ ン で指定する レ イ
ヤーのいずれかが隠 さ れている と き に表示 さ れます。 こ の種別に関連する オプ シ ョ ン : depend ・
group
Lock
(PDF 1.6) group オプ シ ョ ン で指定する レ イ ヤーはロ ッ ク さ れます。 すなわち、 レ イ ヤーの状態を
Acrobat で対話的に変更で き ません。 こ の種別に関連するオプ シ ョ ン : group
Parent
(PDF/X では不可) parent オプ シ ョ ン で指定する レ イ ヤー と 、 children オプ シ ョ ン で指定する レ
イ ヤー群 と の間に、 階層関係を指定 し ます。 1 つのレ イ ヤーを、 複数のレ イ ヤーに属 さ せる こ と は
で き ません。 こ の種別に関連する オプ シ ョ ン : children ・ parent
Radiobtn
group オプ シ ョ ン で指定する レ イ ヤーど う し の間に、 ラ ジオボ タ ン関係を指定 し ます。 すなわち、
そのグループのレ イ ヤーは、 同時に 1 つ し か表示 さ れな く な り ます。 こ れは と り わけ、 複数の言
語レ イ ヤーで有用です。 この種別に関連する オプ シ ョ ン : group
Title
(PDF/X では不可) parent オプ シ ョ ン で指定する レ イ ヤーハン ド ルは、 直接制御するページ内容
を一切持たず、 children オプ シ ョ ン で指定する レ イ ヤー群に対する親レ イ ヤー ノ ー ド と し ての役
目を持ち ます。 こ の種別に関連するオプ シ ョ ン : children ・ parent
Variant
文書バ リ ア ン ト 、 すなわち 1 個ない し 複数のレ イ ヤーの組み合わせを指定 し ます。 こ の後に set_
layer_dependency( ) を呼び出せば、 こ の設定に対する依存規則を指定する ために variantname オプ
シ ョ ン を も う 一度与え る こ と がで き ます。 こ の種別に関連するオプ シ ョ ン : basestate ・
defaultvariant ・ includelayers ・ invisiblelayers ・ visiblelayers
optlist レ イ ヤー依存を表 3.11 に従っ て指定 し たオプシ ョ ン リ ス ト 。 以下のオプシ ョ ン
が使え ます :
> レ イ ヤー依存オプシ ョ ン群 :
basestate ・ children ・ createorderlist ・ defaultvariant ・ depend ・ includelayers ・
invisiblelayers ・ group ・ visiblelayers ・ listmode ・ parent ・ variantname。
詳細
レ イ ヤー関係は、Acrobat の レ イ ヤーペーン内での レ イ ヤー名の表示を指定す る と と も に、
ユーザーが対話的に レ イ ヤーの表示・非表示を切 り 替えた時の 1 個ない し 複数の レ イ ヤー
の表示 ・ 非表示を も 指定 し ます。
バ リ ア ン ト は、 生産安全性を高め る ための、 複数レ イ ヤーの固定 さ れた組み合わせ と
と ら え る こ と がで き ます。 個々の レ イ ヤーを ユーザーに操作 さ せる のではな く 、 1 つのバ
リ ア ン ト と し て、 表示 ・ 非表示を切 り 替え さ せ る こ と がで き ます。 文書がバ リ ア ン ト を含
む と き 、 Acrobat 9 は個々の レ イ ヤー名を表示せず、 バ リ ア ン ト の名前のみを表示 し ます。
レ イ ヤーバ リ ア ン ト は、 Acrobat 9 で PDF/X 文書に対 し てのみ表示 さ れます。 Acrobat X
はレ イ ヤーバ リ ア ン ト を表示 し ません。
影響 を 受け る すべて の レ イ ヤーが同一のバ リ ア ン ト の一部で あ る わ け では な い レ イ
ヤーバ リ ア ン ト が存在す る 場合において依存を指定す る には、デフ ォ ル ト バ リ ア ン ト を設
定す る 前にその依存を設定す る 必要があ り ます。
PDF/X : レ イ ヤーは PDF/X-1/2/3 では許 さ れてい ません。 PDF/X-4 ま たは PDF/X-5
で レ イ ヤーを使 う には、 少な く と も 2 個の レ イ ヤーバ リ ア ン ト (すなわち type=Variant)
を指定す る 必要があ り ます。 type のい く つかの値は PDF/X では制限 さ れてい ます。
スコープ 文書 ・ ページ。 レ イ ヤー関係は、 すべての レ イ ヤーが定義 さ れた後に指定す る 必要があ り
ます。
3.4 レ イ ヤー
49
表 3.11 set_layer_dependency( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
basestate
(キーワー ド 。 type=Variant のみ。 PDF/X では不可) visiblelayers ・ invisiblelayers オプ シ ョ
ン で明示的に設定 さ れていないすべてのレ イ ヤーの表示 ・ 非表示を指定 し ます。 使え るキーワー
ド (デ フ ォル ト : on) :
on
選択 さ れたバ リ ア ン ト に対 し てすべてのレ イ ヤーが表示 さ れます。
off
選択 さ れたバ リ ア ン ト に対 し てすべてのレ イ ヤーが非表示にな り ます。
unchanged 選択 さ れたバ リ ア ン ト に対 し てすべてのレ イ ヤーの状態が変更 さ れず保持 さ れます。
children
(レ イ ヤーハン ド ルの リ ス ト 。 type=Parent ・ Title のみ) 与え ている親レ イ ヤーの子に し たい レ イ
ヤー群を指定する レ イ ヤーハン ド ル (複数可)。
createorderlist
(論理値。 type=Variant かつ defaultvariant=true の場合のみ) ユーザー イ ン タ フ ェ ースですべて
のレ イ ヤーを表すために用いる こ と ので き る /Order 配列の中へすべてのレ イ ヤーを含めます。 こ
のオプ シ ョ ン を true に設定する と 下記の影響があ り ます :
> Acrobat 9 は、 レ イ ヤーバ リ ア ン ト 群を、 レ イ ヤー名群の中ではな く 「レイヤー」パネル内に表
示 し ます。 Acrobat 9 は、 createorderlist に よ る文書に対 し ては PDF/X-4 検証エ ラ ーを出 し ま
す。 なぜな ら こ のオプ シ ョ ンは PDF/X-4:2008 では許 さ れていないから です。
> Acrobat X は、 レ イ ヤー名群を、 レ イ ヤーバ リ ア ン ト 群の中ではな く 「レイヤー」パネル内に表
示 し ます。 Acrobat X は、 createorderlist によ る文書の検証を成功 さ せます。 なぜな ら こ のオ
プ シ ョ ンは PDF/X-4:2010 では許 さ れているから です。
デ フ ォ ル ト : PDF/X では false、 それ以外では true
defaultvariant
(論理値。 type=Variant のみ) true にする と 、 指定 さ れたバ リ ア ン ト はデ フ ォ ル ト バ リ ア ン ト に
な り ます。 すなわち、 文書が開かれた時に表示 さ れます。 ち ょ う と 1 個のバ リ ア ン ト をデ フ ォ ル
ト バ リ ア ン ト に指定する必要があ り ます。 デ フ ォ ル ト : false
depend
(レ イ ヤーハン ド ル。 type=GroupAllOn ・ GroupAnyOn ・ GroupAllOff ・ GroupAnyOff のみ) group オ
プ シ ョ ン で指定 し ている レ イ ヤー群に制御 さ せたいレ イヤー。
group
(レ イ ヤーハン ド ルの リ ス ト 。 type=GroupAllOn ・ GroupAnyOn ・ GroupAllOff ・ GroupAnyOff ・
Radiobtn のみ) グループ を構成 さ せたい レ イ ヤーハン ド ル (複数可)。 type=Lock に し ている と き
は、 グループのレ イ ヤーはすべて ロ ッ ク さ れます。
includelayers (レ イ ヤーハン ド ルの リ ス ト 。 type=Variant のみ) バ リ ア ン ト に属する レ イ ヤー群を指定 し ます。
デ フ ォ ル ト : 文書ないでそれま でに定義 さ れたすべてのレ イ ヤー
invisiblelayers
(レ イ ヤーハン ド ルの リ ス ト 。 type=Variant のみ) 選択 さ れたバ リ ア ン ト に対 し て初期状態で非表
示にな る レ イ ヤー群の リ ス ト を指定 し ます。 1 つのレ イ ヤーをバ リ ア ン ト の visiblelayers リ ス ト
と invisiblelayers リ ス ト に同時に リ ス ト し てはいけません。 defaultvariant=true の と き、 こ の
オプ シ ョ ンは define_layer( ) の defaultstate オプ シ ョ ン を上書き し ます。 デ フ ォ ル ト (basestate
オプ シ ョ ンに依存) : basestate=off な ら ば includelayers リ ス ト 内のすべてのレ イ ヤー、
basestate=on な らば空 リ ス ト 。
listmode
(キーワー ド 。 type=Variant のみ) どのレ イ ヤー名群が Acrobat のレ イ ヤーペーンに表示 さ れるか
を指定 し ます。 使え るキーワー ド (デ フ ォ ル ト : visiblepages) :
allpages
すべてのページのすべてのレ イ ヤーの名前が表示 さ れます。
visiblepages その時表示 さ れているページのすべてのレ イ ヤーの名前が表示 さ れます。 こ れは、 その
バ リ ア ン ト に属するすべてのレ イ ヤーに対 し て removeunused=true を暗黙に前提 し ま
す。
Acrobat では こ れは、 defaultvariant=true の と き にのみ効果を持ち ます。
parent
50
(レ イ ヤーハン ド ル。 type=Parent ・ Title のみ) children オプ シ ョ ン で指定 し ている レ イ ヤー群
の親に し たい レ イ ヤー。
第 3 章 : 文書 ・ ページ関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 3.11 set_layer_dependency( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
variantname (ハイパーテキス ト 文字列。 type=Variant では必須) 選択 さ れたバ リ ア ン ト の名前。 type=Variant
の と きは、 各バ リ ア ン ト の名前を 1 回だけ指定する必要があ り ます。 type が Variant 以外の場合
のデ フ ォ ル ト : デ フ ォ ル ト のバ リ ア ン ト
visiblelayers
(レ イ ヤーハン ド ルの リ ス ト 。 type=Variant のみ) 選択 さ れたバ リ ア ン ト で初期状態で表示 さ れる
レ イ ヤー群の リ ス ト を指定 し ます。 1 つのレ イ ヤーをバ リ ア ン ト の visiblelayers リ ス ト と
invisiblelayers リ ス ト に同時に リ ス ト し てはいけません。 defaultvariant=true の と き、 こ のオ
プ シ ョ ンは define_layer( ) の defaultstate オプ シ ョ ン を上書き し ます。 デ フ ォル ト (basestate オ
プ シ ョ ンに依存) : basestate=on な らば includelayers リ ス ト 内のすべてのレ イ ヤー、
basestate=off な ら ば空 リ ス ト 。
VB RB Sub begin_layer(layer As Long)
C# void begin_layer(int layer)
ページ上の以後の出力に対 し て、 レ イ ヤーを開始 し ます (要 PDF 1.5)。
layer
詳細
レ イ ヤーのハン ド ル。 define_layer( ) で取得 し てお く 必要があ り ます。
こ の呼び出 し の後、 次に begin_layer( ) か end_layer( ) を呼び出すま でにページ上に配置す
る 内容はすべて、 指定す る レ イ ヤーの一部分にな り ます。 内容が表示 さ れ る か ど う かは、
レ イ ヤーの設定に依存 し ます。
こ の関数は、 指定 さ れた レ イ ヤーを活性化 し 、 その時点で活性な レ イ ヤーが も し あれ
ばそれを不活性化 し ます。
注釈 ・ 画像 ・ テ ンプ レー ト ・ フ ォーム フ ィ ール ド の レ イ ヤーは、 それぞれの関数で layer
オプシ ョ ン を使っ て制御す る こ と がで き ます。
スコープ ページ
VB RB Sub end_layer( )
C# void end_layer( )
すべての活性な レ イ ヤーを不活性化 し ます (要 PDF 1.5)。
詳細
こ の呼び出 し の後、 ページ上に配置す る 内容は、 ど の レ イ ヤーに も 属 し ません。 レ イ ヤー
はすべて、 ページの終わ り には閉 じ る 必要があ り ます。
レ イ ヤー A か ら レ イ ヤー B へ切 り 換え る には、 begin_layer( ) を 1 回呼び出せば充分で
す。明示的に end_layer( ) を呼び出 し て レ イ ヤーA を閉 じ る 必要はあ り ません。end_layer( )
が必要なのは、 無条件内容 (つねに表示 さ れ る ) を作成す る と き と 、 ページの終わ り に全
レ イ ヤーを閉 じ る と き だけです。
スコープ ページ
3.4 レ イ ヤー
51
52
第 3 章 : 文書 ・ ページ関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
4 フ ォ ン ト ・ テキス ト 関数
4.1 フ ォ ン ト 処理
こ の節に関連す る パ ラ メ タ と 値のキー名を表 4.1 に示 し ます (21 ページ 「2.2 パ ラ メ タ ・
オプシ ョ ン処理」 参照)。
表 4.1 get/set_parameter( ) のフ ォ ン ト 関連のキー一覧
キー ・ 説明
Encoding・FontAFM・FontPFM・FontOutline・HostFont
それぞれ、 UPR フ ァ イルで各カ テ ゴ リ に書 く の と 同 じ リ ソ ース フ ァ イル行。 複数回呼び出す と 、 内部の リ ス ト に
新 し い項目が追加 さ れます。 表 2.3 の resourcefile も 参照。 ス コ ープ : 任意
VB RB Function load_font(fontname As String, encoding As String, optlist As String) As Long
C# int load_font(String fontname, String encoding, String optlist)
フ ォ ン ト を検索 し て、 以後の利用に備え ます。
fontname (名前文字列) フ ォ ン ト の名前。 こ れはあ る いは、 こ のパ ラ メ タ を上書 き す る
fontname オプシ ョ ンで与え る こ と も で き ます。詳 し く は表 4.3 の fontname オプシ ョ ン を
参照。
encoding エ ン コ ーデ ィ ン グ の 名前。 こ れ は あ る い は、 こ の パ ラ メ タ を 上 書 き す る
encoding オプシ ョ ンで与え る こ と も で き ます。 詳 し く は表 4.3 の encoding オプシ ョ ン を
参照。エン コ ーデ ィ ン グ関連では以下の よ う な問題が よ く 起 こ り ますので留意 し て く だ さ
い:
> 8 ビ ッ ト エン コ ーデ ィ ン グ を与えたが、フ ォ ン ト が こ のエン コ ーデ ィ ン グに対す る グ リ
フ を一切持っ ていない、 ま たはフ ォ ン ト が標準日中韓フ ォ ン ト であ る 。
> builtin エン コ ーデ ィ ン グ を与えたが、 フ ォ ン ト が内蔵エン コ ーデ ィ ン グ を一切持っ て
いない。 こ れは TrueType フ ォ ン ト についてのみ起 こ り え ます。
> 定義済み CMap を与えたが、 フ ォ ン ト に一致 し ない。
optlist 下記のオプシ ョ ン群に よ る オプシ ョ ン リ ス ト :
> 一般オプシ ョ ン : errorpolicy (28 ページ 「2.5 例外処理」 参照)
> 表 4.3 に従っ た フ ォ ン ト 読み込みオプシ ョ ン群 :
ascender ・ autocidfont ・ autosubsetting ・ capheight ・ descender ・ dropcorewidths ・
embedding ・ encoding ・ fallbackfonts ・ fontname ・ fontstyle ・ initialsubset ・ keepfont ・
keepnative ・ linegap ・ metadata ・ monospace ・ optimizeinvisible ・ readfeatures ・
readkerning ・ readshaping ・ replacementchar ・ skipposttable ・ subsetlimit ・
subsetminsize ・ subsetting ・ unicodemap ・ vertical ・ xheight
戻り値
フ ォ ン ト ハン ド ル。 以後の info_font( ) と テ キ ス ト 出力関数 と 、 テ キ ス ト 書式オプシ ョ ン
font で使え ま す。 要求 さ れた フ ォ ン ト と エ ン コ ーデ ィ ン グの組み合わせが、 設定の問題
(た と えばフ ォ ン ト ・ メ ト リ ッ ク ・ エ ン コ ーデ ィ ン グ フ ァ イ ルが見つか ら ないか、 あ る い
は組み合わせの誤 り が検知 さ れた) が原因で読み込めない と き は、 エ ラ ー コ ー ド -1 が返
4.1 フ ォ ン ト 処理
53
さ れ る か例外が発生 し ます。 エ ラ ー動作は、 errorpolicy パ ラ メ タ ま たはオプシ ョ ンで変え
る こ と がで き ます。
関数が -1 を返 し た と き は、 その失敗の原因を get_errmsg( ) で取得す る こ と がで き ま
す。 そ う でない と き は、 こ の関数に よ っ て返 さ れた値を、 他の フ ォ ン ト 関連の関数を呼び
出す時に フ ォ ン ト ハン ド ル と し て用い る こ と がで き ます。 返 さ れ る ハン ド ルは、 フ ォ ン ト
ハン ド ル と し て使え る 以外に、 ユーザーに と っ て何の意味 も 持ち ません。
返 さ れた フ ォ ン ト ハン ド ルは、 その フ ォ ン ト を close_font( ) で閉 じ る ま で有効です。 文
書を end_document( ) で閉 じ る と 、 それぞれの開かれてい る フ ォ ン ト ハン ド ルは閉 じ ら れ
ますが、 ただ し 対応す る load_font( ) への呼び出 し で keepfont オプシ ョ ン を与え ていた場
合、 ま たはフ ォ ン ト を オブ ジ ェ ク ト ス コ ープで (すなわち あ ら ゆ る 文書の外で) 読み込ん
でいた場合はその限 り ではあ り ません。
詳細
こ の関数はフ ォ ン ト を用意 し 、 以後使え る よ う に し ます。
繰 り 返 し 呼び出 し : こ の関数を、 同 じ フ ォ ン ト 名 ・ 同 じ エ ン コ ーデ ィ ン グ ・ 同 じ オプ
シ ョ ン群で再度呼び出す と 、 最初の呼び出 し と 同 じ フ ォ ン ト ハン ド ルが返 さ れ ま す。 例
外 : 下記のオプシ ョ ンのいずれか を最初の呼び出 し で指定 し 、 その後の呼び出 し では指定
し なかっ た場合 も 、 2 度目の フ ォ ン ト ハン ド ルは最初の フ ォ ン ト ハン ド ル と 同一にな り ま
す:embedding・readkerning・replacementchar・fallbackfonts・metadata。同様に、initialsubset
オ プ シ ョ ン は フ ォ ン ト の 比 較 に あ た っ て は 無 視 さ れ ま す。 た と え ば、 フ ォ ン ト を
initialsubset な し で読み込んだ後、 initialsubset をつけて再度読み込んだ場合、 最初の フ ォ
ン ト へのハン ド ルが返 さ れ、 initialsubset は何 ら 効力を持ち ません。
最初の呼び出 し で embedding=false と し 、 2 度目の呼び出 し で embedding= true と す る
と 、 フ ォ ン ト の再度読み込みの試みは失敗 し ます。 こ の状況はたいてい、 アプ リ ケーシ ョ
ン内の問題を指 し 示 し ます。
暗黙的フ ォ ン ト 読み込み : 明示的に load_font( ) で フ ォ ン ト を読み込むほかに、 API 関
数のなかには、オプシ ョ ン リ ス ト で フ ォ ン ト 名 と エン コ ーデ ィ ン グ を指定す る こ と で暗黙
的に フ ォ ン ト を読み込め る も のがあ り ます (add/create_textflow( ) ・ fill_textblock( ) 等) 。
その時点ま でにその フ ォ ン ト がすでに読み込まれていなければ、新規フ ォ ン ト ハン ド ルが
作成 さ れます。
テ キ ス ト 出力機能のなかには、 特定のエ ン コ ーデ ィ ン グでは利用で き ない も のがあ り
ます (表 4.2 参照)。
表 4.2 各種エ ン コ ーデ ィ ングでの PDFlib 諸機能の利用可能性一覧
unicode ・
Unicode
CMap
機能
テキス ト フ ロー
グ リ フ置き換え
予備フ ォ ン ト
シ ェ ーピ ング
OpenType レ イ アウ ト 機能
可
可
2
可
可
2
可
2
可
8 ビッ ト
エン コー
デ ィ ング
可
可
―
―
レ ガシ
CMap ・
cp936 等
glyphid
1
可
可
1
―
可
1
―
可
1
可
可
1
可
可
1. この機能は、 日中韓 フ ォ ン ト に対 し ては、 keepnative=true では利用で き ません。
2. この機能は、 Unicode CMap ま たは keepnative=true に よ る標準日中韓 フ ォ ン ト に対 し ては利用で き ません。
スコープ 任意
54
第 4 章 : フ ォ ン ト ・ テキス ト 関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
パラメタ 表 4.1 参照。
表 4.3 load_font( ) と 暗黙的フ ォ ン ト 読み込みのフ ォ ン ト 読み込みオプ シ ョ ン一覧
オプ シ ョ ン
説明
ascender
(-2048 から 2048 ま での整数) ア セ ン ダ。 同名の タ イ ポグ ラ フ ィ 特性が強制的に指定値にな り ま
す。 これは、 フ ォ ン ト 内に値が見つかっ た と きは上書き さ れますが、 フ ォ ン ト にそのよ う な情報
が入っ ていない と き に特に有用です (Type 3 フ ォ ン ト 等)。 デ フ ォル ト : あ る な ら フ ォ ン ト 内の
値、 ないな ら推算値 (info_font( ) で取得で き ます)
autocidfont
(論理値) true にする と 、 winansi ・ macroman ・ builtin 以外の 8 ビ ッ ト エ ン コ ーデ ィ ン グによ る
TrueType フ ォ ン ト と 、 グ リ フ名のない OpenType フ ォ ン ト は、 自動的に CID フ ォ ン ト と し て格納
さ れます。 これは、 winansi エ ン コ ーデ ィ ン グ外のグ リ フ が得ら れない問題を回避 し ます。 デ フ ォ
ル ト : true
autosubsetting
(論理値) フ ォ ン ト をサブ セ ッ ト 化するかど う かを、 subsetlimit ・ subsetminsize オプ シ ョ ン と 、
グ リ フの実際の使われ方に従 っ て動的に決定 し ます。 subsetting オプ シ ョ ン を与えている と きは
こ のオプ シ ョ ンは無視 さ れます。 デ フ ォル ト : true
capheight
(-2048 から 2048 ま での整数) キ ャ ッ プハイ ト 。 上記 ascender 参照。
descender
(-2048 から 2048 ま での整数) デ ィ セ ン ダ。 上記 ascender 参照。
dropcorewidths
(論理値。 非サポー ト 。 PDF/A ・ PDF/X モー ド では false を強制 さ れます) 埋め込んでいない コ ア
フ ォ ン ト の幅を、 生成する PDF に埋め込みません。 出力フ ァ イルサイ ズが少 し 小 さ く な り ますが、
キ ャ ラ ク タ に よ っ ては不正確な テキス ト 印字が生成 さ れるおそれがあ り ます。 こ のオプ シ ョ ンは
デ フ ォル ト 値のま まに し てお く こ と を強 く 推奨 し ます。 デ フ ォ ル ト : false
embedding
(論理値。 PDF/A ・ PDF/X では true にする必要があ り ます。 つねに埋め込まれる SING フ ォ ン ト ・
Type 3 フ ォ ン ト に対 し ては無視 さ れます) フ ォ ン ト を埋め込むかど う かを制御 し ます。 フ ォ ン ト
を埋め込むためには、 そのフ ォ ン ト のアウ ト ラ イ ン フ ァ イルが得ら れる必要があ り 、 さ ら にその
メ ト リ ッ ク情報 も必要で (TrueType ・ OpenType フ ォ ン ト を除き)、 それらが得られれば、 実際の
フ ォ ン ト アウ ト ラ イ ン定義が PDF 出力内へ書き込まれます。 フ ォ ン ト が埋め込まれない と きは、
そのフ ォ ン ト の一般的情報だけが PDF 出力へ書き込まれます。
デ フ ォル ト : 通常は false ですが、 CID フ ォ ン ト への変換を引き起 こ すエ ン コ ーデ ィ ング を持つ
TrueType ・ OpenType フ ォ ン ト の関与する特定の状況においては true。PDFlib はそのよ う な フ ォ ン
ト を自動的に埋め込みますが、 embedding を false に設定する と 、 フ ォ ン ト を埋め込ませない こ と
がで き ます。 こ の場合は、 PDF 文書を表示 ・ 印刷する シ ス テムに、 そのフ ォ ン ト がイ ン ス ト ール
さ れている必要があ り ます。
オプ シ ョ ン embedding=false は、 それ以前に同 じ フ ォ ン ト をすでに embedding=true で読み込んい
る と きは無視 さ れます。 不可視テキス ト でのフ ォ ン ト に対する埋め込み動作は、 embedding=true
の場合であ っ て も、 optimizeinvisible オプ シ ョ ン で変更する こ と が可能です。
4.1 フ ォ ン ト 処理
55
表 4.3 load_font( ) と 暗黙的フ ォ ン ト 読み込みの フ ォ ン ト 読み込みオプ シ ョ ン一覧
オプ シ ョ ン
説明
encoding
(文字列。 暗黙的 フ ォ ン ト 読み込みの場合、 テキス ト 書式オプ シ ョ ン font が指定 さ れていない と
きは、 fill_textblock( ) の場合以外には必須) こ の フ ォ ン ト に対 し て入 っ て く る テキス ト に期待する
円 コ ーデ ィ ン グ (大文字 ・ 小文字を区別 し ます) :
ワ イ ド キ ャ ラ ク タ エ ン コ ーデ ィ ング :
> unicode および Unicode CMap の名前
> 非 Unicode (レ ガシ) CMap の名前、 あ るいは CID 指定の Identity-H か Identity-V
> glyphid : フ ォ ン ト 内のすべてのグ リ フ を、 そのフ ォ ン ト 独自の ID で指定で き ます
バイ ト エ ン コ ーデ ィ ング ・ マルチバイ ト エ ン コ ーデ ィ ング :
> 定義済み 8 ビ ッ ト エ ン コ ーデ ィ ング winansi ・ macroman ・ macroman_apple ・ ebcdic ・ ebcdic_37 ・
pdfdoc ・ iso8859-X ・ cpXXXX の う ちの 1 つ、 および非 Unicode CMap
> 自動的に選択 さ れる エ ン コ ーデ ィ ングの host ま たは auto
> フ ァ イルから 読み込まれる、 ま たは encoding_set_char( ) で定義 さ れるユーザー定義エ ン コ ーデ ィ
ングの名前
> フ ォ ン ト の内部エ ン コ ーデ ィ ング を選択する ための builtin (主に記号フ ォ ン ト で使用)
> オペレーテ ィ ングシス テムが知っ ている エ ン コ ーデ ィ ング名 (すべてのプ ラ ッ ト フ ォ ームで利用
で き るわけではあ り ません)
load_font( ) : こ のオプ シ ョ ンはあるいは、 関数の引数 と し て与え る こ と も で き ます。
fill_textblock( ) : こ のオプ シ ョ ンは、 text 引数のテキス ト が空で defaulttext プ ロパテ ィ が用い ら
れている場合 と 、 font オプ シ ョ ン を与えている場合を除き、 必須です。
fallbackfonts (表 4.4 に従っ たオプ シ ョ ン リ ス ト 群の リ ス ト ) 読み込む フ ォ ン ト に対する予備フ ォ ン ト (複数可)
を指定 し ます。 各予備フ ォ ン ト は、 font サブオプ シ ョ ンの フ ォ ン ト ハン ド ルに よ っ て、 ま たは暗
黙的フ ォ ン ト 読み込みのための適切なサブオプ シ ョ ンによ っ て、 定義する必要があ り ます。 予備
フ ォ ン ト は、 フ ォ ン ト の種別 と エ ン コ ーデ ィ ングの組み合わせに よ っ ては対応 し ていません (表
4.2 参照)。
glyphcheck=replace かつベース フ ォ ン ト の 8 ビ ッ ト エ ン コ ーデ ィ ングに含まれないキ ャ ラ ク タ が
テキス ト 内にある と き、 またはベース フ ォ ン ト がキ ャ ラ ク タ に対するグ リ フ を含んでいない と き、
またはグ リ フ 置き換えが forcechars サブオプ シ ョ ン で強制 さ れている と き、 PDFlib は、 すべての
指定 さ れた予備フ ォ ン ト の中で、 リ ス ト さ れた順番に、 このキ ャ ラ ク タ に対するグ リ フ を検索 し
ます。 適合するグ リ フがいずれかの予備 フ ォ ン ト の中に見つかっ た と きは、 そのキ ャ ラ ク タ は こ
のグ リ フ で印字 さ れ、 見つから なかっ た と きは、 通常のグ リ フ置き換えの し く みが適用 さ れます。
fontname
(名前文字列。 fill_textblock( ) 以外の暗黙的フ ォ ン ト 読み込みの場合、 テキス ト 書式オプ シ ョ ン
font が指定 さ れていない と きは必須) フ ォ ン ト の実際の名前ま たはエ イ リ ア ス名 (大文字 ・ 小文
字は区別 さ れます)。 こ の名前を用いて フ ォ ン ト デー タ が検索 さ れます。 Windows では、 カ ン マの
後に フ ォ ン ト ス タ イル名を フ ォ ン ト 名に付加する こ と がで き ます (詳 し く は PDFlib チ ュ ー ト リ ア
ル参照)。 fontname の先頭が 「@」 キ ャ ラ ク タ の場合、 その フ ォ ン ト には縦書きが適用 さ れます。
load_font( ) : あるいは関数の引数 と し て与え る こ と も で き ます。
fontstyle
56
(キーワー ド ) 擬似フ ォ ン ト ス タ イルの作成を制御 し ます。 使え るキーワー ド は normal ・ bold ・
italic ・ bolditalic です。 埋め込まれていない TrueType (TTC でない) ・ OpenType フ ォ ン ト の場
合は、 擬似フ ォ ン ト ス タ イルは Acrobat によ っ て作成 さ れ、 それ以外の場合は PDFlib に よ っ て作
成 さ れます (fakebold パラ メ タ またはオプ シ ョ ン と 同 じ 太字化方式を使 っ て)。 後者の場合は、 傾
きの角度を italicangle パラ メ タ またはオプ シ ョ ン で制御で き ます。 こ のオプ シ ョ ン を コ ア フ ォ
ン ト のいずれかに適用する と 、 擬似フ ォ ン ト ス タ イルは作成 さ れず、 適切なボール ド ・ イ タ リ ッ
ク ・ ボール ド イ タ リ ッ クの フ ォ ン ト バ リ エーシ ョ ンが選ばれます。 そのよ う な フ ォ ン ト が得 られ
ない と きは (Times-Bold に bold を適用 し た等)、 こ のオプ シ ョ ンは無視 さ れます。 デ フ ォ ル ト :
normal
第 4 章 : フ ォ ン ト ・ テキス ト 関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 4.3 load_font( ) と 暗黙的フ ォ ン ト 読み込みのフ ォ ン ト 読み込みオプ シ ョ ン一覧
オプ シ ョ ン
説明
initialsubset
(Unichar か Unicode 範囲の リ ス ト 、 またはキーワー ド の リ ス ト 。 embedding=true かつ
subsetting=true の と きのみ意味を持ち ます) 初期フ ォ ン ト サブ セ ッ ト にグ リ フ を含めたい
Unicode 値群を指定 し ます。 これを活用する と 、 PDF 内のフ ォ ン ト 容量を削減 し つつ、 同等のサブ
セ ッ ト を生成 さ せる こ と がで き、 ひいては複数の文書を連結する際の最適化も容易にな り ます。
Unicode 値群は、 Unichar 群か Unicode 範囲群によ っ て明示的に指定する こ と も で き ます し 、 8 ビ ッ
ト エ ン コ ーデ ィ ングの名前に よ っ て暗黙的に指定する こ と も 可能です。 Unichar ・ Unicode 範囲はエ
ン コ ーデ ィ ング名に優先 し ます。 使え るキーワー ド (デ フ ォ ル ト : empty) :
empty
初期フ ォ ン ト サブ セ ッ ト は空にな り ます。 サブ セ ッ ト の内容は文書内のテキス ト に よ っ
て決定 さ れます。
任意の 8 ビ ッ ト エ ン コ ーデ ィ ング名
そのエ ン コ ーデ ィ ング内で見つかっ たすべての Unicode 値が初期サブ セ ッ ト へ含まれま
す。 追加のキ ャ ラ ク タ に対するグ リ フ も、 文書内のテキス ト に よ っ て、 ま たは
features ・ shaping テキス ト オプ シ ョ ンに よ っ て必要 と なれば、 自動的にサブ セ ッ ト へ
追加 さ れます。
keepfont
(論理値。 Type 3 フ ォ ン ト では不可) false にする と 、 フ ォ ン ト は end_document( ) で自動的に削除
さ れます。 true にする と 、 フ ォ ン ト は後続する文書群で も、 close_font( ) を呼び出すま で使 う こ と
がで き ます。 デ フ ォル ト : load_font( ) がオブジェクトス コ ープ内で呼び出 さ れたな ら true、 そ う
でないな ら false
keepnative
(論理値。 非 Unicode CMap に よ る日中韓フ ォ ン ト でのみ意味を持ち、 それ以外の フ ォ ン ト では無
視 さ れます。 embedding=true に し ている と きは false を強制 さ れます) false にする と 、 この
フ ォ ン ト のテキス ト は、 PDF 出力作成時に CID 値へ変換 さ れます (glyphid 指定 と Identity-H エ
ン コ ーデ ィ ング を使っ て)。 これは、 選んだ CMap (Shift-JIS 等) にま だ一致 し ていなければな ら
ない API 関数に与え る テキス ト に対 し ては効力を持ち ません。 し か し そのフ ォ ン ト は、 テキス ト
フ ロー と 、 あ ら ゆる単純テキス ト 出力関数に使 う こ と がで き ます (ですが フ ォ ーム フ ィ ール ド に
は使え ません)。 Unicode CMap によ る フ ォ ン ト は、 グ リ フ の置き換え と 予備フ ォ ン ト が利用で き な
い点以外は、 encoding=unicode と 同様に動作 し ます。
true にする と 、 この フ ォ ン ト のテキス ト は、 選んだ CMap に従 っ てそのネ イ テ ィ ブ な形式のま ま
PDF 出力へ書き込まれます。 そのフ ォ ン ト は、 フ ォ ーム フ ィ ール ド と 、 あ ら ゆる単純テキス ト 出
力関数に使 う こ と がで き ますが、 テキス ト フ ローには使え ません。 デ フ ォ ル ト : TrueType フ ォ ン
ト または embedding=true の場合は false、 それ以外の場合は true。
kerning
非推奨。 フ ォ ン ト 内のカ ーニ ングデー タ の解析を制御するには readkerning オプ シ ョ ン を用いて
く だ さ い。
linegap
(-2048 から 2048 ま での整数) 行間。 上記 ascender 参照。
metadata
(オプ シ ョ ン リ ス ト 。 PDF 1.4) フ ォ ン ト のための メ タ デー タ を与え ます (225 ページ 「14.2 XMP メ
タ デー タ 」 参照)
monospace
(1 から 2048 ま での整数。 PDF/A では不可) フ ォ ン ト 内のすべてのグ リ フ を強制的に指定幅
( フ ォ ン ト 座標系で表 し た もの。 1000 単位が文字サイ ズに等 し い) に し ます。 Type 3 フ ォ ン ト の場
合は、 0 でないグ リ フ幅がすべて変更 さ れます。 こ のオプ シ ョ ンは、 標準日中韓フ ォ ン ト に対 し て
のみ推奨 さ れ、 また、 コ ア フ ォ ン ト では使え ません。 フ ォ ン ト を埋め込む と 、 こ のオプ シ ョ ンは
無視 さ れます。 デ フ ォ ル ト : 値な し (フ ォ ン ト 内の メ ト リ ッ クが使われます)
optimizeinvisible
(論理値。 PDF/X-1/2/3 では不可) true にする と 、 不可視テキス ト (すなわち textrendering=3)
に対 し てのみ用い られている フ ォ ン ト は、 embedding=true であ っ て も 埋め込まれません。 こ れは、
OCR 出力を不可視テキス ト と し て持つ PDF/A 出力への フ ォ ン ト 埋め込みを抑制する ために有用で
し ょ う 。 フ ォ ン ト が埋め込まれな く て も、 フ ォ ン ト フ ァ イルは通常どお り 設定する必要があ り ま
す。 なぜな ら PDFlib が埋め込み省略を決定するのは文書の最後にな っ てか ら だか ら です。 デ フ ォ
ル ト : false
4.1 フ ォ ン ト 処理
57
表 4.3 load_font( ) と 暗黙的フ ォ ン ト 読み込みの フ ォ ン ト 読み込みオプ シ ョ ン一覧
オプ シ ョ ン
説明
readfeatures (論理値。 TrueType ・ OpenType フ ォ ン ト に対 し て、 かつ encoding=unicode ・ glyphid ・ Unicode
CMap のいずれかの と きのみ意味を持ち ます) TrueType または OpenType フ ォ ン ト の機能テーブル
を フ ォ ン ト か ら読み込むかど う かを指定 し ます。 OpenType 機能のテキス ト への実際の適用はテキ
ス ト オプ シ ョ ン features に よ っ て制御 さ れます (表 5.3 参照)。 OpenType 機能が必要で ない と き
は、 こ のオプ シ ョ ン を false に設定する と 、 フ ォ ン ト の読み込みが速 く な る可能性があ り ます。
デ フ ォ ル ト : true
readkerning
(論理値) カ ーニ ング値を フ ォ ン ト か ら読み込むかど う かを制御 し ます。 カ ーニ ング値のテキス ト
への実際の適用はテキス ト オプ シ ョ ン kerning に よ っ て制御 さ れます (表 5.3 参照)。 カ ーニ ン グ
が必要で ない と きは、 このオプ シ ョ ン を false に設定する と 、 フ ォ ン ト の読み込みが速 く な る可
能性があ り ます。 デ フ ォル ト : true
readshaping
(論理値。 TrueType ・ OpenType フ ォ ン ト に対 し て、 かつ unicode ・ glyphid エ ン コ ーデ ィ ングに対
し てのみ意味を持ち ます) TrueType または OpenType フ ォ ン ト の、 複雑用字系のシ ェ ーピ ングに
必要なシ ェ ーピ ングテーブルを読み込むかど う かを指定 し ます。 テキス ト の実際のシ ェ ーピ ング
はテキス ト オプ シ ョ ン shaping に よ っ て制御 さ れます (表 5.3 参照)。 シ ェ ーピ ングが必要で ない
と きは、 このオプ シ ョ ン を false に設定する と 、 メ モ リ を節約する こ と がで き ます。 デ フ ォル ト :
true
replacementchar
(Unichar。 glyphcheck=replace にする と きのみ意味を持ち ます。 非 Unicode CMap または glyphid
エ ン コ ーデ ィ ングで読み込む フ ォ ン ト に対 し ては無視 さ れます) 選択 し ている フ ォ ン ト で利用で
き ない、 かつ予備フ ォ ン ト または タ イ ポグ ラ フ ィ 的に類似のキ ャ ラ ク タ で置き換え で き ないグ リ
フ を、 指定 し た Unicode 値で置き換え ます。 U+0000 を使 う と フ ォ ン ト の 「グ リ フ な し 」 記号を指
定で き ますが、 ただ し これは PDF/A-1 ・ PDF/X-4 ・ PDF/X-5 標準では許 さ れていません。
encoding=builtin で読み込んだ記号 フ ォ ン ト に対 し ては、 Unicode 値でな く コ ー ド を与え る必要が
あ り ます。
デ フ ォ ル ト : フ ォ ン ト に も し あれば U+00A0 (NO-BREAK SPACE)、 なければ、 フ ォ ン ト に も し あ
れば U+0020 (SPACE)、 なければ、 U+0000 (ただ し PDF/A-1 ・ PDF/X-4 ・ PDF/X-5 の場合を除
く )。 これ らの値は、 指定 し た replacementchar がフ ォ ン ト の中にない と き に も 用い ら れます。
skipposttable
(論理値。 非サポー ト 。 TrueType ・ OpenType フ ォ ン ト に対 し てのみ意味を持ち ます) TrueType ・
OpenType フ ォ ン ト の post テーブルを解析 し てグ リ フ名を決定するかど う かを指定 し ます。 こ の
オプ シ ョ ン を true に設定する と フ ォ ン ト の読み込みが速 く な る可能性があ り ますが、 非標準的な
名前を持つグ リ フへのグ リ フ名参照はそのフ ォ ン ト に対 し ては働かな く な り ます ( これは主に記
号フ ォ ン ト について起 こ り う る こ と で、 テキス ト フ ォ ン ト では通常起 こ り ません)。 デ フ ォ ル ト :
false
subsetlimit
(float またはパーセ ン ト 値。 Type 3 フ ォ ン ト では無視 さ れます) フ ォ ン ト のグ リ フ の総数に対す
る、 文書で使 っ ているグ リ フの比率が、 指定パーセ ン ト 値を超え る と きは、 自動 フ ォ ン ト サブ
セ ッ ト 化が無効にな り ます。 デ フ ォ ル ト : 100%
subsetminsize
(float。 Type 3 フ ォ ン ト では無視 さ れます) 元のフ ォ ン ト フ ァ イルのサイ ズが、 KB 単位の指定値
よ り 小 さ い と きは、 自動フ ォ ン ト サブ セ ッ ト 化が無効にな り ます。 デ フ ォ ル ト : 50
subsetting
(論理値) フ ォ ン ト をサブ セ ッ ト 化するかど う かを制御 し ます。 Type 3 フ ォ ン ト をサブ セ ッ ト 化す
るには、 フ ォ ン ト 定義を 2 回に分けて行 う 必要があ り (PDFlib チ ュ ー ト リ アル参照)、 load_
font( ) への 1 回目の呼び出 し で subsetting オプ シ ョ ン を与え る必要があ り ます。 デ フ ォ ル ト :
false
unicodemap
(論理値。 pdfa=PDF/A-1a:2005 な ら false に設定する必要があ り ます) ToUnicode CMap の生成を
制御 し ます。 こ のオプ シ ョ ンは タ グ付き PDF モー ド では無視 さ れます。 デ フ ォル ト : true
vertical
(論理値。 TrueType ・ OpenType フ ォ ン ト のみ。 定義済み CMap を指定 し ている と きは無視 さ れま
す。 フ ォ ン ト 名が @ で始ま る と きは true を強制 さ れます) true な ら、 縦書き用に フ ォ ン ト を用
意 し ます。
xheight
(-2048 から 2048 ま での整数) x ハイ ト 。 上記 ascender 参照。
58
第 4 章 : フ ォ ン ト ・ テキス ト 関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 4.4 load_font( ) の fallbackfonts オプ シ ョ ンのサブオプ シ ョ ン一覧
オプ シ ョ ン
説明
フォン ト読
み込みオプ
シ ョ ン群
フ ォ ン ト を暗黙的に (すなわち font オプ シ ョ ン でな く fontname ・ encoding オプ シ ョ ン で) 指定
し た と きは、 表 4.3 に従っ た fallbackfonts 以外のすべてのフ ォ ン ト 読み込みオプ シ ョ ン をサブオ
プ シ ョ ン と し て与え る こ と がで き ます。 非 Unicode CMap で読み込んだ フ ォ ン ト は、 予備フ ォ ン ト
と し て用いる こ と はで き ません。
font
( フ ォ ン ト ハン ド ル) load_font( ) を fallbackfonts オプ シ ョ ン な し で呼び出 し て返 さ れた フ ォ ン ト
ハン ド ル。 このオプ シ ョ ン を与え る と 、 すべてのフ ォ ン ト 読み込みオプ シ ョ ンが無視 さ れます
(fontname ・ encoding も)。 フ ォ ン ト は、 embedding=false かつ keepnative=true によ る標準日中
韓 フ ォ ン ト であ っ てはいけません。
fontsize
(float またはパーセ ン ト 値) 予備フ ォ ン ト の文字サイ ズを、 ユーザー座標で、 ま たはカ レ ン ト 文字
サイ ズに対するパーセ ン ト 値 と し て表 し た もの。 こ のオプ シ ョ ン を利用する と 、 予備フ ォ ン ト の
デザイ ン さ れた文字サイ ズがベース フ ォ ン ト と 合わない と き に、 予備フ ォ ン ト の文字サイ ズを調
節する こ と がで き ます。 デ フ ォル ト : 100%
forcechars
(Unichar か Unicode 範囲の リ ス ト 、 またはキーワー ド 1 個) つねに予備 フ ォ ン ト 内のグ リ フ で印字
さ せたい (glyphcheck 設定に よ ら ず) キ ャ ラ ク タ 群を指定 し ます。 予備フ ォ ン ト は、 指定 し た
キ ャ ラ ク タ に対するグ リ フ を含んでいるか (個々のキ ャ ラ ク タ を指定 し た場合)、 あ るいは少な く
と も指定 し た Unicode 範囲の最初 と 最後のキ ャ ラ ク タ に対するグ リ フ を含んでいる必要があ り ま
す。 ベース フ ォ ン ト に対 し て 8 ビ ッ ト エ ン コ ーデ ィ ング を指定 し ている場合で も 、 こ のオプ シ ョ
ンには Unicode 値を指定する こ と が可能です。
以下のキーワー ド を与え る こ と も で き ます :
gaiji
予備フ ォ ン ト は SING フ ォ ン ト を参照する必要があ り 、 そ し て こ のキーワー ド は、 SING
フ ォ ン ト の メ イ ング リ フの Unicode 値へのシ ョ ー ト カ ッ ト と し て利用する こ と がで き ます。
textrise
(float またはパーセ ン ト 値) テキス ト ラ イ ズ値 (表 5.2 参照)。 パーセ ン ト 値は、 予備フ ォ ン ト に対
し て指定 し た (すなわち、 fontsize サブオプ シ ョ ンがある な ら それを適用 し た後の) 文字サイ ズ
に対する比です。 このオプ シ ョ ン を利用する と 、 予備 フ ォ ン ト のデザイ ン さ れた テキス ト ラ イ ズ
がベース フ ォ ン ト と 合わない と き に、 予備 フ ォ ン ト のテキス ト の位置を調節する こ と がで き ます。
デ フ ォル ト : 0
VB RB Sub close_font(font As Long)
C# void close_font(int font)
文書内で ま だ使われていない、 開かれてい る フ ォ ン ト ハン ド ルを閉 じ ます。
font 文書内で ま だ使われていない、 かつ閉 じ ら れていない、 load_font( ) に よ っ て返 さ れ
た フ ォ ン ト ハン ド ル。
詳細
こ の関数はフ ォ ン ト ハン ド ルを閉 じ 、その フ ォ ン ト に関連づけ ら れていたすべての リ ソ ー
ス を解放 し ます。 こ の呼び出 し の後に、 その フ ォ ン ト ハン ド ルを使っ てはいけ ません。 通
常、 フ ォ ン ト は文書の終わ り に自動的に閉 じ ら れます。 し か し 、 フ ォ ン ト を閉 じ る こ と は
以下の よ う な場合に有用です :
> フ ォ ン ト のプ ロ パテ ィ を info_font( )で取得 し た後、その フ ォ ン ト を カ レ ン ト のPDF文書
内では使わない こ と が決定 さ れた。
> フ ォ ン ト が文書の境界を越えて保持 さ れていたが (load_font( ) の keepfont オプシ ョ ン
で)、 も う 必要ないので捨て る べ き であ る 。
フ ォ ン ト がカ レ ン ト 文書内ですでに使われてい る と き は、 閉 じ てはいけ ません。
スコープ 任意
4.1 フ ォ ン ト 処理
59
VB RB Function info_font(font As Long, keyword As String, optlist As String) As Double
C# double info_font(int font, String keyword, String optlist)
読み込んだ フ ォ ン ト に関す る 詳 し い情報を取得 し ます。
font
1。
load_font( ) に よ っ て返 さ れた フ ォ ン ト ハン ド ル、 あ る いはキー ワー ド に よ っ ては -
keyword ほ し い情報を表 4.6 に従っ て指定 し た キーワー ド 。 使え る キーワー ド :
> グ リ フ マ ッ ピ ン グのためのキー ワー ド : cid ・ code ・ glyphid ・ glyphname ・ unicode
> フ ォ ン ト メ ト リ ッ ク : ascender ・ capheight ・ descender ・ italicangle ・ linegap ・ xheight
> フ ォ ン ト の フ ァ イ ル ・ 名前 ・ 種別 : cidfont ・ familyname ・ fontfile ・ fontname ・
fonttype ・ metricsfile ・ outlineformat ・ singfont ・ standardfont ・ supplement
> フ ォ ン ト の技術的情報 : feature ・ featurelist ・ fontstyle ・ hostfont ・ kerningpairs ・
monospace ・ numglyphs ・ shapingsupport ・ vertical
> フ ォ ン ト と エン コ ーデ ィ ン グの関係 : codepage ・ codepagelist ・ encoding ・
fallbackfont ・ keepnative ・ maxcode ・ numcids ・ numusableglyphs ・ predefcmap ・
replacementchar ・ symbolfont ・ unicodefont ・ unmappedglyphs
> カ レ ン ト 文書に対す る フ ォ ン ト 処理の結果 : numusedglyphs ・ usedglyph ・ willembed ・
willsubset
optlist 選択 し た キー ワー ド を さ ら に修飾する オプシ ョ ン リ ス ト 。 以下のオプシ ョ ンが使
え ます :
> 表 4.6 の各キーワ ー ド の欄で解説す る 、 キーワ ー ド 独自のオプシ ョ ン群。
> グ リ フ を指定す る ための、 表 4.5 に従っ たマ ッ ピ ン グオプシ ョ ン : cid ・ code ・ glyphid ・
glyphname ・ unicode。 こ れ ら の オ プ シ ョ ン は、 マ ッ ピ ン グ オ プ シ ョ ン cid ・ code ・
glyphid ・ glyphname ・ unicode の ソ ース値を定義 し ます。 こ れ ら のマ ッ ピ ン グオプシ ョ
ンは相互に排他的です。 code ・ glyphname ・ unicode オプシ ョ ンは encoding オプシ ョ ン
と 組み合わせ る こ と が可能です。
表 4.5 info_font( ) でグ リ フ を指定するオプ シ ョ ン一覧
オプ シ ョ ン
説明
cid
(数値) グ リ フの CID 値。 cidfont=1 の と きのみ意味を持ち ます
code
(範囲 0 ~ 255 の数値。 8 ビ ッ ト エ ン コ ーデ ィ ングの フ ォ ン ト のみ) エ ン コ ーデ ィ ングス ロ ッ ト
glyphid
(範囲 0 ~ 65535 の数値) 内部グ リ フ ID
glyphname
(文字列) グ リ フ の名前。 cidfont=1 の と き には意味を持ち ません
unicode
(Unichar) Unicode キ ャ ラ ク タ
戻り値 keyword に よ っ て、 お よ び場合に よ っ てはオプシ ョ ンで補足 し て要求 し た、 フ ォ ン ト ま た
はエン コ ーデ ィ ン グの特性の値。キー ワー ド と オプシ ョ ンの組み合わせが仕様外の と き は
-1 が返 さ れ ます。 い く つかのキー ワ ー ド は文字列を、 その文字列番号を返す こ と に よ っ
て間接的に返 し ます。 その対応す る 文字列は、 get_parameter( ) で string パ ラ メ タ を使っ
て取得で き ます (表 2.3 参照)。
詳細
60
こ の関数は、 以下の異な る 情報源か ら の情報を提供 し ます :
第 4 章 : フ ォ ン ト ・ テキス ト 関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
> 有効な フ ォ ン ト ハ ン ド ル を与え た と き は、 その フ ォ ン ト か ら 集めた情報 を返 し ま す。
例 : フ ォ ン ト の メ ト リ ッ ク ・ 名前 ・ 種別、 特定の glyphid に対す る unicode 値。
> font = -1 かつ encoding オプシ ョ ン を与えた と き は、こ のエン コ ーデ ィ ン グに関す る 情報
を返 し ます。 例 : エン コ ーデ ィ ン グ内の 1 つの code に対す る unicode 値。
> font = -1 かつ encoding オプシ ョ ン を与え ていない と き は、PDFlib の内部テーブル群か ら
集めた情報を返 し ます。 例 : 特定の glyphname に対す る unicode 値。
スコープ オブ ジ ェ ク ト 以外の任意
表 4.6 info_font( ) のキーワー ド ・ オプ シ ョ ン一覧
キーワー ド
ascender
説明 ・ オプ シ ョ ン
アセ ン ダの メ ト リ ッ ク 値。 使え る オプ シ ョ ン (デ フ ォ ル ト : fontsize=1000) :
faked
(論理値) 値を フ ォ ン ト または メ ト リ ッ ク フ ァ イルか ら得ら れなか っ たため推算する必
要がある と きは 1。 そ う でない と きは 0
fontsize
(文字サイ ズ) 値を指定文字サイ ズにあわせて比例計算 し ます
capheight
キ ャ ッ プハイ ト の メ ト リ ッ ク 値。 ascender 参照。
cid
指定 し たグ リ フ の CID、 あ るいは得られなかっ た と きは -1。 使え る オプ シ ョ ン : cid ・ glyphid ・
unicode
cidfont
フ ォ ン ト が CID フ ォ ン ト と し て埋め込まれる な ら 1、 そ う でないな ら 0
code
エ ン コ ーデ ィ ングス ロ ッ ト を表す範囲 0 ~ 255 の数値か、 ま たはそのよ う なス ロ ッ ト がフ ォ ン ト
内またはエ ン コ ーデ ィ ング内 (encoding オプ シ ョ ン を与え、 かつ font=-1 の場合) に見つから な
か っ た と きは -1。 使え る オプ シ ョ ンはマ ッ ピ ングオプ シ ョ ン code ・ glyphid ・ glyphname ・
unicode と 以下のオプ シ ョ ン です :
encoding (文字列) 8 ビ ッ ト エ ン コ ーデ ィ ン グの名前
codepage
指定 し た コ ー ド ページに フ ォ ン ト が対応 し ているかど う かを調べます。 こ の情報は、 TrueType/
OpenType フ ォ ン ト の OS/2 テーブルから、 も し 入手可能であれば採ら れます。 使え る オプ シ ョ
ン:
name
(文字列。 必須) コ ー ド ページの名前を、 cpXXXX の形で指定 し ます。 こ こ で XXXX は、
コ ー ド ページの 10 進数値を表 し ます (例 : cp437 ・ cp1252)
以下の戻 り 値で、 指定 さ れた コ ー ド ページに フ ォ ン ト が対応 し ているかど う かを示 し ます。
-1
フ ォ ン ト が TrueType ・ OpenType フ ォ ン ト でないので不明です。
0
指定 さ れた コ ー ド ページに フ ォ ン ト は対応 し ていません。
1
指定 さ れた コ ー ド ページに フ ォ ン ト は対応 し ています。
codepagelist
フ ォ ン ト が対応 し ているすべての コ ー ド ページ (cpXXXX の形で) のスペース区切 り の リ ス ト の文
字列番号、 あ るいはフ ォ ン ト が TrueType ・ OpenType フ ォ ン ト でないので コ ー ド ページ リ ス ト が不
明の と き (codepage 参照) は -1。
descender
デ ィ セ ン ダの メ ト リ ッ ク値。 ascender 参照。
encoding
フ ォ ン ト のエ ン コ ーデ ィ ングまたは CMap の名前の文字列番号。 使え るオプ シ ョ ン (デ フ ォ ル ト :
actual) :
fallbackfont
api
(論理値) true にする と 、 API で指定 さ れるの と 同 じ エ ン コ ーデ ィ ング名
actual
(論理値) true にする と 、 フ ォ ン ト に対 し て使われる実際のエ ン コ ーデ ィ ング名
unicode オプ シ ョ ン で指定 し たキ ャ ラ ク タ を印字する ために用い られるベース フ ォ ン ト か予備フ ォ
ン ト のハン ド ル。 これを利用する と 、 指定 し たキ ャ ラ ク タ に対 し て用い ら れるグ リ フ を予備フ ォ
ン ト 群の連な り の中のどのフ ォ ン ト が実際に提供するかを調べる こ と がで き ます。 そのキ ャ ラ ク
タ がいずれのベース フ ォ ン ト ・ 予備 フ ォ ン ト で も印字で き ない と きは、 -1 が返 さ れます。 使え る
オプ シ ョ ン : unicode
4.1 フ ォ ン ト 処理
61
表 4.6 info_font( ) のキーワー ド ・ オプ シ ョ ン一覧
キーワー ド
説明 ・ オプ シ ョ ン
familyname
フ ォ ン ト フ ァ ミ リ の名前の文字列番号、 または得られないな ら -1
feature
PDFlib が対応 し ている OpenType 機能テーブルを フ ォ ン ト が含んでいるかど う かを調べます。 使え
るオプ シ ョ ン :
language (文字列。 script を与えている と きのみ) 言語の名前を指定 し ます。
name
(文字列。 必須) OpenType 機能テーブルの 4 文字の名前を指定 し ます。 例 : liga (標準
合字) ・ ital (日中韓フ ォ ン ト の斜体) ・ vert (縦書き)。 機能 kern については取得で き
ません。
script
(文字列) 用字系の名前を指定 し ます。
以下の戻 り 値で、 指定 さ れた OpenType 機能テーブルが フ ォ ン ト 内に存在 し ていて PDFlib がそれ
に対応 し ているかど う かを示 し ます :
-1
フ ォ ン ト 内に機能テーブルが全 く 得られません。
0
その機能テーブルが得 られないか、 または PDFlib がそれに対応 し ていません。
1
指定 さ れた用字系 と 言語に対 し てその機能テーブルが得られ、 かつ PDFlib がそれに対
応 し ています。
featurelist
フ ォ ン ト 内で得られて PDFlib が対応 し ているすべての機能のスペース区切 り の リ ス ト の文字列番
号、 あ るいは機能テーブルが全 く 得られない と きは -1。
fontfile
フ ォ ン ト のアウ ト ラ イ ン フ ァ イルのパス名の文字列番号か、 または得られない と きは -1
fontname
フ ォ ン ト 名の文字列番号か、 ま たは得ら れない と きは -1。 使え るオプ シ ョ ン (デ フ ォ ル ト :
acrobat) :
fontstyle
api
(論理値) true にする と 、 API で指定 さ れるの と 同 じ フ ォ ン ト 名
full
(論理値) true にする と 、 PDF の フ ォ ン ト 記述子の /FontName 項目
acrobat
(論理値) true にする と 、 Acrobat で表示 さ れるの と 同 じ フ ォ ン ト 名
fontstyle オプ シ ョ ンの値 (normal ・ bold ・ italic ・ bolditalic) の文字列番号。 使え る オプ シ ョ
ン:
faked
フ ォ ン ト ス タ イルが PDFlib に よ っ て実現 さ れる と きは 1、 フ ォ ン ト ス タ イルが Acrobat
に よ っ て実現 さ れる と きは 0
fonttype
フ ォ ン ト 種別の文字列番号、 ま たは得ら れない と きは -1。 知られている フ ォ ン ト 種別は
Multiple Master ・ OpenType ・ TrueType ・ TrueType (CID) ・ Type 1 ・ Type 1 (CID) ・ Type 1 CFF ・
Type 1 CFF (CID) ・ Type 3
glyphid
(8 ビ ッ ト エ ン コ ーデ ィ ン グによ る フ ォ ン ト と 、 encoding=builtin に よ る記号フ ォ ン ト と 、
encoding= unicode によ る フ ォ ン ト のみ) 以下のオプ シ ョ ン で同定 さ れる、 フ ォ ン ト 内部のグ リ フ
ID (GID) を表す範囲 0 ~ 65535 の数か、 またはそのよ う なグ リ フが見つか ら なか っ た と きは -1。
code
(範囲 0 ~ 255 の数値。 8 ビ ッ ト エ ン コ ーデ ィ ングに よ る フ ォ ン ト と 、
encoding=builtin によ る記号 フ ォ ン ト のみ) エ ン コ ーデ ィ ングス ロ ッ ト
unicode
glyphname
(Unichar。 encoding= unicode によ る フ ォ ン ト のみ) 指定する Unicode キ ャ ラ ク タ の
入 っ たス ロ ッ ト
指定 し たグ リ フの名前の文字列番号、 またはそのよ う なグ リ フがフ ォ ン ト 内ま たは指定 し た エ ン
コ ーデ ィ ング内 (encoding オプ シ ョ ン を与えていてかつ font=-1 の場合) に見つから ない と きは 1。 使え る オプ シ ョ ンはマ ッ ピ ングオプ シ ョ ン code ・ glyphid ・ glyphname ・ unicode と 以下のフ ォ
ン ト です :
encoding (文字列) 8 ビ ッ ト エ ン コ ーデ ィ ングの名前
hostfont
フ ォ ン ト がホス ト フ ォ ン ト な ら 1、 そ う でないな ら 0
italicangle
フ ォ ン ト のイ タ リ ッ ク角度 (PDF の フ ォ ン ト 記述子の中の ItalicAngle)
62
第 4 章 : フ ォ ン ト ・ テキス ト 関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 4.6 info_font( ) のキーワー ド ・ オプ シ ョ ン一覧
キーワー ド
説明 ・ オプ シ ョ ン
keepnative
keepnative オプ シ ョ ンの出力値。
kerningpairs
フ ォ ン ト 内のカ ーニ ングペアの数
linegap
行間の メ ト リ ッ ク値。 ascender 参照。
maingid
メ イ ング リ フのグ リ フ ID (SING テーブルの メ ンバ mainGID)。
maxcode
フ ォ ン ト のエ ン コ ーデ ィ ングの最大の コ ー ド 値。 具体的には、 シ ン グルバイ ト エ ン コ ーデ ィ ン グ
に対 し ては 0xFF、 encoding=glyphid に対 し ては numglyphs-1、 それ以外の場合はエ ン コ ーデ ィ ン
グ内の最大の Unicode 値。
metricsfile
フ ォ ン ト の メ ト リ ッ ク フ ァ イル (AFM または PFM) のパス名の文字列番号か、 または得られない
と きは -1
monospace
monospace オプ シ ョ ンの値、 ま たはそれが与え られていない と きは 0。
numcids
フ ォ ン ト が標準 CMap を使っ ている場合は CID の数、 そ う でないな ら -1
numglyphs
フ ォ ン ト 内のグ リ フの数 (.notdef グ リ フ を含む)。 GID は 0 から 始ま り ますので、 GID の と り う る
最大値は numglyphs よ り 1 小 さ く な り ます。
numusableglyphs
load_font( ) で与えたエ ン コ ーデ ィ ングによ っ て到達可能な フ ォ ン ト 内のグ リ フの数
numusedglyphs
その時点ま でに生成 さ れた テキス ト の中で使われているグ リ フの数。
outlineformat
フ ォ ン ト 形式。 PFA ・ PFB ・ LWFN ・ TTF ・ OTF ・ TTC のいずれか
predefcmap
フ ォ ン ト に対する エ ン コ ーデ ィ ング と し て指定 さ れた定義済み CMap の名前の文字列番号、 ま たは
得 られないな ら -1。
replacement
char
replacementchar オプ シ ョ ン で指定 さ れたキ ャ ラ ク タ の Unicode 値。 encoding=builtin で読み込ま
れた記号 フ ォ ン ト については、 Unicode 値でな く コ ー ド が返 さ れます。
shapingsupport
フ ォ ン ト がシ ェ ーピ ングに対応 し ていて、 かつ load_font( ) で readshaping オプ シ ョ ンが与え られ
ていたな ら 1、 そ う でないな ら 0
singfont
フ ォ ン ト が SING (外字) フ ォ ン ト な ら 1、 そ う で ないな ら 0
standardfont フ ォ ン ト が PDF コ ア フ ォ ン ト か標準日中韓 フ ォ ン ト の と きは 1、 そ う でない と きは 0
supplement
標準日中韓 CMap によ る フ ォ ン ト の と きはキ ャ ラ ク タ 集合の補足数、 そ う でない と きは 0
symbolfont
フ ォ ン ト が記号 フ ォ ン ト な ら 1、 そ う で ないな ら 0 (PDF のフ ォ ン ト 記述子の中の symbol フ ラ グ)
unicode
指定 し たグ リ フ に対する Unicode UTF-32 値、 または Unicode 値がフ ォ ン ト またはエ ン コ ーデ ィ ン
グ (encoding オプ シ ョ ン を与え ていてかつ font=-1 の場合) の中に見つから なかっ た と きは -1。
使え る オプ シ ョ ンはマ ッ ピ ングオプ シ ョ ン cid ・ code ・ glyphid ・ glyphname ・ unicode と 以下のオ
プ シ ョ ン です :
encoding (文字列) 8 ビ ッ ト エ ン コ ーデ ィ ン グの名前
unicodefont
フ ォ ン ト と エ ン コ ーデ ィ ングの組み合わせがグ リ フ群に対する マ ッ ピ ング を与え る な ら 1、 そ う で
ないな ら 0。 非 Unicode CMap を持つ日中韓フ ォ ン ト で keepnative=true の と きは 0 を返 し ます。
unmappedglyphs
Unicode PUA 値へマ ッ プ さ れた フ ォ ン ト 内のグ リ フの数。 PUA 値がフ ォ ン ト 内にすでに存在する
か、 それ と も PDFlib に よ っ て割 り 当て られているかに よ り ません。
usedglyph
指定 し たグ リ フ ID がテキス ト 内で使われている な ら 1、 そ う で ないな ら 0。 使え る オプ シ ョ ン :
glyphid
4.1 フ ォ ン ト 処理
63
表 4.6 info_font( ) のキーワー ド ・ オプ シ ョ ン一覧
キーワー ド
説明 ・ オプ シ ョ ン
vertical
フ ォ ン ト が縦書き用な ら 1、 そ う でないな ら 0
weight
フ ォ ン ト の太 さ を 100 ~ 900 の範囲で表 し た も の。 400 =標準、 700 =ボール ド
willembed
フ ォ ン ト が埋め込まれる (embedding オプ シ ョ ンか、 ま たは強制 フ ォ ン ト 埋め込みで) な ら 1、 そ
う でないな ら 0
willsubset
フ ォ ン ト のサブ セ ッ ト が作成 さ れる (autosubsetting=true な ら、 サブ セ ッ ト 化が有効にな る ため
には、 subsetlimit を超え ない こ と が必要です) な ら 1、 そ う でないな ら 0
xheight
行間の x ハイ ト 値。 ascender 参照。
64
第 4 章 : フ ォ ン ト ・ テキス ト 関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
4.2 Type 3 フ ォ ン ト の定義
ク ッ ク ブ ッ ク 完全な コ ー ド サン プルが ク ッ ク ブ ッ クの fonts/starter_type3font ト ピ ッ ク にあ り ます。
VB RB Sub begin_font(fontname As String, a As Double, b As Double , c As Double,
d As Double, e As Double, f As Double, optlist As String)
C# void begin_font(String fontname,
double a, double b, double c, double d, double e, double f, String optlist)
Type 3 フ ォ ン ト の定義を開始 し ます。
fontname
(名前文字列) フ ォ ン ト を登録 し て、 以後の load_font( ) で使いたい名前。
a・b・c・d・e・f (Type 3 フ ォ ン ト のサブセ ッ ト の と き の フ ォ ン ト 定義の 2 度目の呼び
出 し では無視 さ れます) フ ォ ン ト 行列の各要素。 こ の行列は、 グ リ フ が描かれ る 座標系を
定義 し ます。 6 個の値は、 PostScript と PDF と 同 じ 方式で行列を構成 し ます (各 リ フ ァ レ
ン ス を参照)。 縮退変換を避け る ため、 a × d は b × c と 等 し く し てはいけ ません。 代表
的な 1000 × 1000 の座標系に対す る フ ォ ン ト 行列は [0.001, 0, 0, 0.001, 0, 0] です。
optlist (サブセ ッ ト フ ォ ン ト の と き の 2 度目の呼び出 し では無視 さ れます)表 4.7 に従っ
たオプシ ョ ン リ ス ト 。次のオプシ ョ ンが使え ます:colorized・familyname・stretch・weight・
widthsonly
詳細
こ の関数は、 テ キ ス ト ・ グ ラ フ ィ ッ ク ・ 色状態のパ ラ メ タ を、 すべてデフ ォ ル ト に リ セ ッ
ト し ます。 フ ォ ン ト には任意の数のグ リ フ を入れ ら れます。 フ ォ ン ト は、 カ レ ン ト の文書
ス コ ープが終わ る ま で使え ます。
スコープ 文書 ・ ページ。 こ の関数は フ ォ ン ト ス コ ープ を開始 さ せます。 対応す る end_font( ) と 必ず
対に し て呼び出す必要があ り ます。サブセ ッ ト 化 さ れ る フ ォ ン ト の 2 度目の呼び出 し につ
いては、 文書ス コ ープのみ許 さ れます。
表 4.7 begin_font( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
colorized
(論理値) true にする と 、 フ ォ ン ト はキ ャ ラ ク タ ご と にその色を明示的に指定する こ と がで き ま
す。 false にする と 、 キ ャ ラ ク タ はすべて カ レ ン ト 色 (フ ォ ン ト を定義 し た時点ではな く 使 う 時点
の) で描かれるので、 グ リ フ 定義に色オペ レー タ またはマ ス ク以外の画像を入れてはいけません。
デ フ ォル ト : false
familyname1 (文字列。 PDF 1.5) フ ォ ン ト フ ァ ミ リ の名前
stretch1
(キーワー ド 。 PDF 1.5) フ ォ ン ト の幅の値。 キーワー ド : ultracondensed ・ extracondensed ・
condensed ・ semicondensed ・ normal ・ semiexpanded ・ expanded ・ extraexpanded ・ ultraexpanded。
デ フ ォル ト : normal
weight1
(整数またはキーワー ド 。 PDF 1.5) フ ォ ン ト の太 さ 。 と り う る数値または同等のキーワー ド :
100=thin、 200=extralight、 300=light、 400=normal、 500=medium、 600=semibold、 700=bold、
800=extrabold、 900=black。 デ フ ォ ル ト : normal
4.2 Type 3 フ ォ ン ト の定義
65
表 4.7 begin_font( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
widthsonly
(論理値) true にする と (Type 3 フ ォ ン ト のサブ セ ッ ト 化の 1 回目の呼び出 し )、 フ ォ ン ト と グ リ
フの メ ト リ ッ ク だけが定義 さ れます。 begin_glyph( ) と end_glyph( ) の間では他の API 関数を一切呼
び出すべき ではあ り ません。 他の関数を た と え呼び出 し て も 、 PDF 出力にはいかな る効果 も与え
ず、 例外も発生 し ません。
widthsonly=false の と きは (Type 3 フ ォ ン ト のサブ セ ッ ト 化の 2 回目の呼び出 し )、 実際のグ リ フ の
アウ ト ラ イ ン を定義で き ます。 こ のよ う に 2 回の呼び出 し に よ る定義に よ り 、 PDFlib で Type 3
フ ォ ン ト のサブ セ ッ ト 化を実行する こ と が可能にな り ます。 デ フ ォ ル ト : false
1. これ ら のオ プ シ ョ ンは、 タ グ付き PDF を作成 し てい る と き には強 く 推奨 し ますが、 それ以外の と きは無視 さ れます。
VB RB Sub end_font( )
C# void end_font( )
Type 3 フ ォ ン ト の定義を終了 さ せます。
スコープ
フ ォ ン ト 。 こ の関数は フ ォ ン ト ス コ ープ を終了 さ せます。 対応す る begin_font( ) と 必ず対
に し て呼び出す必要があ り ます。
VB RB Sub begin_glyph(glyphname As String,
wx As Double, llx As Double, lly As Double, urx As Double, ury As Double)
C# void begin_glyph(String glyphname, double wx, double llx, double lly, double urx, double ury)
Type 3 フ ォ ン ト のためのグ リ フ定義を開始 さ せます。
glyphname グ リ フ の名前。 こ の名前は、 フ ォ ン ト と と も に使われ る あ ら ゆ る エ ン コ ー
デ ィ ン グで使われ る 必要があ り ます。 Adobe グ リ フ リ ス ト (AGL) に従っ た グ リ フ名を使
う こ と を強 く 推奨 し ます。 グ リ フ名はフ ォ ン ト 内で一意であ る 必要があ り ます。
wx (Type 3 フ ォ ン ト のサブセ ッ ト の と き の フ ォ ン ト 定義の 2 度目の呼び出 し では無視 さ
れます) グ リ フ の幅を、 フ ォ ン ト の行列で指定 し た グ リ フ座標系で指定 し ます。
llx・lly・urx・ury (Type 3 フ ォ ン ト のサブセ ッ ト の と き の フ ォ ン ト 定義の 2 度目の呼び
出 し では無視 さ れます) フ ォ ン ト の colorized オプシ ョ ン を false に し てい る と き は (デ
フ ォ ル ト ではそ う な っ てい ます) 、 グ リ フ の外接枠の左下隅 と 右上隅の座標。 こ の外接枠
の値は、 PostScript 印刷で問題が起 き ない よ う 、 正 し く す る 必要があ り ます。 フ ォ ン ト の
colorized オプシ ョ ン を true に し てい る と き は、4 つの値すべて を 0 にす る 必要があ り ます。
詳細
66
フ ォ ン ト 内のグ リ フは、 テ キ ス ト ・ グ ラ フ ィ ッ ク ・ 画像関数を使っ て定義す る こ と がで き
ます。 ただ し 画像は、 フ ォ ン ト の colorized オプシ ョ ン を true に し てい る か、 ま たは画像
を mask オプシ ョ ン を指定 し て開いてい る と き に し か使え ません。 Type 3 フ ォ ン ト の中で
ビ ッ ト マ ッ プを定義 し たい と き は、 イ ン ラ イ ン画像機能を使 う こ と を強 く 推奨 し ます。
colorized オプシ ョ ン を true に し てい る と き は、 今い る ページのグ ラ フ ィ ッ ク 状態が ま
る ご と グ リ フ定義へ継承 さ れますので、グ リ フ定義に関係す る 種類のグ ラ フ ィ ッ ク 状態は
すべて (linewidth 等)、 グ リ フ定義の中で明示的に設定す る 必要があ り ます。
PDFlib は内蔵の リ ス ト の中でグ リ フ名を検索 し て各グ リ フ の Unicode 値を決定 し ます。
グ リ フ名が見つか ら なかっ た と き は、 PUA Unicode 値がそのグ リ フ名に割 り 当て ら れます
(U+E000 か ら 始ま る )。 こ の値は info_font( ) で取得で き ます。
第 4 章 : フ ォ ン ト ・ テキス ト 関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
スコープ ページ ・ フ ォ ン ト 。 こ の関数はグ リ フ ス コ ープ を開始 さ せます。 対応す る end_glyph( ) と
必ず対に し て呼び出す必要があ り ます。 begin_font( ) で widthsonly=true に し てい る と き
は、 begin_glyph( ) と end_glyph( ) の間の API 関数の呼び出 し はすべて無視 さ れます。
VB RB Sub end_glyph( )
C# void end_glyph( )
Type 3 フ ォ ン ト のためのグ リ フ定義を終了 さ せます。
スコープ グ リ フ。 こ の関数はグ リ フ ス コ ープ を終了 さ せます。 対応す る begin_glyph( ) と 必ず対に
し て呼び出す必要があ り ます。
4.2 Type 3 フ ォ ン ト の定義
67
4.3 エ ン コ ーデ ィ ン グの定義
VB RB Sub encoding_set_char(encoding As String, slot As Long, glyphname As String, uv As Long)
C# void encoding_set_char(String encoding, int slot, String glyphname, int uv)
カ ス タ ムの 8 ビ ッ ト エン コ ーデ ィ ン グに、 グ リ フ名か Unicode 値ま たはその両方を追加 し
ます。
encoding エン コ ーデ ィ ン グの名前。 こ れは、 load_font( ) で使 う 必要のあ る 名前です。 こ
のエン コ ーデ ィ ン グ名は、 あ ら ゆ る 組み込みエン コ ーデ ィ ン グ と 、 以前に使っ た あ ら ゆ る
エン コーデ ィ ン グ と 異な っ てい る必要があ り ます。
slot 定義 し たいキ ャ ラ ク タ の位置を 0 ≦ slot ≦ 255 で指定 し ます。 1 つのエン コ ーデ ィ
ン グ内では、 各ス ロ ッ ト はそれぞれ 1 回だけ定義す る こ と がで き ます。
glyphname
uv
詳細
キ ャ ラ ク タ の名前。
キ ャ ラ ク タ の Unicode 値。
こ の関数は、非標準 8 ビ ッ ト エン コ ーデ ィ ン グ を処理 し なければな ら ない特殊な応用にお
いてのみ必要 と な り ます。 複数回呼び出 し て、 エン コ ーデ ィ ン グ内の最大 256 個のキ ャ ラ
ク タ ス ロ ッ ト を定義す る こ と がで き ま す。 そのエ ン コ ーデ ィ ン グ を初めて使 う 前で あれ
ば、 キ ャ ラ ク タ を追加 し てい く こ と がで き ますが、 そ う でなければ例外が発生 し ます。 す
べての コ ー ド 点を指定す る 必要はな く 、 未定義の ス ロ ッ ト には .notdef と U+0000 が書か
れます。
グ リ フ名 と Unicode 値 と の組み合わせは 3 通 り が可能です。
> glyphname を与え、 uv=0 : こ れは、 Unicode 値を持た ないエン コ ーデ ィ ン グ フ ァ イ ル と
同等です。
> uv を与え るが、 glyphname を与えない : こ れは、 コ ー ド ページ フ ァ イル と 同等です。
> glyphname と uv を与え る: こ れは、Unicode 値を持つエン コ ーデ ィ ン グ フ ァ イ ル と 同等
です。
1 つのエン コ ーデ ィ ン グの中で、各グ リ フ名 /Unicode 値を 1 度だけ与え る こ と を強 く 推奨
し ます (.notdef/U+0000 を除いて)。
エン コ ーデ ィ ン グ を Type 3 フ ォ ン ト で使 う こ と を意図 し てい る 場合は、 エン コ ーデ ィ
ン グ ス ロ ッ ト 群を グ リ フ名だけで指定す る こ と を推奨 し ます。
定義 し たエ ン コ ーデ ィ ン グは、 カ レ ン ト のオブ ジ ェ ク ト ス コ ープが終わ る ま で使え ま
す。
スコープ 任意
68
第 4 章 : フ ォ ン ト ・ テキス ト 関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
4.4 単純テキス ト 出力
注 こ の節の関数に与え る テキス ト はすべて、 load_font( ) で選んでいる エ ン コ ーデ ィ ング と 、
指定 し てい る textformat に合っ ていなければな り ません。 Acrobat での制約によ り 、 テキ
ス ト 文字列の長 さ は 32 KB を超えてはいけません。
こ の節に関連す る パ ラ メ タ と 値を表 4.8 ・ 表 4.9 に示 し ます (21 ページ 「2.2 パ ラ メ タ ・ オ
プシ ョ ン処理」 参照)。
表 4.8 get/set_parameter( ) のテキス ト 関連のキー一覧
キー
説明
autospace
true な ら、 カ レ ン ト フ ォ ン ト が U+0020 に対するグ リ フ を含んでいる と きは、 PDFlib は show 操作
で生成する各テキス ト 出力の後に、 スペースキ ャ ラ ク タ が自動的に追加 さ れます。 こ れは タ グ付
き PDF の生成の際に便利で し ょ う 。 ただ し スペース を追加する と 、 show 操作後のカ レ ン ト テキス
ト 位置が変わ り ます。 デ フ ォ ル ト : false。 ス コ ープ : 任意
charref
表 5.1 参照。 同名のオプ シ ョ ン と 異な り 、 このパラ メ タ は、 ハイパーテキス ト 文字列 と 名前文字列
に対 し て も効力を持ち ます。 デ フ ォ ル ト : false。 ス コ ープ : 任意
decorationabove
表 5.2 参照。 デ フ ォ ル ト : false。 ス コ ープ : 任意
escapesequence
表 5.1 参照。 同名のオプ シ ョ ン と 異な り 、 このパラ メ タ は、 ハイパーテキス ト 文字列 と 名前文字列
に対 し て も効力を持ち ます。 た と えば Windows UNC フ ァ イル名は、 escapesequence=true の と き
は 4 個のバ ッ ク ス ラ ッ シ ュ キ ャ ラ ク タ で始ま る必要があ り ます。 注意 : こ のパラ メ タ は環境変数
(例 : PDFLIBLICENSEFILE) に対 し て も 効力を持ち ます。 Windows の環境変数の中のパス名は通常
バ ッ ク ス ラ ッ シ ュ キ ャ ラ ク タ を含みますので、 こ のパラ メ タ は Windows シ ス テムでは使用を避け、
同名のオプ シ ョ ン を都度関数に与え るほ う がよいで し ょ う 。 デ フ ォ ル ト : false。 ス コ ープ : 任意
fakebold
表 5.2 参照。 デ フ ォ ル ト : false。 ス コ ープ : ページ ・ パターン ・ テンプレート ・ グリフ ・ 文書
glyphcheck
表 5.1 参照。 デ フ ォ ル ト : replace。 ス コ ープ : 任意
kerning
表 5.2 参照。 デ フ ォ ル ト : true。 ス コ ープ : 任意
underline
overline
strikeout
表 5.2 参照。 デ フ ォ ル ト : false。 ス コ ープ : ページ ・ パターン ・ テンプレート ・ グリフ ・ 文書
表 4.9 get/set_value( ) のテキス ト 関連のキー一覧
キー
説明
charspacing
表 5.2 参照。 float 値にのみ対応 し ています。 ス コ ープ : ページ ・ パターン ・ テンプレート ・ グリ
フ ・ 文書
font1
setfont( ) で設定 し ている カ レ ン ト フ ォ ン ト の識別子か、 ま たはフ ォ ン ト を設定 し ていないな ら
-1。 ス コ ープ : ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ
fontsize1
カ レ ン ト フ ォ ン ト のサイ ズ。 setfont( ) であ らか じ め設定 し てお く 必要があ り ます。 ス コ ープ :
ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ
horizscaling
表 5.2 参照。 float 値にのみ対応 し ています。 ス コ ープ : ページ ・ パターン ・ テンプレート ・ グリ
フ ・ 文書
italicangle
表 5.2 参照。 ス コ ープ : ページ ・ パターン ・ テンプレート ・ グリフ ・ 文書
4.4 単純テキス ト 出力
69
表 4.9 get/set_value( ) のテキス ト 関連のキー一覧
キー
説明
leading
行送 り 、 すなわち テキス ト の隣 り あ う 行のベース ラ イ ンの間隔。 行送 り は、 continue_text( ) に使わ
れます。 setfont( ) で新 し い フ ォ ン ト を選んだ時は、 文字サイ ズ と 同 じ 値に設定 さ れます。 行送 り
を文字サイ ズに等 し く 設定する と 、 行間が密にな り ます (leading=0 にする と 、 行が重な り ます)。
し か し 、 隣 り あ う 行のアセ ン ダ と デ ィ セ ン ダはふつ う 重な り あいません。 ス コ ープ : ページ ・ パ
タ ーン ・ テ ン プ レー ト ・ グ リ フ
strokewidth
表 5.2 参照。 float 値にのみ対応 し ています。 値 0 で内蔵のデ フ ォル ト を指定 し ます。 デ フ ォル ト :
0
textrendering
表 5.2 参照。 ス コ ープ : ページ ・ パターン ・ テンプレート ・ グリフ ・ 文書
textrise
表 5.2 参照。 float 値にのみ対応 し ています。 ス コ ープ : ページ ・ パターン ・ テンプレート ・ グリフ
textx11
カ レ ン ト テキス ト 位置の x ・ y 座標。 デ フ ォル ト : 0。 ス コ ープ : ページ ・ パ タ ーン ・ テ ン プ レー
ト ・ グリ フ
underlineposition
表 5.2 参照。 文字サイ ズの分数を指定する float 値にのみ対応 し ています。 値 1000000 を指定する
と 、 フ ォ ン ト の メ ト リ ッ ク またはアウ ト ラ イ ン フ ァ イルから 取得 さ れる フ ォ ン ト 固有の値を設定
する こ と がで き ます。 デ フ ォ ル ト : 1000000
underlinewidth
表 5.2 参照。 float 値にのみ対応 し ています。 値 0 を指定する と 、 フ ォ ン ト の メ ト リ ッ ク またはアウ
ト ラ イ ン フ ァ イルが得られる と きはその中のフ ォ ン ト 固有の値を、 得られないな ら文字サイ ズの
5% を用います。 デ フ ォル ト : 0
texty
wordspacing 表 5.2 参照。 float 値にのみ対応 し ています。 ス コ ープ : ページ ・ パターン ・ テンプレート ・ グリ
フ ・ 文書
1. get_value( ) のみ
VB RB Sub setfont(font As Long, fontsize As Double)
C# void PDF_setfont(int font, double fontsize)
カ レ ン ト フ ォ ン ト を、 指定す る サ イ ズで設定 し ます。
font
load_font( ) に よ っ て返 さ れた フ ォ ン ト ハン ド ル。
fontsize 文字サ イ ズ を、 カ レ ン ト ユーザー座標系の単位で測っ た も の。 文字サ イ ズは 0
に し てはいけ ません。 文字サ イ ズ を負の値にす る と 、 カ レ ン ト 変換行列について鏡映 さ れ
たテ キ ス ト にな り ます。
詳細
こ の関数は、 show( ) 等の低レベルテ キ ス ト 出力関数で用い ら れ る フ ォ ン ト を設定 し ます。
フ ォ ン ト は、 ページ ご と に、 いかな る 単純テ キ ス ト 出力関数を呼び出す よ り も 前に設定す
る 必要があ り ます。 フ ォ ン ト の設定はページ を超えて保持 さ れません。 ページの中でカ レ
ン ト フ ォ ン ト は何度で も 変更可能です。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ
パラメタ
こ の関数は自動的に leading パ ラ メ タ を fontsize と 同 じ 値に設定 し ます。
VB RB Sub set_text_pos(x As Double, y As Double)
C# void set_text_pos(double x, double y)
ページ上の単純テ キ ス ト 出力のための位置を設定 し ます。
x・y
70
設定 し たいカ レ ン ト テ キ ス ト 位置。
第 4 章 : フ ォ ン ト ・ テキス ト 関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
詳細 テ キ ス ト 位置は、 ページが始ま る ご と にデフ ォ ル ト 値 (0, 0) に設定 さ れます。 グ ラ フ ィ ッ
ク のためのカ レ ン ト 点 と 、 カ レ ン ト テ キ ス ト 位置は、 別々に保持 さ れます。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ
パラメタ 表 4.8 ・ 表 4.9 参照。
VB RB Sub show(text As String)
C# void show(String text)
テ キ ス ト を カ レ ン ト の フ ォ ン ト と サ イ ズでカ レ ン ト テ キ ス ト 位置に印字 し ます。
text
詳細
(内容文字列) 印字 し たいテ キ ス ト 。
フ ォ ン ト はあ ら か じ め、 setfont( ) で設定 し てお く 必要があ り ます。 カ レ ン ト テ キ ス ト 位置
は、 印字 し た テ キ ス ト の末尾へ移動 し ます。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ
パラメタ 表 4.8 ・ 表 4.9 参照。
VB RB Sub show_xy(text As String, x As Double, y As Double)
C# void show_xy(String text, double x, double y)
テ キ ス ト を カ レ ン ト フ ォ ン ト で、 指定 し た位置に印字 し ます。
text
x・y
詳細
(内容文字列) 印字 し たいテ キ ス ト 。
テ キ ス ト を印字 さ せたい位置をユーザー座標系で指定 し ます。
フ ォ ン ト はあ ら か じ め、 setfont( ) で設定 し てお く 必要があ り ます。 カ レ ン ト テ キ ス ト 位置
は、 印字 し た テ キ ス ト の末尾へ移動 し ます。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ
パラメタ 表 4.8 ・ 表 4.9 参照。
VB RB Sub continue_text(text As String)
C# void continue_text(String text)
テ キ ス ト を次の行に印字 し ます。
text (内容文字列) 印字 し たいテ キ ス ト 。 こ れを空文字列にす る と 、 テ キ ス ト 位置はそ
れで も 次の行へ移動 し ます。
詳細 テ キ ス ト の置かれ る 位置 (x ・ y 位置) と 、 行の間隔は、 leading パ ラ メ タ と 、 も っ と も 最
近の show_xy( ) か set_text_pos( ) への呼び出 し に よ っ て決定 さ れます。 カ レ ン ト 位置は、
印字 し た テ キ ス ト の末尾へ移動 し ます。 こ の関数を連続で呼び出す と 、 x 位置は変わ り ま
せん。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ。 こ の関数は縦書 き では使っ てはいけ ません。
パラメタ 表 4.8 ・ 表 4.9 参照。
4.4 単純テキス ト 出力
71
VB RB Function stringwidth(text As String, font As Long, fontsize As Double) As Double
C# double stringwidth(String text, int font, double fontsize)
任意の フ ォ ン ト でのテ キ ス ト の幅を返 し ます。
text
(内容文字列) 幅を取得 し たいテ キ ス ト 。
font
load_font( ) に よ っ て返 さ れた フ ォ ン ト ハン ド ル。
fontsize
フ ォ ン ト のサ イ ズ を、 ユーザー座標の単位で測っ た も の (setfont( ) 参照)。
戻り値 load_font( ) で選んでい る フ ォ ン ト と 、 与えた fontsize での、 text の幅。 返 さ れ る 幅は負の
値にな る こ と も あ り ます (負の横伸縮を設定 し てい る と き 等) 。 縦書 き の と き は、 も っ と
も 幅の広いグ リ フ の幅が返 さ れます (テ キ ス ト の実際の高 さ を知 る には info_textline( ) を
使い ます)。
字間が指定 さ れてい る と き は、 それは最後のグ リ フ に も 適用 さ れます ( こ の動作は info_
textline( ) と は異な り ます)。
詳細 幅の計算にあ た っ ては、次のテ キ ス ト パ ラ メ タ のカ レ ン ト 値が考慮 さ れます:horizscaling・
kerning ・ charspacing ・ wordspacing。
スコープ
フ ォ ン ト ・ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ パス ・ グ リ フ ・ 文書
パラメタ 表 4.8 ・ 表 4.9 参照。
72
第 4 章 : フ ォ ン ト ・ テキス ト 関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
4.5 Unicode 変換関数
こ の節は COM ・ .NET ・ REALbasic にはあ ては ま り ません。
4.5 Unicode 変換関数
73
74
第 4 章 : フ ォ ン ト ・ テキス ト 関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
5 テキス ト と 表の組版
5.1 テキス ト オ プ シ ョ ン
こ の項では、 fit_textline( ) ・ info_textline( ) ・ add/create_textflow( ) のテ キ ス ト オプシ ョ ン
群を挙げます。 テ キ ス ト オプシ ョ ンは、 表セル と テ キ ス ト ブ ロ ッ ク に も 適用 さ れます :
> 表 5.1 に従っ た入力フ ィ ル タ オプシ ョ ン群。
> 表 5.2 に従っ た テ キ ス ト 書式オプシ ョ ン群。
> 表 5.3 に従っ た シ ェーピ ン グ ・ タ イ ポグ ラ フ ィ オプシ ョ ン群。
表 5.1 入力フ ィ ル タ オプ シ ョ ン一覧
オプ シ ョ ン
説明
charref
(論理値) true にする と 、 数値 ・ 文字実体参照 と グ リ フ名参照の置き換えが有効にな り ます。 デ
フ ォ ル ト : グ ローバルな charref パラ メ タ
escapesequence
(論理値) true にする と 、 文字列の中のエ スケープ シーケ ン スの置き換えが有効にな り ます。
create_textflow( ) に与え る テキス ト の中に イ ン ラ イ ン オプ シ ョ ン リ ス ト があ る場合、 イ ン ラ イ ン オ
プ シ ョ ン リ ス ト の先頭キ ャ ラ ク タ はエ スケープ シーケ ン ス で表す こ と も可能です。 し か し 、 イ ン
ラ イ ン オプ シ ョ ン リ ス ト 内では、 末尾キ ャ ラ ク タ も含め、 エ スケープ シーケ ン スは働き ません。
デ フ ォル ト : グ ローバルな escapesequence パラ メ タ
glyphcheck
(キーワー ド ) グ リ フ検査ポ リ シ。 すなわち、 選択 し た フ ォ ン ト 内のグ リ フへマ ッ プ で き ない コ ー
ド がテキス ト 内にあ る と き にどのよ う に動作するか (デ フ ォ ル ト 1 : replace) :
none
検査 し ません
error
グ リ フが得られない と き に例外を発生 さ せます。 具体的な エ ラ ー メ ッ セージは get_
errmsg( ) で取得で き ます。
replace
PDFlib は、 得られないグ リ フ を、 ベース フ ォ ン ト ・ 予備フ ォ ン ト 内の適切なグ リ フが得
ら れる な らば、 それに置き換え よ う と 試みます。 合字は分解 さ れます。 適切な置き換え
がで き ない と きは、 そのグ リ フは replacementchar で 置き換え られます。
1. fit_textline( ) ・ info_textline( ) で inittextstate=false の場合のデ フ ォル ト : オ プ シ ョ ン と 同名のパ ラ メ タ (表 4.8 ・
表 4.9 参照)
表 5.2 テキス ト 書式オプ シ ョ ン一覧
オプ シ ョ ン
説明
charspacing
(float またはパーセ ン ト 値) 字間。 すなわち、 文字列内の個々のキ ャ ラ ク タ を配置 し た後のカ レ ン
ト 点の変位。 float 値はユーザー座標系の単位を指定 し ます。 パーセ ン ト 値は fontsize に対する比
です。 文字ど う し の間隔を拡げるには、 横書き では正の値を、 縦書き では負の値を用います。 デ
フ ォル ト 1 : 0
dasharray
(float 2 個の リ ス ト ) 描線 (袋文字) テキス ト と 文字飾 り に対する線 と 線間の長 さ 。 デ フ ォル ト :
{0 0} (すなわち実線)
decorationabove
(論理値) true にする と 、 underline ・ strikeout ・ overline オプ シ ョ ン で有効に さ れた文字飾 り
はテキス ト の上に、 そ う でなければテキス ト の下に描かれます。 描画順を変え る こ と で、 飾 り 線
は見えた り 隠れた り し ます。 デ フ ォ ル ト
1
: false
5.1 テキス ト オプ シ ョ ン
75
表 5.2 テキス ト 書式オプ シ ョ ン一覧
オプ シ ョ ン
説明
fakebold
(論理値) true にする と 、 3 回の重ね印字で太字フ ォ ン ト に見せかけます。 強調にはボール ド フ ォ
ン ト バ リ エーシ ョ ン を使 う こ と を強 く 推奨 し ます。 こ のパラ メ タ が作成する テキス ト 出力は、 本
当のボール ド のテキス ト よ り 劣 り 、 テキス ト 抽出も妨げます。 デ フ ォル ト
1
: false
fillcolor
(色) テキス ト の塗 り 色。 fit_textline( ) で inittextstate=false の場合のデ フ ォル ト : カ レ ン ト グ
ラ フ ィ ッ ク状態の中の対応するパラ メ タ 。 デ フ ォ ル ト : {gray 0} (PDF/A モー ド では {lab 0 0
0})
font
(フ ォ ン ト ハン ド ル) 使いたい フ ォ ン ト のハン ド ル。 このオプ シ ョ ン を与え る と 、 すべての フ ォ ン
ト 読み込みオプ シ ョ ンは無視 さ れます (fontname ・ encoding も)。 こ の font オプ シ ョ ン を使 う と 、
fontname/encoding オプ シ ョ ンに よ る暗黙的な フ ォ ン ト 読み込みよ り もパ フ ォ ーマ ン スが向上 し ま
す。
デ フ ォ ル ト : 暗黙的に読み込まれた フ ォ ン ト が得られる な ら それ、 そ う でないな ら カ レ ン ト テキ
ス ト 状態の中のフ ォ ン ト (テキス ト 行で inittextstate=false の場合のみ)。 それ以外の場合は
フ ォ ン ト は得 られず、 エ ラ ーが発生 し ます。
fontsize
(文字サイ ズ。 必須) 文字サイ ズを、 カ レ ン ト ユーザー座標系の単位で表 し た もの。 fit_textline( )
の場合、 パーセ ン ト 値は、 枠の幅 (orientate=north ・ south の場合) または高 さ
(orientate=east ・ west の場合) に対する比です。 テキス ト フ ローの場合、 パーセ ン ト 値は、 直前
のテキス ト のサイ ズに対する比です。 デ フ ォル ト : カ レ ン ト 文字サイ ズ
gstate
(グ ラ フ ィ ッ ク状態ハン ド ル) create_gstate( ) で取得 さ れたグ ラ フ ィ ッ ク状態のハン ド ル。 そのグ
ラ フ ィ ッ ク状態が、 こ の関数で生成するすべてのテキス ト に対 し て効力を持ち ます。 デ フ ォル ト :
グ ラ フ ィ ッ ク 状態な し (すなわち、 カ レ ン ト の設定が使われます)。
horizscaling
(float またはパーセ ン ト 値。 0 以外にする必要があ り ます) テキス ト を、 与えたパーセ ン ト 値に横
へ伸縮 (0 以外にする必要があ り ます)。 テキス ト の伸縮は、 テキス ト を、 与えたパーセ ン ト 値に
縮めた り 伸ば し た り し ます。 テキス ト の伸縮はつねに横座標での値 と な り ます。 デ フ ォ ル ト
100
italicangle
1
:
(float) テキス ト のイ タ リ ッ ク (斜体) 角度を度単位で (-90° と 90°の間で) 表 し た もの。 負の
値を利用すれば特に日中韓 フ ォ ン ト な ど、 レギ ュ ラ ー フ ォ ン ト し か得られない と き に、 斜体に見
せる こ と がで き ます。 デ フ ォ ル ト
1
:0
kerning
(論理値) true にする と 、 readkerning オプ シ ョ ン を付けて開いてある フ ォ ン ト に対 し て カ ーニ ン
グ を有効に し ます。 そ う でないな ら無効に し ます。 デ フ ォル ト : グ ローバルな kerning パラ メ タ
overline
(論理値) 上線モー ド 。 デ フ ォ ル ト
strikeout
(論理値) 取 り 消 し 線モー ド 。 デ フ ォ ル ト
strokecolor
(色。 textrendering を テキス ト を描線する よ う 設定 し ている場合のみ有効) テキス ト の描線色。
デ フ ォ ル ト : fillcolor 参照
strokewidth
(float ・ パーセ ン ト 値 ・ キーワー ド のいずれか。 textrendering を テキス ト を袋文字にする よ う 設
定 し ている場合のみ有効) 袋文字テキス ト の線幅 (絶対値、 または fontsize に対する比で)。
キーワー ド auto か値 0 を指定する と 、 内蔵のデ フ ォ ル ト を用います。 デ フ ォ ル ト : auto
76
1
: false
1
: false
第 5 章 : テキス ト と 表の組版 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 5.2 テキス ト 書式オプ シ ョ ン一覧
オプ シ ョ ン
説明
textrendering
(整数) テキス ト 表現モー ド 。 Type 3 フ ォ ン ト の場合は、 値 3 だけが効力を持ち ます (デ フ ォル ト
1
: 0) :
0
P
1
2
P
3
テキス ト を塗る
テキス ト を塗 り 、 ク リ ッ ピ ングパスに追加
4
テキス ト を描線 (袋文字) 5
テキス ト を描線 し 、 ク リ ッ ピ ン グパスに追加
テキス ト を塗 っ て描線
6
テキス ト を塗っ て描線 し 、 ク リ ッ ピ ン グパスに追加
不可視テキス ト
7
テキス ト を ク リ ッ ピ ングパスに追加
(fit_textline( ) ま たは fit_textflow( ) では何 ら効力
を持ち ません)
textrise
(float またはパーセ ン ト 値) テキス ト ラ イ ズパラ メ タ 。 テキス ト を配置 し たい位置 と ベース ラ イ ン
と の間隔を指定 し ます。 正の値のテキス ト ラ イ ズはテキス ト を上へ移動 さ せます。 テキス ト ラ イ
ズはつねに縦座標での値 と な り ます。 これは、 上付き ・ 下付き を さ せたい と き に有用で し ょ う 。
パーセ ン ト 値は fontsize に対する比です。 デ フ ォル ト
1
:0
underline
(論理値) 下線モー ド 。 デ フ ォル ト
underlineposition
(float ・ パーセ ン ト 値 ・ キーワー ド のいずれか) 下線テキス ト の下線の位置を、 ベース ラ イ ンか ら
の距離で (絶対値か、 または文字サイ ズに対する比。 代表的な値は -10%) 指定 し ます。 キーワー
ド auto を指定する と 、 フ ォ ン ト の メ ト リ ッ ク またはアウ ト ラ イ ン フ ァ イルから 取得 さ れる フ ォ ン
1
: false
ト 固有の値が採用 さ れます。 デ フ ォ ル ト
underlinewidth
1
: auto
(float ・ パーセ ン ト 値 ・ キーワー ド のいずれか) テキス ト の下線の線幅 (絶対値か、 または文字サ
イ ズに対する比)。 キーワー ド auto か値 0 を指定する と 、 フ ォ ン ト の メ ト リ ッ ク またはアウ ト ラ
イ ン フ ァ イルか ら フ ォ ン ト 固有の値が得 られる場合はそれが採用 さ れ、 そ う で ないな ら 5% と な り
ます。 デ フ ォル ト
1
: auto
wordspacing (float またはパーセ ン ト 値) 単語間隔。 すなわち、 行内の個々の単語を配置 し た後のカ レ ン ト 点の
変位。 言い換えれば、 カ レ ン ト 点が、 各スペースキ ャ ラ ク タ (U+0020) の後で横へ移動 さ れます。
値は、 ユーザー座標系で表すか、 または文字サイ ズに対する比で指定 し ます。 デ フ ォル ト
1
:0
1. fit_textline( ) ・ info_textline( ) で inittextstate=false の場合のデ フ ォル ト : オ プ シ ョ ン と 同名のパ ラ メ タ (表 4.8 ・ 表 4.9 参照)
表 5.3 シ ェ ーピ ング ・ タ イ ポグ ラ フ ィ オプ シ ョ ン一覧
オプ シ ョ ン
説明
features
(キーワー ド の リ ス ト ) script ・ language オプ シ ョ ンに従っ て、 OpenType フ ォ ン ト のどの タ イ ポ
グ ラ フ ィ 機能がテキス ト に適用 さ れるかを指定 し ます。 フ ォ ン ト 内に存在 し ない機能に対する
キーワー ド は、 警告を出 さ ずに無視 さ れます。 以下のキーワー ド を与え る こ と が可能です :
_none
フ ォ ン ト 内の機能を一切適用 し ません。 ただ し 例外 と し て、 vert 機能は novert キー
ワー ド で明示的に無効化する必要があ り ます。
<name>
機能を有効にする ために、 その 4 文字の OpenType タ グ名を与え ます。 よ く 使われる機
能名は liga ・ ital ・ tnum ・ smcp ・ swsh ・ zero です。 対応 し ているすべての機能の名前
と 説明の完全な一覧は PDFlib チ ュ ー ト リ アルにあ り ます。
no<name> 機能名の前に接頭辞 no を付ける と (例 : noliga) この機能が無効化 さ れます。
デ フ ォル ト : 横書き では _none、 縦書き では vert。
5.1 テキス ト オプ シ ョ ン
77
表 5.3 シ ェ ーピ ング ・ タ イ ポグ ラ フ ィ オプ シ ョ ン一覧
オプ シ ョ ン
説明
language
(キーワー ド 。 script を与えている と きのみ意味を持ち ます) 指定 し た言語に従っ て テキス ト が処
理 さ れます。 こ れは features ・ shaping オプ シ ョ ンに対 し て意味を持ち ます。 キーワー ド の完全
な一覧は PDFlib チ ュ ー ト リ アルにあ り ます。 例 : ARA (ア ラ ビ ア語) ・ JAN (日本語) ・ HIN ( ヒ ン
デ ィ ー語)。 デ フ ォ ル ト : _none (言語未定義)
script
(キーワー ド 。 shaping=true な ら必須) 指定 し た用字系に従っ て テキス ト が処理 さ れます。 こ れは
features ・ shaping ・ advancedlinebreak オプ シ ョ ン に対 し て意味を持ち ます。 用字系 と し て も っ
と も よ く 使われるキーワー ド は次の と お り です : _none (用字系未定義) ・ latn ・ grek ・ cyrl ・
armn ・ hebr ・ arab ・ deva ・ beng ・ guru ・ gujr ・ orya ・ taml ・ thai ・ laoo ・ tibt ・ hang ・ kana ・
han。 キーワー ド の完全な一覧は PDFlib チ ュ ー ト リ アルにあ り ます。 キーワー ド _auto を指定する
と 、 テキス ト 内のキ ャ ラ ク タ の多数が属する用字系が選択 さ れます。 その際、 latn と _none は無
視 さ れます。 _auto は、 shaping に対 し てのみ意味を持ち、 features と advancedlinebreak に対 し
ては無視 さ れます。 デ フ ォ ル ト : _none
shaping
(論理値) true にする と 、 script ・ language オプ シ ョ ンに従っ て、 複雑用字系のシ ェ ーピ ング と
双方向組版がテキス ト に適用 さ れます。 script オプ シ ョ ンが _none 以外の値を持つ必要があ り 、
かつ フ ォ ン ト が特定の条件に従っ ている必要があ り ます (PDFlib チ ュ ー ト リ アル参照)。 シ ェ ーピ
ングは、 同 じ フ ォ ン ト 内のキ ャ ラ ク タ 群に対 し てのみ行われます。 シ ェ ーピ ングは、 テキス ト フ
ロー内の右書き テキス ト では利用で き ません (テキス ト 行内のみ)。 デ フ ォル ト : false
78
第 5 章 : テキス ト と 表の組版 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 5.4 fit_textline( ) ・ add/create_textflow( ) と 、 create_textflow( ) のイ ン ラ イ ン オプ シ ョ ンの、 leader オプ シ ョ ンの
サブオプ シ ョ ン一覧
オプ シ ョ ン
説明
フォン ト読
み込みオプ
シ ョ ン群
フ ォ ン ト を暗黙的に (すなわち、 font オプ シ ョ ン ではな く fontname ・ encoding オプ シ ョ ン を用い
て) 指定する と きは、 表 4.3 に従 っ たすべての フ ォ ン ト 読み込みオプ シ ョ ン をサブオプ シ ョ ン と し
て与え る こ と がで き ます。
alignment
(キーワー ド 1 個または 2 個) 1 番目のキーワー ド は、 はめ込み枠左端 と テキス ト 行の間の リ ーダ
の整列を指定 し ます。 2 番目のキーワー ド は、 テキス ト 行 と はめ込み枠右端の間の リ ーダの整列を
指定 し ます。 キーワー ド を 1 個だけ指定する と 、 テキス ト 行 と はめ込み枠右端の間の リ ーダに対
し て使われます。 使え るキーワー ド (テキス ト 行の場合のデ フ ォル ト : {none grid}。 テキス ト フ
ローの場合のデ フ ォル ト : grid) :
center
テキス ト 行 : リ ーダは、 テキス ト 行 と はめ込み枠端の間で両端揃え さ れます。
テキス ト フ ロー : リ ーダは、 最後の部分テキス ト (あ るいはテキス ト がない と きは行の
先頭) と タ ブ位置 (あ るいは タ ブがない と きは行の末尾) と の間で中央揃え さ れます。
grid
PDFlib は、 テキス ト 行の左ま たは右へ、 リ ーダ テキス ト の幅の半分の倍数ご と にグ リ ッ
ド を仮想 し 、 リ ーダ テキス ト の位置を、 その次のグ リ ッ ド に吸着 さ せます。 こ れに よ
り 、 テキス ト 行 と リ ーダ テキス ト の間に、 リ ーダテキス ト の幅の最大 50% のアキが生 じ
ます。
justify
テキス ト 行 : リ ーダは、 適切な字間を適用する こ と に よ り 、 テキス ト 行 と はめ込み枠端
の間で両端揃え さ れます。
テキス ト フ ロー : リ ーダは、 適切な字間を適用する こ と によ り 、 最後の部分テキス ト
(あるいはテキス ト がない と きは行の先頭) と タ ブ位置 (あ るいは タ ブがない と きは行
の末尾) と の間で両端揃え さ れます。
left
それぞれ リ ーダは、 はめ込み枠左端から、 またはテキス ト 行末尾から 開始 し て繰 り 返 さ
れます。 こ れを指定する と それぞれ、 テキス ト 行先頭に、 ま たははめ込み枠右端に隙間
が生 じ る可能性があ り ます。
none
リ ーダな し
right
それぞれ リ ーダは、 はめ込み枠右端から、 またはテキス ト 行先頭から 開始 し て繰 り 返 さ
れます。 こ れを指定する と それぞれ、 テキス ト 行末尾に、 ま たははめ込み枠左端に隙間
が生 じ る可能性があ り ます。
fillcolor
(色) リ ーダの色。 デ フ ォ ル ト : テキス ト 行の色
font
( フ ォ ン ト ハン ド ル) リ ーダに対 し て使いたい フ ォ ン ト のハン ド ル。 デ フ ォル ト : テキス ト 行の
フォン ト
fontsize
(文字サイ ズ) リ ーダのサイ ズ。 デ フ ォ ル ト : テキス ト 行の文字サイ ズ
text
(内容文字列) リ ーダに使いたいテキス ト 。 デ フ ォ ル ト : U+002E 「.」 (ピ リ オ ド )
yposition
(float またはキーワード)リーダの縦位置を、ベースラインに対して相対的に、数値またはキー
ワード fontsize・ascender・xheight・baseline・descender・textrise のいずれかで指定しま
す。デフォルト:baseline
5.1 テキス ト オプ シ ョ ン
79
5.2 テキス ト 行に よ る一行テキス ト
ク ッ ク ブ ッ ク 完全な コ ー ド サン プルが ク ッ ク ブ ッ クの text_output/starter_textline ト ピ ッ ク にあ り ま
す。
VB RB Sub fit_textline(text As String, x As Double, y As Double, optlist As String)
C# void fit_textline(String text, double x, double y, String optlist)
一行のテ キ ス ト を位置 (x, y) に、 さ ま ざ ま なオプシ ョ ンに従っ て配置 し ます。
text
x・y
(内容文字列) ページ上に配置 し たいテ キ ス ト 。
テ キ ス ト を さ ま ざ ま なオプシ ョ ンに従っ て配置 し たい参照点の座標を、ユーザー座
標系で指定 し ます。 はめ込みアルゴ リ ズ ムの説明は 111 ページ 「6.1 オブジ ェ ク ト のはめ
込み」 を参照。
optlist
フ ォ ン ト ・ テ キ ス ト ・ 組版オプシ ョ ン群を指定 し たオプシ ョ ン リ ス ト 。 以下のオ
プシ ョ ンが使え ます :
> 一般オプシ ョ ン : errorpolicy (28 ページ 「2.5 例外処理」 参照)
> 表 4.3 で暗黙的フ ォ ン ト 読み込み(すなわち、テ キ ス ト 書式グループの font オプシ ョ ン
を与えない) の場合に従っ た フ ォ ン ト 読み込みオプシ ョ ン群 :
ascender ・ autocidfont ・ autosubsetting ・ capheight ・ descender ・ embedding ・
encoding ・ fallbackfonts ・ fontname ・ fontstyle ・ keepnative ・ linegap ・ metadata ・
monospace ・ readfeatures ・ replacementchar ・ subsetlimit ・ subsetminsize ・ subsetting ・
unicodemap ・ vertical ・ xheight
> 表 5.1 に従っ た入力フ ィ ル タ オプシ ョ ン群 :
charref ・ escapesequence ・ glyphcheck
> 表 5.2 に従っ たテ キ ス ト 書式オプシ ョ ン群 :
charspacing ・ dasharray ・ decorationabove ・ fakebold ・ fillcolor ・ font ・ fontsize ・
gstate ・ horizscaling ・ inittextstate ・ italicangle ・ kerning ・ overline ・ strikeout ・
strokecolor ・ strokewidth ・ textrendering ・ textrise ・ underline ・ underlineposition ・
underlinewidth ・ wordspacing
> 表 5.3 に従っ たシ ェ ーピ ン グ ・ タ イ ポグ ラ フ ィ オプシ ョ ン群 :
features ・ language ・ script ・ shaping
> 表 6.1 に従っ たはめ込みオプシ ョ ン群 :
alignchar ・ blind ・ boxsize ・ fitmethod ・ margin ・ matchbox ・ orientate ・ position ・
rotate ・ stamp ・ showborder ・ shrinklimit
> 表 5.5 に従っ たテ キ ス ト 行組版のためのオプシ ョ ン群 :
inittextstate ・ leader ・ shadow ・ textpath ・ xadvancelist
詳細 inittextstate=false ( こ れがデフ ォ ル ト です) にす る と 、 カ レ ン ト のテ キ ス ト ・ グ ラ フ ィ ッ
ク 状態のパ ラ メ タ 群が、 オプシ ョ ンで明示的に上書 き し ない限 り 、 テ キ ス ト 出力の書式の
制御に用い ら れます。
inittextstate=true にす る と 、 テ キ ス ト ・ グ ラ フ ィ ッ ク 状態のパ ラ メ タ 群のデフ ォ ル ト
値が、 オプシ ョ ンで明示的に上書 き し ない限 り 、 テ キ ス ト 出力の書式の制御に用い ら れま
す。 テ キ ス ト 行オプシ ョ ン群は、 今回の fit_textline( ) への呼び出 し よ り 後に生成す る 出力
に対 し ては効力を持ち ません。
80
第 5 章 : テキス ト と 表の組版 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
カ レ ン ト のテ キ ス ト ・ グ ラ フ ィ ッ ク 状態は、 こ の関数に よ っ て変更を受け ません (特
に、 カ レ ン ト フ ォ ン ト は影響を受け ません)。 ただ し 、 textx/texty パ ラ メ タ は、 生成 し た
テ キ ス ト 出力の末尾位置へ変更 さ れます。
continue_text( ) に対す る 参照点は、 テ キ ス ト の先頭には設定 さ れません。 fit_textline( )
の後に continue_text( ) を使 う ためには、 開始点を info_textline( ) と startx/starty キーワー
ド で取得 し て、 テ キ ス ト 位置を set_text_pos( ) で設定する 必要があ り ます。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ 。 こ の関数は縦書 き では使っ てはいけ ません。
パラメタ 表 4.8 ・ 表 4.9 参照。
表 5.5 fit_textline( ) の追加オプ シ ョ ン一覧
オプ シ ョ ン
説明
inittextstate
(論理値) true の場合、 すべてのテキス ト 書式オプ シ ョ ンがそれぞれのデ フ ォ ル ト 値へ初期化 さ れ
ます。 false の場合、 カ レ ン ト テキス ト 状態値が用い られます。 デ フ ォ ル ト : false
leader
(オプ シ ョ ン リ ス ト 。 boxsize を指定 し ていない と き、 または枠の幅が 0 の と きは無視 さ れます)
隙間埋めテキス ト (点 リ ーダ等) と 組版オプ シ ョ ン群を指定 し ます。 リ ーダは、 テキス ト 枠の端
と テキス ト の間に繰 り 返 し 挿入 さ れます。
使え るサブオプ シ ョ ンの一覧は表 5.4 を参照。 デ フ ォ ル ト : リ ーダな し
shadow
stamp
textpath
(オプ シ ョ ン リ ス ト ) テキス ト に影を付けます (デ フ ォル ト : 影な し ) :
offset
(float 2 個の リ ス ト ) テキス ト 行の参照点からの影の変位を、 ユーザー座標系か、 また
は文字サイ ズに対するパーセ ン ト 値で指定 し ます。 デ フ ォ ル ト : {5% -5%}
fillcolor
(色) 影の色。 デ フ ォ ル ト : {gray 0.8}
gstate
(グ ラ フ ィ ッ ク状態ハン ド ル) 影に適用 さ せたい、 create_gstate( ) で取得 し たグ ラ
フ ィ ッ ク 状態。 デ フ ォ ル ト : な し
(キーワー ド 。 boxsize を指定 し ていない と きは無視 さ れます) このオプ シ ョ ン を使 う と 、 boxsize
オプ シ ョ ン で指定する枠の対角線上にス タ ン プ を生成する こ と がで き ます。 ス タ ン プのテキス ト
は可能な限 り 大き く さ れます。 ス タ ン プのテキス ト を枠内に配置する際、 position ・ fitmethod ・
orientate (north ・ south のみ) オプ シ ョ ンは効力を持ち ます。 デ フ ォル ト : none。
ll2ur
ス タ ン プは、 左下隅か ら右上隅への対角線に沿っ て置かれます。
ul2lr
ス タ ン プは、 左上隅か ら右下隅への対角線に沿っ て置かれます。
none
ス タ ン プは作成 さ れません。
(オプ シ ョ ン リ ス ト ) テキス ト をパスに沿っ て描き ます。 パスの終端か らはみ出 し た テキス ト は表
示 さ れません。 使え るサブオプ シ ョ ンの一覧は表 5.6 を参照。 showborder=true にする と 、 パスが
カ レ ン ト の線幅 と 描線色で描かれます。
fit_textline( ) の以下のオプ シ ョ ン群は、 パス上のテキス ト については意味が変わ り ます :
matchbox 各グ リ フ に対 し て個別の枠が生成 さ れます。
position
1 番目の値は、 パスの長 さ に対する テキス ト の相対的な開始位置 (left/center/right)
を指定 し ます。 テキス ト がパス よ り 長い場合は、 テキス ト はつねに startoffset から 始
ま り ます。 2 番目の値は、 パスに対する各グ リ フの相対的な縦位置を、 すなわちグ リ フ
枠のどの部分がパスに接するか (bottom/center/top) を指定 し ます。
rotate
各グ リ フ の回転角を指定 し ます。
以下のはめ込み枠関連のオプ シ ョ ン群は無視 さ れます :
boxsize ・ margin ・ fitmethod ・ orientate ・ alignchar ・ showborder ・ stamp ・ leader
カ ーニ ング と 、 日中韓レ ガシ エ ン コ ーデ ィ ングに よ る テキス ト は、 パス上のテキス ト では対応 し
ていません。
5.2 テキス ト 行に よ る一行テキス ト
81
表 5.5 fit_textline( ) の追加オプ シ ョ ン一覧
オプ シ ョ ン
説明
xadvancelist
(float の リ ス ト ) テキス ト 内のすべてのグ リ フ の変位幅を指定 し ます。 リ ス ト の要素数は、 テキス
ト のグ リ フ数以下にする必要があ り ます。 標準のグ リ フ幅のかわ り に、 こ の xadvance 値がそれぞ
れ使われます。 それ以外のカ ーニ ングや字間な どの書式に対 し ては効力を持ち ません。
表 5.6 fit_textline( ) の textpath オプ シ ョ ンのサブオプ シ ョ ン一覧
オプ シ ョ ン
説明
path
(パスハン ド ル。 必須) テキス ト 出力のためのベース ラ イ ン と し て使いたいパス。 デ フ ォル ト で
は、 テキス ト はパスの左側に配置 さ れ、 パスはテキス ト のベース ラ イ ン と な り ます。 し か し 、
position オプ シ ョ ンの 2 番目のキーワー ド を top にする と 、 テキス ト はパスの右端に配置 さ れ、
テキス ト の上端がパスに接 し ます。 fit_textline( ) の引数 x ・ y がパスの参照点 と し て用い ら れます。
rotate
(float) 参照点を中心 と し 、 与えた値を度単位で表 し た回転角 と し て、 パス を回転 さ せます。 デ
フ ォル ト : 0
scale
(float 1 個か 2 個の リ ス ト ) 参照点を中心 と し 、 与えた値を横 ・ 縦の拡縮倍率 と し て、 パス を拡縮
小 し ます。 値を 1 個だけ与え る と 、 それが両方向に対 し て用い られます。 デ フ ォ ル ト : {1 1}
startoffset
(float またはパーセ ン ト 値) テキス ト のパス上の開始点の変位を、 ユーザー座標で、 またはパスの
長 さ に対するパーセ ン ト 値で指定 し ます。 デ フ ォ ル ト : 0
tolerance
(float またはパーセ ン ト 値) パスの末尾グ リ フ がどの く ら いパスか らはみ出て も よいかを指定 し ま
す。 値は、 ユーザー座標で、 ま たは文字サイ ズに対するパーセ ン ト 値で指定 し ます。 デ フ ォル ト :
25%
subpaths
(整数の リ ス ト か、 ま たはキーワー ド 1 個) 描画 さ せたいサブパスの番号の リ ス ト 。 キーワー ド
all を指定する と すべてのサブパスにな り ます。 デ フ ォ ル ト : all
close
(論理値) true にする と 、 各サブパスが直線で閉 じ られます。 デ フ ォ ル ト : パスが構築 さ れた時に
指定 さ れた値、 あるいは値が指定 さ れなかっ たな ら false
round
(float) 各サブパスについて、 隣 り あ う 線の頂点が、 それらの接合点で、 指定 し た半径を持ち、 そ
れらの線分を接線 と する円弧に よ っ て丸め られます。 半径を負にする と 、 角が円形にへ こ むよ う
に弧が切 り 取 られます。 close=true と する と 、 終了点から開始点への線を指定 し ていないな ら ば、
最初の線 と 閉 じ る線 も丸め られます。 round=0 と する と 丸めは行われません。 デ フ ォ ル ト : パスが
構築 さ れた時に指定 さ れた値、 あ るいは値が指定 さ れなかっ たな ら 0
VB RB Function info_textline(text As String, keyword As String, optlist As String) As Double
C# double info_textline(text As String, String keyword, String optlist)
テ キ ス ト 行の組版を、 出力を生成せず仮想的に行な っ て、 その結果の メ ト リ ッ ク を取得 し
ます。
text
(内容文字列) テ キ ス ト 行の内容。
keyword
ほ し い情報を表 5.7 に従っ て指定 し た キーワー ド 。
optlist fit_textline( ) のオプシ ョ ン群を指定 し たオプシ ョ ン リ ス ト 。 要求 し た キーワー ド
に関係のないオプシ ョ ンは、 警告を出 さ ずに無視 さ れます。
戻り値 keyword で要求 し た何 ら かのテ キ ス ト メ ト リ ッ ク 値の値。
82
第 5 章 : テキス ト と 表の組版 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
詳細
こ の関数は、与えたオプシ ョ ンに従っ てテ キ ス ト を配置す る ために必要な計算をすべて行
い ますが、 実際にページ上に出力を作成は し ません。 テ キ ス ト 参照点は {0 0} と 見な さ れ
ます。
errorpolicy=return の場合、 こ の関数はエ ラ ー時に 0 を返 し ます。 errorpolicy=exception
の場合、 こ の関数はばエ ラ ー時に例外を発生 さ せ ま す (wellformed キー ワ ー ド に対 し て
も )。
スコープ オブ ジ ェ ク ト 以外の任意
表 5.7 info_textline( ) のキーワー ド 一覧
キーワー ド
説明
angle
ベース ラ イ ンの回転角を度単位で表 し た もの、 すなわち テキス ト の回転
ascender
capheight
descender
ア セ ン ダ ・ キ ャ ッ プハイ ト ・ デ ィ セ ン ダ。 それぞれ、 同名の タ イ ポグ ラ フ ィ 特性をユー
ザー座標で表 し た も の
endx ・ endy
論理的な テキス ト 終了位置の x ・ y 座標をユーザー座標系で表 し た もの
height
範囲枠の boxheight 指定に従 っ た テキス ト 文字列の高 さ
perpendiculardir
writingdir に垂直な単位ベ ク ト ル。 標準的な横書き テキス ト な ら こ れは (0, 1)、 縦書き テキ
ス ト な ら (1, 0) で し ょ う
replacedchars
カ レ ン ト エ ン コ ーデ ィ ング内の コ ー ド に、 ま たはフ ォ ン ト 内のグ リ フ にマ ッ プ で き なか っ
たので、 タ イ ポグ ラ フ ィ 的に類似のキ ャ ラ ク タ 群の内蔵 リ ス ト 内のわずかに異な るグ リ フ
に、 または予備フ ォ ン ト 内のグ リ フ に置き換え られたキ ャ ラ ク タ の数。 こ の値が 0 以外に
な るのは、 glyphcheck=replace に し た と き だけです。
righttoleft
テキス ト のグ ローバルな出力方向が右書き な ら 1、 左書き ま たは縦書き テキス ト な らば 0。
こ のグ ローバル方向は先頭キ ャ ラ ク タ 群に基づいて、 かつ、 テキス ト 内に方向マー カが存
在 し ていれば (例 : U+202D または &LRO;、 左書き上書き) それに も基づいて決定 さ れま
す。
scalex ・ scaley
横 ・ 縦伸縮倍率。 こ れが 1 で ないな ら、 テキス ト は枠に収める ために伸縮 さ れる必要があ
り ます。
scriptlist
テキス ト 内のすべての用字系の名前のスペース区切 り の リ ス ト を内容 と し て持つ文字列。
こ れはテキス ト シ ェ ーピ ン グ を用意するのに有用で し ょ う 。 用字系名群は頻度順に降順で
並べ替え られています。 用字系 _none と _latn は、 シ ェ ーピ ングに関係がないので無視 さ
れます。 テキス ト 内に _none と _latn のキ ャ ラ ク タ だけが存在 し ている と きは、 -1 が返 さ
れます。
startx ・ starty
論理的な テキス ト 開始位置の x ・ y 座標をユーザー座標系で表 し た もの
unknownchars
glyphcheck=none の場合 : スキ ッ プ さ れたキ ャ ラ ク タ の数。 こ の数の中には、 解決で き な
かっ た文字参照 と 、 カ レ ン ト エ ン コ ーデ ィ ング内の コ ー ド に、 ま たはフ ォ ン ト 内のグ リ フ
にマ ッ プ で き なかっ たキ ャ ラ ク タ と が含まれています。
glyphcheck=replace の場合 : 指定 し た置き換えキ ャ ラ ク タ (replacementchar オプ シ ョ ン)
で置き換え ら れたキ ャ ラ ク タ の数。 この数の中には、 カ レ ン ト エ ン コ ーデ ィ ング内の コ ー
ド に、 または フ ォ ン ト 内のグ リ フ にマ ッ プ で き なかっ たキ ャ ラ ク タ と 、 タ イ ポグ ラ フ ィ 的
に類似のキ ャ ラ ク タ に置き換え る こ と がで き なかっ たキ ャ ラ ク タ と が含まれています。
unmappedchars
スキ ッ プ さ れたか置き換え られたキ ャ ラ ク タ の数。 すなわち、 replacedchars と
unknownchars の合計。
wellformed
それぞれ対応する オプ シ ョ ン で選択 さ れた フ ォ ン ト ・ エ ン コ ーデ ィ ング (適用可能な ら
textformat も) に従っ て テキス ト が整え ら れている な ら 1、 そ う で ないな ら 0。
5.2 テキス ト 行に よ る一行テキス ト
83
表 5.7 info_textline( ) のキーワー ド 一覧
キーワー ド
説明
width
テキス ト 文字列の幅 (横書きの場合) か、 またはも っ と も 幅の広いグ リ フの幅 (縦書きの
場合)。 字間は、 末尾グ リ フ の後には適用 さ れません。
writingdirx
writingdiry
優勢な筆記方向 (行内のテキス ト 進行方向) の x ・ y 座標、 すなわち、 (startx, starty) か
ら (endx, endy) への単位ベ ク ト ル。 左書きの横書き テキス ト な ら値 は (1, 0)、 縦書き テ
キス ト な ら (0, -1)、 右書きの横書き テキス ト な ら (-1, 0)。 筆記方向は、 shaping ・
vertical オプ シ ョ ン と 、 テキス ト の方向性特性群に も と づいて決定 さ れます。
xheight
x ハイ ト 。 同名の タ イ ポグ ラ フ ィ 特性をユーザー座標で表 し た もの
84
第 5 章 : テキス ト と 表の組版 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
5.3 テキス ト フ ロ ーに よ る複数行テキス ト
ク ッ ク ブ ッ ク 完全な コ ー ド サン プルが ク ッ ク ブ ッ クの text_output/starter_textflow ト ピ ッ ク にあ り ま
す。
VB RB Function add_textflow(textflow as Long, text As String, optlist As String) As Long
C# int add_textflow(int textflow, String text, String optlist)
テ キ ス ト フ ロ ーオブジ ェ ク ト を作成す る か、 ま たは既存のテ キ ス ト フ ロ ーにテ キ ス ト と 明
示オプシ ョ ン を追加 し ます。
textflow 以前の create_textflow( ) ま たは add_textflow( ) への呼び出 し に よ っ て返 さ れた
テ キ ス ト フ ロ ーハン ド ルか、 ま たは -1 で新規テ キ ス ト フ ロ ーを作成 し ます。
text (内容文字列) テ キ ス ト フ ロ ーの内容。 テ キ ス ト には、 任意の イ ン ラ イ ン テ キ ス ト
を入れ る こ と も で き ます。
optlist テ キ ス ト フ ロ ーオプシ ョ ン を表 5.5 ・ 表 5.8 に従っ て指定 し たオプシ ョ ン リ ス ト 。
以下のオプシ ョ ンが使え ます :
> 一般オプシ ョ ン : errorpolicy (28 ページ 「2.5 例外処理」 参照)
> 表 4.3 で暗黙的フ ォ ン ト 読み込み (すなわち、テ キ ス ト 書式グループの font オプシ ョ ン
を与えない) の場合に従っ た フ ォ ン ト 読み込みオプシ ョ ン群 :
ascender ・ autocidfont ・ autosubsetting ・ capheight ・ descender ・ embedding ・
encoding ・ fallbackfonts ・ fontname ・ fontstyle ・ keepnative ・ linegap ・ metadata ・
monospace ・ readfeatures ・ replacementchar ・ subsetlimit ・ subsetminsize ・ subsetting ・
unicodemap ・ vertical ・ xheight
> 表 5.1 に従っ た入力フ ィ ル タ オプシ ョ ン群 :
charref ・ escapesequence ・ glyphcheck
> 表 5.2 に従っ た テ キ ス ト 書式オプシ ョ ン群 :
charspacing ・ dasharray ・ decorationabove ・ fakebold ・ fillcolor ・ font ・ fontsize ・
gstate ・ horizscaling ・ inittextstate ・ italicangle ・ kerning ・ overline ・ strikeout ・
strokecolor ・ strokewidth ・ textrendering ・ textrise ・ underline ・ underlineposition ・
underlinewidth ・ wordspacing
> 表 5.3 に従っ た シ ェーピ ン グ ・ タ イ ポグ ラ フ ィ オプシ ョ ン群 :
features ・ language ・ script ・ shaping
> 表 5.8 に従っ た テ キ ス ト フ ロ ー組版のためのオプシ ョ ン群 :
alignment ・ avoidemptybegin ・ fixedleading ・ hortabmethod ・ hortabsize ・
lastalignment ・ leader ・ leading ・ leftindent ・ minlinecount ・ parindent ・ rightindent ・
ruler ・ tabalignment
> 表 5.9 に従っ た改行アルゴ リ ズ ム を制御す る ためのオプシ ョ ン群 :
adjustmethod ・ advancedlinebreak ・ avoidbreak ・ locale ・ maxspacing ・ minspacing ・
nofitlimit ・ shrinklimit ・ spreadlimit
> 表 5.10 に従っ た コ マ ン ド オプシ ョ ン群 :
comment ・ mark ・ matchbox ・ nextline ・ nextparagraph ・ resetfont ・ return ・ space
> 表 5.11 に従っ た テ キ ス ト 意味付けオプシ ョ ン群 :
charclass ・ charmapping ・ hyphenchar ・ tabalignchar
5.3 テキス ト フ ローによ る複数行テキス ト
85
戻り値 テ キ ス ト フ ロ ーハン ド ル。 テ キ ス ト フ ロ ー関連の関数への呼び出 し で使え ます。 ハン ド ル
は、カ レ ン ト の文書ス コ ープの終わ り か、ま たは こ のハン ド ルを指定 し て delete_textflow( )
を呼ぶま で有効です。
textflow パ ラ メ タ を -1 にす る と 、 新規テ キ ス ト フ ロ ーが作成 さ れて、 そのハン ド ルが
返 さ れます。 そ う でないな ら 、 textflow パ ラ メ タ で与えたハン ド ルが返 さ れます。 デフ ォ
ル ト では こ の関数は、エ ラ ーが起 き た と き は -1 を返 し ます。し か し こ の動作は、errorpolicy
パ ラ メ タ ま たはオプシ ョ ンで変え る こ と も で き ます。 エ ラ ーが起き た と き は、 textflow パ
ラ メ タ で与え たハン ド ルは、 以後の関数への呼び出 し では も う 使 う こ と がで き ません (1 以外だっ た と き の delete_textflow( ) を除 き )。
詳細
こ の関数は、 与え ら れたテ キ ス ト を処理 し て、 そ こ か ら 内部デー タ 構造を作成 し ます。 以
後に フ ォ ーマ ッ タ が使 う テ キ ス ト の各部分 (単語等) を 決定 し 、 テ キ ス ト を 可能 な ら
Unicode へ変換 し 、 改行可能位置を決定 し 、 フ ォ ン ト と テ キ ス ト のオプシ ョ ン群に も と づ
いてテ キ ス ト の各部分の幅を算出 し ます。
create_textflow( ) の場合は、1 度の呼び出 し でテ キ ス ト 内容 と オプシ ョ ン をすべて与え
る 必要があ り ますが、 こ の関数はそれ と は異な り 、 何度かの呼び出 し に分けてテ キ ス ト 内
容 と オプシ ョ ン を与え たい と き に有用です。 与え ら れた text と optlist を、 新規ま たは既
存のテ キ ス ト フ ロ ーに追加 し ます。 optlist で指定 さ れたオプシ ョ ンは、 text を処理す る 前
に評価 さ れます。 text と optlist の両方を空にす る こ と も で き ます。
textflow=-1 にす る と 、 こ の関数はほ と ん ど create_textflow( ) と 同等にな り ます。 ただ
し create_textflow( ) と は違っ て、 こ の関数は text の中の イ ン ラ イ ンオプシ ョ ン を検索 し
ません。 ですので、 イ ン ラ イ ンオプシ ョ ン リ ス ト の開始キ ャ ラ ク タ を再定義 し た り 、 イ ン
ラ イ ンオプシ ョ ンのテ キ ス ト の長 さ を指定 し た り する 必要はあ り ません (非 Unicode テ キ
ス ト の場合であ っ て も )。
こ の関数は、 与えたテ キ ス ト と オプシ ョ ン群を前処理 し ますが、 生成 PDF 文書に出力
を作成せず、ただテ キ ス ト を用意 し ます。出力を作成す る には、fit_textflow( )・fit_table( ) ・
fill_textblock( ) のいずれか を使っ て、 こ の前処理 し た テ キ ス ト フ ロ ーのハン ド ルを指定 し
ます。
デ フ ォ ル ト では、 キ ャ ラ ク タ U+000B (VT) ・ U+2028 (LS) ・ U+000A (LF) ・ U+000D
(CR) ・ CRLF ・ U+0085 (NEL) ・ U+2029 (PS) ・ U+000C (FF) は、 ニ ュ ー ラ イ ン を強制 し
ます。 こ れ ら の制御キ ャ ラ ク タ は、 encoding=builtin で読み込んだ記号フ ォ ン ト に対 し て
は解釈 さ れません。 こ れ ら は VT ・ LS を除いてすべて、 改段落を強制 し ます (すなわち、
そ こ で parindent オプシ ョ ンが効 き ます)。 FF はただちに、 カ レ ン ト はめ込み枠へのテ キ
ス ト のはめ込み処理を中止 さ せます (関数 fit_textflow( ) は終了 し て文字列 _nextpage を
返 し ます)。
水平 タ ブキ ャ ラ ク タ (HT) は、 後続す る テ キ ス ト に対 し て新 し い開始位置を設定 し ま
す。 こ れの詳細は、 hortabmethod ・ hortabsize オプシ ョ ンで制御 さ れます。
ソ フ ト ハ イ フ ン キ ャ ラ ク タ (SHY) は、 その ソ フ ト ハ イ フ ンの後に改行が来 る と き は、
hyphenchar オプシ ョ ンで指定 さ れてい る キ ャ ラ ク タ に置 き 換え ら れます。
縦書 き には対応 し てい ません。
スコープ オブ ジ ェ ク ト 以外の任意
86
第 5 章 : テキス ト と 表の組版 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 5.8 add/create_textflow( ) と 、 create_textflow( ) のイ ン ラ イ ンの、 追加の組版オプ シ ョ ン一覧
オプ シ ョ ン
説明
alignment
(キーワー ド ) 段落内の行の整列を指定 し ます。 デ フ ォ ル ト : left。
left
左揃え。 leftindent+parindent (段落の先頭行) と 、 leftindent (それ以外のすべて
の行) から
center
中央揃え。 leftindent か ら rightindent ま で
right
右揃え。 rightindent ま で
justify
両端揃え
avoidemptybegin
(論理値) true にする と 、 はめ込み枠の先頭の空行群は削除 さ れます。 デ フ ォル ト : false
fixedleading
(論理値) true にする と 、 それぞれ行の中で見つかっ た最初の行送 り 値が使われます。 そ う でな
ければ、 行の中のすべての行送 り 値の う ち最大の ものが使われます。 fit_textflow( ) の wrap オプ
シ ョ ン を、 または matchbox オプ シ ョ ンの createwrapbox サブオプ シ ョ ン を使 っ て テキス ト を輪
郭に回 り 込ませる場合は、 fixedleading は true を強制 さ れます。 デ フ ォル ト : false
hortabmethod
(キーワー ド ) テキス ト の水平 タ ブの処理。 算出 さ れる位置が、 カ レ ン ト テキス ト 位置よ り 左の
と きは、 その タ ブは無視 さ れます。 デ フ ォ ル ト : relative。
relative
位置を、 hortabsize で指定 し ている量だけ進めます。
typewriter 位置を、 hortabsize の次の倍数ま で進めます。
ruler
hortabsize
位置を、 ruler オプ シ ョ ンの n 番目の タ ブ値ま で進めます。 こ こ で n は、 その行の中
で こ れま でに見つかっ た タ ブの数です。 n が タ ブ位置の数よ り 大き い と きは、
relative 方式を適用 し ます。
(float ま たはパーセ ン ト 値) 水平 タ ブの幅1。 その解釈は、 hortabmethod オプ シ ョ ンに依存 し ま
す。 デ フ ォ ル ト : 7.5%
lastalignment (キーワー ド ) 段落内の最終行の整列。 alignment オプ シ ョ ンのすべてのキーワー ド のほか、 以下
のキーワー ド も使え ます (デ フ ォル ト : auto) :
auto
alignment オプ シ ョ ンの値を使います。 ただ し それが justify の と きは left が使われ
ます。
leader
(オプ シ ョ ン リ ス ト ) 繰 り 返 し 挿入 し たい隙間埋めテキス ト (点 リ ーダ等) を指定 し ます。 リ ー
ダは、 次の タ ブ位置か、 または タ ブが得ら れない と きは行末ま で挿入 さ れつづけます。 リ ーダは
複数行にわた る こ と はあ り ません。 使え るサブオプ シ ョ ンの一覧は表 5.4 を参照。 デ フ ォ ル ト :
リ ーダな し
leading
(float ま たはパーセ ン ト 値) 隣 り あ う テキス ト のベース ラ イ ンの間隔2。 実際の値は次のよ う に決
定 さ れます : 行の先頭にオプ シ ョ ン リ ス ト がある と きは、 行送 り は最後の関連オプ シ ョ ン
(font ・ fontsize ・ leading 等) に よ っ て決定 さ れます。 その同 じ 行に さ ら にオプ シ ョ ン リ ス ト が
あ る と きは、 行送 り に関連するオプ シ ョ ンはすべて、 fixedleading=false の と き にのみ考慮 さ れ
ます。 行の中にオプ シ ョ ン リ ス ト が全 く ない と きは、 前の行送 り 値が考慮 さ れます。 デ フ ォ ル
ト : 100%
leftindent
(float ま たはパーセ ン ト 値) テキス ト 行の左イ ンデン ト 1。 leftindent を行内で指定 し ている と
きは、 決定 さ れる位置がカ レ ン ト テキス ト 位置よ り 左な ら、 こ のオプ シ ョ ンは この行では無視 さ
れます。 デ フ ォル ト : 0
minlinecount
(整数) はめ込み枠の最後の段落の最少行数。 行数が こ れよ り 少ない と きは、 その段落は次のは
め込み枠に配置 さ れます。 値 2 にすれば、 段落の 1 行だけがはめ込み枠の最後に来て し ま う 状態
(「オー フ ァ ン」) を防げます。 デ フ ォル ト : 1
parindent
(float ま たはパーセ ン ト 値) 段落の先頭行の左イ ンデン ト 1。 この値が leftindent に加算 さ れま
す。 こ のオプ シ ョ ン を行内で指定する と 、 タ ブのよ う に動作 し ます。 デ フ ォ ル ト : 0
rightindent
(float ま たはパーセ ン ト 値) テキス ト 行の右イ ンデン ト 1。 デ フ ォ ル ト : 0
5.3 テキス ト フ ローによ る複数行テキス ト
87
表 5.8 add/create_textflow( ) と 、 create_textflow( ) のイ ン ラ イ ンの、 追加の組版オプ シ ョ ン一覧
オプ シ ョ ン
説明
ruler
(float かパーセ ン ト 値の リ ス ト ) hortabmethod=ruler の と きの絶対 タ ブ位置の リ ス ト 1。 リ ス ト
には、 最大 32 個の非負の項目を昇順で入れる こ と がで き ます。 デ フ ォル ト : hortabsize の整数
倍
tabalignment
(キーワー ド の リ ス ト 。 hortabmethod=ruler の場合のみ) タ ブ位置の整列。 リ ス ト 内の各項目は
それぞれ、 ruler オプ シ ョ ンの各項目の整列を定義 し ます。 デ フ ォ ル ト : left。
center
テキス ト を タ ブ位置で中央揃え し ます。
decimal
最初に現れる tabalignchar を タ ブ位置で左揃え し ます。 tabalignchar が見つから な
い と きは、 右揃えに し ます。
left
テキス ト を タ ブ位置で左揃え し ます。
right
テキス ト を タ ブ位置で右揃え し ます。
1. ユーザー座標で、 ま たははめ込み枠の幅に対するパーセ ン ト 値で指定 し ます
2. ユーザー座標で、 ま たは文字サイ ズに対するパーセ ン ト 値で指定 し ます
表 5.9 add/create_textflow( ) と 、 create_textflow( ) のイ ン ラ イ ンの、 改行アルゴ リ ズムを制御する ための追加のオプ
シ ョ ン一覧
オプ シ ョ ン
説明
adjustmethod (キーワー ド ) minspacing ・ maxspacing オプ シ ョ ン で指定 し ている制限の中で単語間を縮めた り
拡げた り し て も 、 部分テキス ト が行に収ま り き ら ない と き に、 行の調整に使わせたい方式。 デ
フ ォ ル ト : auto。
auto
次の方式を順に適用 し ます : shrink ・ spread ・ nofit ・ split。
clip
nofit において、 はめ込み枠の右端 (rightindent オプ シ ョ ン を考慮) からはみ出 し た
部分を切 り 落 と し ます。
nofit
最後の単語を次の行へ送 り ます。 ただ し 、 残 さ れる (短い) 行が、 nofitlimit オプ
シ ョ ン で指定 し ているパーセ ン ト 値よ り も 短 く な ら ない場合に限 り ます。 両端揃えの
段落で も若干がたついて見え る こ と があ り ます。
shrink
単語が行に収ま り き ら ない と き に、 テキス ト を shrinklimit の制限内で圧縮 し ます。
それで も収ま ら ない と きは、 nofit 方式を適用 し ます。
split
最後の単語を次の行へ送ら ずに、 枠内の最後のキ ャ ラ ク タ の後で強制的に分割 し ます。
テキス ト フ ォ ン ト の場合はハイ フ ンキ ャ ラ ク タ を挿入 し ますが、 記号 フ ォ ン ト の場合
か、 または hyphenchar=none の と きは挿入 し ません。
spread
最後の単語を次の行へ送 り 、 残 さ れた (短い) 行を両端揃えする よ う 、 単語内の字間
を spreadlimit の制限内で拡げます。 それで も両端揃え で き ない と きは、 nofit 方式
を適用 し ます。
advancedlinebreak
(論理値) 複雑用字系に対 し て必要な高度な改行アルゴ リ ズムを有効に し ます。 こ れは タ イ文字
のよ う に、 単語間の境界を表すのにスペースキ ャ ラ ク タ を用いない用字系での改行に必要です。
locale ・ script オプ シ ョ ンは効力を持ち ます。 デ フ ォル ト : false
avoidbreak
(論理値) true にする と 、 avoidbreak を false に リ セ ッ ト する ま で、 改行機会 (スペースキ ャ ラ
ク タ 等での) が無視 さ れます。 強制的な改行 (ニ ュ ー ラ イ ン等での) と 、 adjustmethod に よ っ て
定義 さ れる方式は、 こ の場合に も実行 さ れます。 特に、 adjustmethod=split は こ の場合に もハイ
フ ネーシ ョ ン を生成 し ます。 デ フ ォ ル ト : false
88
第 5 章 : テキス ト と 表の組版 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 5.9 add/create_textflow( ) と 、 create_textflow( ) のイ ン ラ イ ンの、 改行アルゴ リ ズムを制御する ための追加のオプ
シ ョ ン一覧
オプ シ ョ ン
説明
locale
(キーワー ド ) advancedlinebreak=true の と き、 用字系特有の改行方式で用い られる ロ ケール。
キーワー ド は、 以下の構成要素 (複数可) から成 り 、 オプ シ ョ ナルな構成要素は下線キ ャ ラ ク タ
「_」 で区切 られます (その文法は、 NLS/POSIX のロ ケール ID と は若干異な っ ています)。
> (必須) ISO 639-2 に従っ た、 小文字 2 文字ま たは 3 文字の言語 コ ー ド (www.loc.gov/standards/
iso639-2 参照)。 例 : en (英語) ・ de ( ド イ ツ語) ・ ja (日本語)。 こ れは language オプ シ ョ ン と
は異な っ ています。
> (オプ シ ョ ン) ISO 15924 に従 っ た、 4 文字の用字系 コ ー ド (www.unicode.org/iso15924/iso15924codes.html 参照)。 例 : Hira (ひ らがな) ・ Hebr (ヘブ ラ イ文字) ・ Arab (ア ラ ビ ア文字) ・ Thai
( タ イ文字)。
> (オプ シ ョ ン) ISO 3166 に従っ た、 大文字 2 文字の国 コ ー ド (www.iso.org/iso/country_codes/iso_
3166_code_lists 参照)。 例 : DE ( ド イ ツ) ・ CH (ス イ ス) ・ GB (イ ギ リ ス)。
キーワー ド _none は、 ロ ケール独自の処理が行われない こ と を指定 し ます。
ロ ケールを指定する こ と は、 い く つかの用字系に対 し ては、 高度な改行のために必要です。 デ
フ ォ ル ト : _none
例 : Thai ・ de_DE ・ en_US ・ en_GB
maxspacing
minspacing
(float ま たはパーセ ン ト 値。 行がスペースキ ャ ラ ク タ U+0020 を少な く と も 1 個含み、 かつ
alignment=justify の と きのみ意味を持ち ます) 単語間隔の最大値 と 最小値 (ユーザー座標で、
ま たはスペースキ ャ ラ ク タ の幅に対するパーセ ン ト 値で指定 し ます)。 算出 さ れる単語間隔が、
与え る値で制限 さ れます (ただ し wordspacing オプ シ ョ ンは さ ら に加算 さ れます)。 デ フ ォ ル ト :
minspacing=50%、 maxspacing=500%
nofitlimit
(float ま たはパーセ ン ト 値。 alignment=justify の と きのみ意味を持ち ます) nofit 方式に し てい
る と きの、 行の長 さ の下限1。 デ フ ォ ル ト : 75%。
shrinklimit
(パーセ ン ト 値) adjustmethod=shrink に し ている と きの、 テキス ト を縮める下限。 算出 さ れる縮
小率が、 与え る値で制限 さ れますが、 horizscaling オプ シ ョ ン を掛け算 さ れます。 デ フ ォル ト :
85%
spreadlimit
(float ま たはパーセ ン ト 値) spread 方式に し ている と きの、 字間の上限2。 算出 さ れる字間が、
charspacing オプ シ ョ ンの値に加算 さ れます。 デ フ ォル ト : 0
1. ユーザー座標で、 ま たははめ込み枠の幅に対するパーセ ン ト 値で指定 し ます
2. ユーザー座標で、 ま たは文字サイ ズに対するパーセ ン ト 値で指定 し ます
表 5.10 add/create_textflow( ) と 、 create_textflow( ) のイ ン ラ イ ンの、 追加の コ マ ン ド オプ シ ョ ン一覧
オプ シ ョ ン
説明
comment
(文字列) 無視 さ れる任意のテキス ト 。 オプ シ ョ ン リ ス ト かマ ク ロ に注釈を付けるのに有用です
mark
(整数) 与え る番号を、 マー ク と し て内部的に格納 し ます。 も っ と も最近に格納 し たマー クは、
後で info_textflow( ) と lastmark キーワー ド で取得する こ と がで き ます。 これは、 テキス ト のどの
部分がページに も う 配置 さ れたかを知るのに有用で し ょ う 。
matchbox
(オプ シ ョ ン リ ス ト ) 表 6.3 に従 っ た、 範囲枠を作成する ためのオプ シ ョ ン リ ス ト
nextline
nextparagraph
(論理値) 改行または改段落を強制 し ます。
5.3 テキス ト フ ローによ る複数行テキス ト
89
表 5.10 add/create_textflow( ) と 、 create_textflow( ) のイ ン ラ イ ンの、 追加の コ マ ン ド オプ シ ョ ン一覧
オプ シ ョ ン
説明
resetfont
(論理値) font と fontsize を、 カ レ ン ト の設定 と 違っ ていた ( フ ォ ン ト か文字サイ ズのど ち らか
が) も っ と も最近の値へ戻 し ます。 こ れは、 イ タ リ ッ ク のテキス ト のよ う に一時的に フ ォ ン ト を
変えたのを、 元に戻 し たい と き に便利で し ょ う 。 font オプ シ ョ ンは こ のオプ シ ョ ン よ り も優先 さ
れます。 こ の コ マ ン ド は、 任意のフ ォ ン ト 関連の特性について最初の設定 と 違 う 設定を行な っ た
後にのみ意味を持ち、 そ う でない と きは無視 さ れます。
return
(文字列。 先頭にア ン ダース コ アキ ャ ラ ク タ _ をつけてはいけません) 与え る文字列を戻 り 値 と し
て、 fit_textflow( ) を抜けます。
space
(float またはパーセ ン ト 値) テキス ト 位置を、 与えた値だけ進めます 1。
1. ユーザー座標で、 ま たは文字サイ ズに対するパーセ ン ト 値で指定 し ます
表 5.11 add/create_textflow( ) と 、 create_textflow( ) のイ ン ラ イ ンの、 追加のテキス ト 意味付けオプ シ ョ ン一覧
オプ シ ョ ン
説明
charclass
(対の リ ス ト 。 それぞれの対の 1 番目の要素はキーワー ド で、 2 番目の要素は Unichar ま たは
Unichar の リ ス ト 。 advancedlinebreak=true の と きは無視 さ れます) 指定する Unichar 群を、 その
改行動作を決定する ために指定するキーワー ド に分類 し ます。
letter
文字 (a B 等) のよ う に動作 し ます
punct
句読点 (+ / ; : 等) のよ う に動作 し ます
open
開き カ ッ コ ([ 等) のよ う に動作 し ます
close
閉 じ カ ッ コ (] 等) のよ う に動作 し ます
default
すべてのキ ャ ラ ク タ 分類を、 PDFlib の内蔵のデ フ ォ ル ト に リ セ ッ ト し ます
例 : charclass={ close » open « letter={/ : =} punct & }
charmapping
(対の リ ス ト 。 それぞれの対は 2 個の Unichar か、 ま たは 1 番目の要素が Unichar で、 2 番目の要
素が Unichar と 整数の リ ス ト ) 個々のキ ャ ラ ク タ を、 別のキ ャ ラ ク タ (複数可) で置き換え ます。
オプ シ ョ ン リ ス ト には Unichar の対を入れます (複数可)、。 それぞれの対の 1 番目のキ ャ ラ ク タ
が、 2 番目のキ ャ ラ ク タ に置き換わ り ます。 一対一対応でな く 、 それぞれの対の 2 番目の要素を
オプ シ ョ ン リ ス ト に し て、 Unichar と 個数を入れる こ と も で き ます。
個数> 0 置き換えキ ャ ラ ク タ を その個数並べます。
個数< 0 キ ャ ラ ク タ が複数個並んでいる と き、 指定値の固定個数に減ら し ます。
個数= 0 キ ャ ラ ク タ を削除 し ます。
例:
charmapping={ hortab space
CRLF space
LF space
CR space }
charmapping={ shy {shy 0} }
charmapping={ hortab {space 4} }
hyphenchar
(Unichar またはキーワー ド ) 改行位置で ソ フ ト ハイ フ ン を置き換えたいキ ャ ラ ク タ 。 値 0 かキー
ワー ド none にする と 、 ハイ フ ンが完全にな く な り ます。 デ フ ォル ト : U+00AD ( ソ フ ト ハイ フ
ン)、 ただ し こ れが フ ォ ン ト にない と きは U+002D (ハイ フ ン ・ マ イ ナス)
tabalignchar
(Unichar) 小数点 タ ブ を整列 さ せたいキ ャ ラ ク タ 。 デ フ ォ ル ト : U+002E 「.」
テキス ト フ ロ ーオ プ シ ョ ンのマ ク ロ テ キ ス ト フ ロ ーのオプシ ョ ン リ ス ト には (create_
textflow( ) ・ add_textflow( ) の optlist 引数で も 、 あ る いは create_textflow( ) に与え る テ キ
ス ト に イ ン ラ イ ンで も )、 表 5.12 に従っ て、 マ ク ロ の定義 と 、 マ ク ロ の呼び出 し を入れ る
こ と がで き ます。 マ ク ロ は、 フ ォ ン ト 名や イ ンデン ト 量な ど、 何度 も 使 う オプシ ョ ン値を
1 回の定義に ま と めたい と き に便利で し ょ う 。オプシ ョ ン リ ス ト が解析 さ れ る 前には まず、
90
第 5 章 : テキス ト と 表の組版 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
その中に入っ てい る マ ク ロ が、各マ ク ロ の定義で与え ら れてい る オプシ ョ ン リ ス ト の内容
に置 き 換え ら れます。 その結果で き たオプシ ョ ン リ ス ト が、 その後に解析 さ れます。 下記
に、 2 個のマ ク ロ のマ ク ロ 定義の例を示 し ます。
<macro {
comment { 下記のマクロは段落スタイルとして利用されます }
H1 {fontname=Helvetica-Bold encoding=winansi fontsize=14 }
body {fontname=Helvetica encoding=winansi fontsize=12 }
}>
こ れ ら のマ ク ロ は、 オプシ ョ ン リ ス ト の中で下記の よ う に利用で き る で し ょ う 。
<&H1>Chapter 1
<&body>This chapter talks about...
マ ク ロ の定義 と 使用には、 以下の規則があ り ます。
> マ ク ロ は、 任意の深 さ の入れ子にす る こ と がで き ます (マ ク ロ の定義の中で、 別のマ
ク ロ を呼び出す こ と が可能)。
> マ ク ロ は、 それを定義 し てい る の と 同 じ オプシ ョ ン リ ス ト の中で使 う こ と はで き ませ
ん。create_textflow( ) の場合は、 マ ク ロ を定義 し てい る イ ン ラ イ ン オプシ ョ ン リ ス ト を
終わ ら せた直後に、 そのマ ク ロ を使 う 新 し い イ ン ラ イ ン オプシ ョ ン リ ス ト を始めれば
よ いで し ょ う 。 add_textflow( ) を使っ てい る 場合は、 関数を一度呼び出 し てマ ク ロ を
定義 し た後、 それを使 う には も う 一度呼び出す必要があ り ます (add_textflow( ) は一
度に 1 つのオプシ ョ ン リ ス ト し か受け付けないので)。
> マ ク ロ の名前は大文字 ・ 小文字を区別 し ます。
> 未定義のマ ク ロ は例外を発生 さ せます。
> マ ク ロ はいつで も 再定義す る こ と がで き ます。
表 5.12 add/create_textflow( ) ・ fit_textflow( ) のオプ シ ョ ン リ ス ト マ ク ロの定義 と 呼び出 し
オプ シ ョ ン
説明
macro
(対の リ ス ト ) それぞれの対は、 マ ク ロの名前 と 定義を以下のよ う に記述 し ます。
name
(文字列) マ ク ロの名前。 以後 こ れを使 っ てマ ク ロ を呼び出す こ と がで き ます。 すでに
定義 し てある マ ク ロ を後から 定義 し なおす こ と も で き ます。 特殊名 comment は無視 さ れ
ます。
suboptlist マ ク ロが呼び出 さ れた時にマ ク ロ名を リ テ ラ ルに置き換え る オプ シ ョ ン リ ス ト 。 最初 と
最後のホワ イ ト スペースは無視 さ れます。
&name
指定名のマ ク ロ を展開 し 、 マ ク ロ名 (キ ャ ラ ク タ & を含め) を、 そのマ ク ロの内容、 すなわち、
そのマ ク ロに対 し て定義 し ておいた suboptlist (両端の括弧は含まず) で置き換え ます。 マ ク ロ
名は、 ホワ イ ト スペース ・ { ・ } ・ = ・ & のいずれかで終了 し ます。 ですから、 こ れら のキ ャ ラ ク タ を
マ ク ロ名の中で使っ てはいけません。
入れ子のマ ク ロは、 入れ子の制限な し に展開 さ れます。 文字列オプ シ ョ ンの中に入れたマ ク ロ も
展開 さ れます。 マ ク ロ を置き換えた ら有効なオプ シ ョ ン リ ス ト にな る よ う にする必要があ り ます。
5.3 テキス ト フ ローによ る複数行テキス ト
91
VB RB Function create_textflow(text As String, optlist As Long) As Long
C# int create_textflow(String text, String optlist)
テ キ ス ト 内容 ・ イ ン ラ イ ンオプシ ョ ン ・ 明示オプシ ョ ンか ら テ キ ス ト フ ロ ーオブジ ェ ク ト
を作成 し ます。
text (内容文字列) テ キ ス ト フ ロ ーの内容。 さ ま ざ ま なエン コ ーデ ィ ン グのテ キ ス ト と 、
マ ク ロ と (90 ページ 「テ キ ス ト フ ロ ーオプシ ョ ンのマ ク ロ 」 参照)、 表 5.8 ・ 表 5.13 に従っ
た イ ン ラ イ ン オプシ ョ ン リ ス ト (93 ページ 「テ キ ス ト フ ロ ーの イ ン ラ イ ン オプシ ョ ン リ
ス ト 」 も 参照) を入れ る こ と がで き ま す。 text を空文字列に し て も 、 有効な テ キ ス ト フ
ロ ーハン ド ルが返 さ れます。
optlist テ キ ス ト フ ロ ーオプシ ョ ン を指定 し たオプシ ョ ン リ ス ト 。 optlist で指定す る オプ
シ ョ ンは、text の中の イ ン ラ イ ンオプシ ョ ン リ ス ト で指定す る オプシ ョ ン よ り も 前に評価
さ れ る ので、optlist 引数で与え る オプシ ョ ン よ り も イ ン ラ イ ンオプシ ョ ンのほ う が優先 さ
れます。 以下のオプシ ョ ンが使え ます :
> 一般オプシ ョ ン : errorpolicy (28 ページ 「2.5 例外処理」 参照)
> add_textflow( ) のすべてのオプシ ョ ン (add_textflow( ) のオプシ ョ ン一覧を参照)
> イ ン ラ イ ン オプシ ョ ン リ ス ト の処理を表 5.13 に従っ て制御する オプシ ョ ン :
begoptlistchar ・ endoptlistchar ・ textlen
戻り値 テ キ ス ト フ ロ ーハン ド ル。add_textflow( )・fit_textflow( )・info_textflow( )・delete_textflow( )
への呼び出 し で使え ます。ハン ド ルは、カ レ ン ト の文書ス コ ープ を終え る か、ま たは delete_
textflow( ) で こ のハン ド ルを指定 し て呼び出すま で有効です。 デフ ォ ル ト では、 こ の関数
はエ ラ ーが起 き た と き は -1 を返 し ます。 こ の動作は、errorpolicy パ ラ メ タ ま たはオプシ ョ
ンで変え る こ と も で き ます。
詳細
こ の関数は、 オ プ シ ョ ン と テ キ ス ト を 受け付け て、 テ キ ス ト フ ロ ー を 作 り ま す。 add_
textflow( ) 関数 と は異な り 、 テ キ ス ト に イ ン ラ イ ン オプシ ョ ン を入れ る こ と も で き ます。
イ ン ラ イ ンオプシ ョ ン リ ス ト の検索は、 optlist 引数で textlen オプシ ョ ン を与えれば、 テ
キ ス ト の一部分ま たは全体で無効にす る こ と も で き ます (93 ページ 「テ キ ス ト フ ロ ーの
イ ン ラ イ ンオプシ ョ ン リ ス ト 」 参照)。
こ の関数は、 生成 PDF 文書に出力を作成せず、 ただ与え ら れたオプシ ョ ンに従っ てテ
キ ス ト を用意 し ます。 出力を作成す る には、 fit_textflow( ) を使っ て、 こ の前処理 し たテ キ
ス ト フ ロ ーのハン ド ルを指定 し ます。
特殊キ ャ ラ ク タ や改行な ど の情報については、 詳 し く は add_textflow( ) の詳細の項を
参照 し て く だ さ い。
スコープ オブ ジ ェ ク ト 以外の任意
表 5.13 create_textflow( ) のイ ン ラ イ ンオプ シ ョ ン リ ス ト 処理のための追加オプ シ ョ ン一覧
オプ シ ョ ン
説明
begoptlistchar
(Unichar またはキーワー ド ) オプ シ ョ ン リ ス ト を開始 さ せたいキ ャ ラ ク タ 。 デ フ ォ ル ト のキ ャ ラ
ク タ がテキス ト に リ テ ラ ルに現れる と きは、 これを別のキ ャ ラ ク タ に替え る と 便利かも し れませ
ん (93 ページ 「テキス ト フ ローのイ ン ラ イ ン オプ シ ョ ン リ ス ト 」 参照)。 キーワー ド none を使 う
と 、 オプ シ ョ ン リ ス ト の検索を完全に無効にする こ と がで き ます。 デ フ ォル ト : U+003C (<)
endoptlistchar
(Unichar。 U+007D 「}」 は使え ません) イ ン ラ イ ンオプ シ ョ ン リ ス ト を終了 さ せたいキ ャ ラ ク タ 。
デ フ ォル ト : U+003F (>)
92
第 5 章 : テキス ト と 表の組版 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 5.13 create_textflow( ) のイ ン ラ イ ン オプ シ ョ ン リ ス ト 処理のための追加オプ シ ョ ン一覧
オプ シ ョ ン
説明
textlen
(整数またはキーワー ド ) 次のイ ン ラ イ ンオプ シ ョ ン リ ス ト の前のキ ャ ラ ク タ の数 (93 ページ
「テキス ト フ ローのイ ン ラ イ ン オプ シ ョ ン リ ス ト 」 参照)。 キ ャ ラ ク タ は、 文字参照が解決 さ れる
前に数え ら れます。 例 : <textlen=8>&#x2460;<...>。 キーワー ド all を指定する と 、 残 り のテキ
ス ト すべて を意味 し ます。 デ フ ォル ト : 次に begoptlistchar が現れる ま で テキス ト が検索 さ れ
ます。
テキス ト フ ロ ーの イ ン ラ イ ン オ プ シ ョ ン リ ス ト create_textflow( ) (add_textflow( ) では
不可) の text 引数で与え る 内容の中には、 テ キ ス ト フ ロ ーオプシ ョ ン を表 5.8 に従っ て指
定 し た、 任意の数のオプ シ ョ ン リ ス ト ( イ ン ラ イ ン オプシ ョ ン) を入れ る こ と がで き ま
す。 あ る いは、 こ れ ら のオプシ ョ ンはすべて、 create_textflow( ) ・ add_textflow( ) の optlist
引数の中で与え る こ と も で き ます。 1 つのオプシ ョ ン リ ス ト の中で同 じ オプシ ョ ン を複数
回指定す る こ と も 可能です。 その場合、 最後に指定 し たそのオプシ ョ ンだけが考慮 さ れま
す。
イ ン ラ イ ンオプシ ョ ン リ ス ト は、 begoptlistchar と endoptlistchar オプシ ョ ン で指定す
る キ ャ ラ ク タ (デフ ォ ル ト では < と >) で囲む必要があ り ます。 当然、 イ ン ラ イ ン オプ
シ ョ ン の開始に使っ てい る キ ャ ラ ク タ を、 テ キ ス ト 本体で も 使わな ければな ら ない と き
は、 衝突が起 こ り ます。 こ の衝突を解決す る にはい く つかの方法があ り 、 テ キ ス ト に イ ン
ラ イ ンオプシ ョ ン リ ス ト を入れ る か ど う かに よ っ て方法が決ま り ます。 add_textflow( ) の
場合は先述の と お り 、 テ キ ス ト と オプシ ョ ン を完全に分離 し てい ますので、 衝突は起 こ り
ません。
テ キ ス ト に イ ン ラ イ ンオプシ ョ ン を全 く 入れない と き は、以下のいずれかの方法で、イ
ン ラ イ ンオプシ ョ ン リ ス ト の検索を完全に無効にす る こ と も で き ます。
> create_textflow( ) の optlist 引数で begoptlistchar=none を設定。
> create_textflow( ) の optlist 引数で textlen オプシ ョ ンにテ キ ス ト 全体の長 さ を設定。
テ キ ス ト に イ ン ラ イ ンオプシ ョ ン を入れ る と き は、 以下のいずれかの方法を使えば、 テ キ
ス ト の内容 と 、 イ ン ラ イ ンオプシ ョ ン を始め る begoptlistchar と の衝突を避け る こ と がで
き ます。
> テ キ ス ト 内に現れ る < キ ャ ラ ク タ をすべて、 その数値ま たは文字実体参照 (&#x3C; か
&lt;) で置 き 換えて、 イ ン ラ イ ン オプシ ョ ン リ ス ト を リ テ ラ ルな < キ ャ ラ ク タ で開始。
A&lt;B<fontname=Helvetica encoding=winansi>
ただ し こ の方式は、 encoding=builtin に よ る フ ォ ン ト に対 し ては動作 し ません。
> create_textflow( ) の optlist 引数か イ ン ラ イ ンオプシ ョ ン リ ス ト で begoptlistchar オプ
シ ョ ンに、テ キ ス ト で使っ ていないキ ャ ラ ク タ を設定 し ($ 等)、そのキ ャ ラ ク タ を使っ
て イ ン ラ イ ンオプシ ョ ン リ ス ト を開始。
<begoptlistchar=$>A<B$fontname=Helvetica encoding=winansi>
> 先行す る イ ン ラ イ ンオプシ ョ ン リ ス ト で textlen オプシ ョ ン を使っ て、 次の部分テ キ ス
ト (次の イ ン ラ イ ンオプシ ョ ン リ ス ト の開始ま での) の長 さ を指定。
<textlen=3>A<B<fontname=Helvetica encoding=winansi>
注 イ ン ラ イ ンオプ シ ョ ン リ ス ト の直後にまたオプ シ ョ ン リ ス ト を与え る と 、間に長 さ ゼロの
部分テキス ト をは さ んでい る と 見な さ れます。 1 番目のオプ シ ョ ン リ ス ト で textlen オプ
シ ョ ン を与え る と きは これは重要です。
5.3 テキス ト フ ローによ る複数行テキス ト
93
VB RB Function fit_textflow(textflow As Long,
llx As Double, lly As Double, urx As Double, ury As Double, optlist As String) As String
C# String fit_textflow(int textflow, double llx, double lly, double urx, double ury, String optlist)
テ キ ス ト フ ロ ーの次の部分を組版 し ます。
textflow
ド ル。
create_textflow( ) か add_textflow( ) を呼び出 し て返 さ れた テ キ ス ト フ ロ ーハン
llx ・ lly ・ urx ・ ury 対象に し たい矩形 (はめ込み枠) の左下隅 と 右上隅の x ・ y 座標を、
ユーザー座標で指定 し ます。 こ の 2 隅は逆の順に指定する こ と も で き ます。 矩形でない輪
郭へ流 し 込みを行 う には、 wrap オプシ ョ ン を使い ます。
optlist 処理オプシ ョ ン群を表 5.14 に従っ て指定 し たオプシ ョ ン リ ス ト 。以下のオプシ ョ
ンが使え ます :
blind ・ createfittext ・ createlastindent ・ exchangefillcolors ・ exchangestrokecolors ・
firstlinedist ・ fitmethod ・ fontscale ・ lastlinedist ・ linespreadlimit ・ maxlines ・ minfontsize ・
orientate ・ returnatmark ・ rewind ・ rotate ・ showborder ・ showtabs ・ stamp ・ verticalalign ・
wrap
戻り値 関数か ら 戻っ た原因を示す文字列。
> _stop : テ キ ス ト フ ロ ーの全テ キ ス ト の処理が完了。 テ キ ス ト が空の と き は、 return ま
たは mark/returnatmark オプシ ョ ン を与えていて も 、 つねに _stop が返 さ れます。
> _nextpage:次のページ を待ち (フ ォーム フ ィ ー ド キ ャ ラ ク タ U+000C が原因)。ま た fit_
textflow( ) を呼び出 し て残 り のテ キ ス ト を処理す る 必要があ り ます。
> _boxfull : はめ込み枠内にテ キ ス ト をい く ら か配置 し て も う ゆ と り がないか、 ま たは最
大行数 (maxlines オプシ ョ ン で指定 し てい る ) をはめ込み枠に配置 し て し ま っ たか、
ま たは fitmethod=auto と minfontsize を指定 し てい る がテ キ ス ト がはめ込み枠に収ま
ら なか っ た。 ま た fit_textflow( ) を呼び出 し て残 り のテ キ ス ト を処理す る 必要があ り ま
す。
> _boxempty : 処理後、 枠にテ キ ス ト が ま っ た く 入っ ていない。 こ れは、 はめ込み枠の
大 き さ が小 さ すぎ て テ キ ス ト が入 ら ない と き に、 ま たは回 り 込み枠がはめ込み枠 よ り
も 大 き い と き に起 き る こ と があ り ます。 無限ループ を避け る ため、 同 じ はめ込み枠を
指定 し て ま た fit_textflow( ) を呼び出すべ き ではあ り ません。
> _mark#:returnatmark オプシ ョ ンが番号 # で指定 さ れてお り 、こ のオプシ ョ ンで指定 さ
れた番号のマー ク が配置 さ れた。
> その他の任意文字列: イ ン ラ イ ンオプシ ョ ン リ ス ト で return コ マ ン ド に与え た文字列。
戻っ た理由が同時に複数あ る と き は、 上記の一覧で (上か ら 下へ) 最初の も のが報告 さ れ
ます。 返 さ れた文字列は、 次に こ の関数を呼び出すま で有効です。
詳細
カ レ ン ト テ キ ス ト ・ グ ラ フ ィ ッ ク 状態は、 こ の関数が作成す る テ キ ス ト 出力に対 し ては効
力を持ち ません ( こ の点は fit_textline( ) と 異な り ます)。create_textflow( ) ・ add_textflow( )
でテ キ ス ト の書式を制御す る には、 fillcolor ・ strokecolor な ど のテ キ ス ト 書式オプシ ョ ン を
使い ます (表 5.2 参照)。 こ の関数か ら 返っ た後で、 テ キ ス ト 状態は変更 さ れてい ません。
ただ し カ レ ン ト テ キ ス ト 位置は、 生成 し た テ キ ス ト 出力の末尾の点へ移動 し ま す (blind
オプシ ョ ン を true に設定 し ていなければ)。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ
94
第 5 章 : テキス ト と 表の組版 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 5.14 fit_textflow( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
blind
(論理値) true にする と 、 出力が生成 さ れず、 し か し 計算はすべて行われ、 組版結果を info_
textflow( ) で調べる こ と がで き ます。 デ フ ォル ト : false
createfittext
(論路値) true にする と 、 カ レ ン ト はめ込み枠に配置 さ れた テキス ト が メ モ リ に保存 さ れて、 以
後、 キーワー ド fittext を付けた info_textflow( ) への呼び出 し に よ っ て取得で き る よ う にな り ま
す。 デ フ ォル ト : true
createlastindent
(オプ シ ョ ン リ ス ト ) はめ込み枠の末尾行の末尾にい く ら かのアキを と り ます。 また、 範囲枠を生
成 し てそのアキに入れる こ と も で き ます。 こ のアキは、 テキス ト の末尾に、 続きがある こ と を示
す点群や画像や、 続きのテキス ト への リ ン ク な ど を追加する ために有用で し ょ う 。 使え るサブオ
プシ ョ ン :
rightindent (float ま たはパーセ ン ト 値) はめ込み枠の末尾行の追加右イ ンデン ト を、 ユーザー座標
で、 またははめ込み枠の幅に対するパーセ ン ト 値で指定 し ます。 この値は、 add/create_
textflow( ) の rightindent オプ シ ョ ンの値に追加 さ れます。 デ フ ォル ト : 0
matchbox (表 6.3 に従っ たオプ シ ョ ン リ ス ト ) 末尾行の末尾に範囲枠を生成 し ます。 範囲枠オプ
シ ョ ン boxwidth を指定 し ない と きは、 rightindent の値が枠の幅 と し て用い ら れます。
boxwidth=0 にする と 枠は生成 さ れません。
exchangefillcolors
(色偶数個の リ ス ト ) リ ス ト 内のそれぞれの対で、 元の塗 り 色 と 、 置き換え色を指定 し ます。 はめ
込み枠内で テキス ト フ ローが元の塗 り 色を指定 し ている部分がすべて、 指定 し た置き換え色で置
き換え ら れます。 これは、 色を背景に応 じ て調節する ために有用で し ょ う 。 例 :
exchangefillcolors={{gray 0} white Orchid DeepPink {rgb 1 0 1} MediumBlue}
exchangestrokecolors
(色偶数個の リ ス ト ) リ ス ト 内のそれぞれの対で、 元の描線色 と 、 置き換え色を指定 し ます。 はめ
込み枠内で テキス ト フ ローが元の描線色を指定 し ている部分がすべて、 指定 し た置き換え色で置
き換え ら れます。 これは、 色を背景に応 じ て調節する ために有用で し ょ う 。
firstlinedist1
(float ・ パーセ ン ト 値 ・ キーワー ド のいずれか) はめ込み枠上端 と テキス ト 先頭行ベース ラ イ ンの
間隔を、 ユーザー座標で、 または関連文字サイ ズ (fixedleading=true に し ている と きは行の先頭
の文字サイ ズ、 そ う でなければ行内のすべての文字サイ ズの う ちの最大値) に対するパーセ ン ト
値で、 あ るいはキーワー ド で指定 し ます。 デ フ ォ ル ト : leading。
leading
ascender
先頭行で決定 さ れた行送 り 値。 ヒ等の、 読み分け記号つ きの代表的なキ ャ ラ ク タ がはめ
込み枠上端に接 し ます。
先頭行で決定 さ れたアセ ン ダ値。 d や h 等の、 大き なア セ ン ダ を持つ代表的なキ ャ ラ ク
タ がはめ込み枠上端に接 し ます。
capheight 先頭行で決定 さ れたキ ャ ッ プハイ ト 値。 H 等の、 代表的な大文字がはめ込み枠上端に接
し ます。
先頭行で決定 さ れた x ハイ ト 値。 x 等の、 代表的な小文字がはめ込み枠上端に接 し ま
す。
fixedleading=false に し ている と きは、 先頭行の中で見出 さ れたすべての leading ・ ascender ・
xheight ・ capheight 値の う ちの最大値が使われます。
xheight
fitmethod
(キーワー ド ) テキス ト をはめ込み枠内にはめ込むのに使いたい方式を指定 し ます。 デ フ ォ ル ト :
clip
auto
テキス ト がはめ込み枠に収ま る ま で、 文字サイ ズを下げた り 、 その他のフ ォ ン ト 関連の
オプ シ ョ ン群を変えた り し ながら (fontscale 参照)、 fit_textflow( ) を ブ ラ イ ン ド モー ド
で繰 り 返 し 呼び出 し ます (ただ し minfontsize オプ シ ョ ン も参照)。
clip
テキス ト をはめ込み枠の下端で切 り 落 と し ます。
nofit
テキス ト をはめ込み枠の下端からはみ出 さ せる こ と も あ り ます。
5.3 テキス ト フ ローによ る複数行テキス ト
95
表 5.14 fit_textflow( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
fontscale
(float またはパーセ ン ト 値) fontsize の値 と 、 leading ・ minspacing ・ maxspacing ・ spreadlimit ・
space の絶対値 (パーセ ン ト 値は無視) に、 与え る倍率またはパーセ ン ト 値を掛け算 し ます。 デ
フ ォル ト : rewind=0 に し ている と きは 1、 それ以外に し ている と きはその fit_textflow( ) への呼び
出 し で与えていた値。
gstate
(グ ラ フ ィ ッ ク状態ハン ド ル) create_gstate( ) で取得 し たグ ラ フ ィ ッ ク状態のハン ド ル。 こ のグ ラ
フ ィ ッ ク状態が、 こ の関数で配置 さ れるすべてのテキス ト に対 し て効力を持ち ます。 別のグ ラ
フ ィ ッ ク状態をすでに add/create_textflow( ) に与え ていた と きは、 両方のグ ラ フ ィ ッ ク 状態がマー
ジ さ れます。 デ フ ォ ル ト : グ ラ フ ィ ッ ク 状態な し (すなわち、 カ レ ン ト 設定が用い られます)
lastlinedist1
(float ・ パーセ ン ト 値 ・ キーワー ド のいずれか。 fitmethod=nofit に し ている と きは無視 さ れます)
テキス ト 最終行ベース ラ イ ン と はめ込み枠下端の間隔を、 ユーザー座標で、 ま たは文字サイ ズ
(fixedleading=true に し ている と きは行の先頭の文字サイ ズ、 そ う でなければ行内のすべての文
サイ ズの う ちの最大値) に対するパーセ ン ト 値で、 あ るいはキーワー ド で指定 し ます。 デ フ ォ ル
ト : 0、 すなわちはめ込み枠下端をベース ラ イ ン と し て使い、 代表的なデ ィ セ ン ダがはめ込み枠の
下に出ます。 使え るキーワー ド :
descender 最終行で決定 さ れたデ ィ セ ン ダ値。 g や j 等の、 デ ィ セ ン ダ を持つ代表的なキ ャ ラ ク タ
がはめ込み枠下端に接 し ます。
fixedleading=false に し ている と きは、 最終行の中で見出 さ れたすべての descender 値の う ちの
最大値が使われます。
linespreadlimit
(float またはパーセ ン ト 値。 verticalalign=justify に し ている と きのみ) 縦揃え で行送 り を増や
せる最大値を、 ユーザー座標で、 または行送 り に対するパーセ ン ト 値で指定 し ます。 デ フ ォル ト :
200%
maxlines
(整数ま たはキーワー ド ) はめ込み枠内の最大行数か、 または、 で き る だけ多 く の行をはめ込み枠
内に配置 さ せたい と きはキーワー ド auto を指定 し ます。 最大行数を配置 し た と きは、 fit_
textflow( ) は文字列 _boxfull を返 し ます。 デ フ ォ ル ト : auto
minfontsize
(float またはパーセ ン ト 値) 特に fitmethod=auto に し ている と き に、 テキス ト を縮小 し てはめ込
み枠に収める と きの、 許容で き る最小文字サイ ズ。 こ の制限値は、 ユーザー座標系か、 またはは
め込み枠の高 さ に対するパーセ ン ト 値で指定 し ます。 制限を超えて も テキス ト が枠に収ま り き ら
ない と きは、 文字列 _boxfull が返 さ れます。 デ フ ォ ル ト : 0.1%
mingapwidth
(float またはパーセ ン ト 値) 複数の輪郭の間に (例 : 複数の回 り 込み輪郭の間に) テキス ト をはめ
込むための最小横幅を、 ユーザー座標で、 ま たは文字サイ ズに対するパーセ ン ト 値で指定 し ます。
こ れは、 複数の回 り 込み輪郭の間に狭い隙間 し かない場合に組版結果が醜 く な ら ないよ う にする
ために有用で し ょ う 。 デ フ ォ ル ト : 10%
orientate
(キーワー ド ) テキス ト を配置する時に向けたい向き を指定 し ます。 デ フ ォル ト : north。
returnatmark
96
north
直立
east
右倒 し
south
上下逆 さ ま
west
左倒 し
(整数) 指定する番号で定義 さ れた mark オプ シ ョ ンのある テキス ト 位置で、 fit_textflow( ) は不完全
な ま ま返 り ます。 戻 り 理由文字列は _mark# と な り ます。 こ こ で # は こ のオプ シ ョ ン で指定 し た番
号です。
第 5 章 : テキス ト と 表の組版 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 5.14 fit_textflow( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
rewind
(-2 ・ -1 ・ 0 ・ 1 のいずれかの整数) 与え る テキス ト フ ローの状態を、 同 じ テキス ト フ ローハン ド ル
を指定 し て fit_textflow( ) を呼び出 し たいずれかの時の前の状態に リ セ ッ ト し ます。 デ フ ォ ル ト :
0。
1
fit_textflow( ) を最初に呼び出 し た時の前の状態へ巻き戻 し 。
0
テキス ト フ ローを リ セ ッ ト し ません。
-1
fit_textflow( ) を最後に呼び出 し た時の前の状態へ巻き戻 し 。
-2
fit_textflow( ) を最後から 2 番目に呼び出 し た時の前の状態へ巻き戻 し 。
rotate
(float) はめ込み枠の左下隅を中心に、 指定する値を度単位の回転角 と し て、 座標系を回転 さ せま
す。 結果 と し て、 はめ込み枠 と テキス ト が回転 し ます。 テキス ト の配置が完了 し た時点で回転は
リ セ ッ ト さ れます。 デ フ ォル ト : 0
showborder
(論理値) true にする と 、 はめ込み枠の辺が描線 さ れます (カ レ ン ト グ ラ フ ィ ッ ク状態を使 っ て)。
こ れは開発やデバ ッ グに便利で し ょ う 。 デ フ ォ ル ト : false
showtabs
(キーワー ド ) デバ ッ グの補助のために、 タ ブ位置 と 左イ ンデン ト を縦線で視覚表示 し ます。 線
は、 fit_textflow( ) を呼び出す前に有効だ っ たグ ラ フ ィ ッ ク状態に従 っ て描かれます (デ フ ォ ル ト :
none) :
none
線を描き ません
fitbox
線をはめ込み枠の高 さ い っぱいに描き ます
validarea 線を それが有効な垂直領域にだけ描き ます
stamp
(キーワー ド ) このオプ シ ョ ン を使 う と 、 範囲枠内に対角線上のス タ ン プ を生成する こ と がで き ま
す。 ス タ ン プ テキス ト の改行は明示的に指定する必要があ り ます (すなわち、 ニ ュ ー ラ イ ンキ ャ
ラ ク タ かニ ュ ー ラ イ ンオプ シ ョ ン を用いて)。 テキス ト の中に明示的な改行が全 く ない と きは、 1
行のス タ ン プが生成 さ れます。 生成 さ れる ス タ ン プ テキス ト は可能な限 り 大き く さ れますが、 し
か し 指定 し た文字サイ ズよ り は大き く な り ません。 使え るキーワー ド (デ フ ォル ト : none) :
ll2ur
ス タ ン プが左下隅から 右上隅への対角線上に配置 さ れます。
ul2lr
ス タ ン プが左上隅から 右下隅への対角線上に配置 さ れます。
none
ス タ ン プは生成 さ れません。
verticalalign1 (キーワー ド ) はめ込み枠内のテキス ト の縦揃え。 firstlinedist ・ lastlinedist オプ シ ョ ン を適
切に考慮 さ れます (デ フ ォル ト : top) :
top
組版を先頭行か ら始めて、 下へ進行。 テキス ト がはめ込み枠を満た さ ない と きは、 テキ
ス ト の下に空白がで き ます。
center
テキス ト をはめ込み枠の縦中央に置き ます。 テキス ト がはめ込み枠を満た さ ない と き
は、 テキス ト の上 と 下の両方に空白がで き ます。
組版を最終行か ら始め、 上へ進行。 テキス ト がはめ込み枠を満た さ ない と きは、 テキス
ト の上に空白がで き ます。
bottom
justify
テキス ト をはめ込み枠の上端 と 下端に整列 さ せます。 そのために行送 り を、
linespreadlimit で指定 し ている制限内で増や し ます。 先頭行の高 さ は、
firstlinedist=leading に し ている と き だけ増や し ます。
5.3 テキス ト フ ローによ る複数行テキス ト
97
表 5.14 fit_textflow( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
wrap
(表 5.15 に従っ たオプ シ ョ ン リ ス ト ) テキス ト が、 表 5.15 に示すサブオプ シ ョ ン群で指定する輪
郭を回 り 込みます。 こ れを使 う と 、 テキス ト フ ローの中にグ ラ フ ィ ッ ク を配置 し て、 テキス ト を
その回 り に回 り 込ませた り 、 あ るいは任意の輪郭の中へテキス ト を流 し 込んだ り する こ と がで き
ます。 はめ込み枠への流 し 込みは、 fillrule オプ シ ョ ンに従 っ て行われ、 はめ込み枠の辺か ら開
始 さ れます。
デ フ ォ ル ト では、 指定する領域に一切テキス ト が入 り ません (領域ど う し が重な り 合 う 場合を除
き)。 すなわち、 テキス ト は輪郭を回 り 込みます。 addfitbox ・ inversefill オプ シ ョ ン を使 う と 、
こ れ と 逆の効果が得 られます : すなわち、 指定する領域へテキス ト が流 し 込まれ、 その外側の、
はめ込み枠 と 輪郭の間の領域は空のま まにな り ます。 こ れを利用すれば、 任意の輪郭 (llx/lly/
urx/ury 引数で与え る矩形にかぎ ら ず) へテキス ト を流 し 込む こ と がで き ます。
絶対座標値 と 相対座標値はユーザー座標系で解釈 さ れます。 相対座標は、 直前の絶対座標に追加
さ れます。 最大 256 個の値を相対値 と し て与え る こ と がで き ます。 パーセ ン ト 値は、 はめ込み枠
座標系で、 すなわちはめ込み枠の左下隅を (0, 0)、 右上隅を (100, 100) と し て解釈 さ れます (上か
ら下への座標系において も )。 最大 256 個の値をパーセ ン ト 値 と し て与え る こ と がで き ます。 例 :
枠を相対座標で除外 : wrap={ boxes={{120r 340r 50r 60r}} }
(wrap={ boxes={{120 340 170 400}} } と 同等)
はめ込み枠の右上 4 分の 1 部分を除外 : wrap={ boxes={50% 50% 100% 100%} }
三角形の輪郭へ流 し 込み : wrap={ addfitbox polygons={{50% 80% 30% 40% 70% 40% 50% 80%}} }
image1 と い う 範囲枠をつけた画像の領域を回 り 込み : wrap={ usematchboxes={{ image1 }}}
1. firstlinedist ・ lastlinedist ・ verticalalign オ プ シ ョ ンは、 た と え回 り 込み要素が存在 し ていて も 、 つねにはめ込み枠か
ら の指定にな り ます。 すなわち テキス ト フ ローは、 テキス ト と はめ込み枠の辺 と の距離を、 お よび verticalalign オ プ シ ョ ン
に従 っ て テキス ト 枠の位置を決定す る にあた り 、 回 り 込み要素群の境界枠を用い ません。 こ の こ と は と り わけ、 反転流 し 込
み、 すなわち回 り 込み要素群にテキス ト を流 し 込む場合に重要にな り ます。 こ のせいで、 と く に回 り 込み要素の外辺がはめ込
み枠に接 し ていない場合には、 結果が思い通 り にな ら ないか も し れません。 こ の影響は、 はめ込み枠に接する よ う な回 り 込み
要素を与え る こ と でほぼ完全に避ける こ と がで き ます。
表 5.15 fit_textflow( ) の wrap オプ シ ョ ンのサブオプ シ ョ ン一覧
オプ シ ョ ン
説明
addfitbox
(論理値) はめ込み枠が回 り 込み領域に追加 さ れます。 結果 と し て、 他の回 り 込みオプ シ ョ ン群
で指定する輪郭について、 テキス ト がその輪郭を回 り 込むのではな く 、 輪郭へテキス ト が流 し 込
まれます。 デ フ ォ ル ト : false
beziers
(ベジ エ曲線 2 個以上の リ ス ト ) 回 り 込み領域に追加 し たいベジ エ曲線 2 個以上。
boxes
(矩形の リ ス ト ) 回 り 込み領域に追加 し たい矩形 (複数可)。
circles
(円の リ ス ト ) 回 り 込み領域に追加 し たい円 (複数可)。
creatematchboxes
(オプ シ ョ ン リ ス ト の リ ス ト ) boxes オプ シ ョ ン内の矩形 1 個ない し 複数か ら範囲枠を生成 し ま
す。 それぞれのオプ シ ョ ン リ ス ト が、 boxes オプ シ ョ ン内の項目 1 個に対応 し (順序は意味を持
ち ます)、 範囲枠 1 個の生成を制御 し ます。 表 6.3 のすべての関連する範囲枠オプ シ ョ ンが使え ま
す。 サブオプ シ ョ ン リ ス ト は空にする こ と も で き、 その場合は、 対応する回 り こみ枠に対する範
囲枠は生成 さ れません。
fillrule
(キーワー ド ) 重な り 合 う 回 り 込み輪郭の内側を決定する ための方式を指定 し ます (デ フ ォ ル ト :
evenodd)。 詳 し く は表 7.2 を参照 :
98
evenodd
偶奇規則を用います。
winding
非ゼロ巻数規則を用います。 重な り 合 う 円の内側を処理 し たい と き (すなわち、 「 ド ー
ナ ツの穴」 を避ける) や、 重な り 合 う 輪郭の和 (共通部でな く ) を処理 し たい と きは、
この規則を用います。
第 5 章 : テキス ト と 表の組版 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 5.15 fit_textflow( ) の wrap オプ シ ョ ンのサブオプ シ ョ ン一覧
オプ シ ョ ン
説明
inversefill
(論理値) true にする と 、 回 り 込み輪郭の処理は、 テキス ト 行 と はめ込み枠内の回 り 込み要素の
辺 と の最初の共通部か ら始ま り ます。 false にする と 、 処理ははめ込み枠の辺か ら始ま り ます。
fillrule=evenodd の場合、 inversefill=true オプ シ ョ ンは addfitbox=true と 同 じ 効果を持ち ま
す。 fillrule=winding の場合、 addfitbox=true オプ シ ョ ン な らばはめ込み枠は空か満た さ れる
かのど ち ら かにな り ます (それぞれ inversefill=false ・ true の と き)。
lineheight
(要素 2 個の リ ス ト 。 各要素は正の float かキーワー ド ) 回 り 込み要素 と の交わ り を算出する ため
に使われる、 テキス ト 行の垂直範囲を定義 し ます。 テキス ト のベース ラ イ ンの上方 と 下方の範囲
について、 キーワー ド 2 個か float 2 個を指定する こ と がで き ます。 使え るキーワー ド :
none (範囲な し ) ・ xheight ・ descender ・ capheight ・ ascender ・ fontsize ・ leading ・ textrise
デ フ ォル ト : {ascender descender}
usematchboxes
(文字列の リ ス ト の リ ス ト ) それぞれの リ ス ト の 1 番目の要素は、 範囲枠を指定する名前文字列
です。 2 番目の要素は、 示 し たい矩形の番号を指定する整数か、 または選んでいる範囲枠を参照
し ているすべての矩形を指定 し たい と きはキーワー ド all も使え ます。 2 番目の要素を指定 し な
い と 、 デ フ ォル ト と し て all と 見な さ れます。 それぞれの矩形の外接枠が、 テキス ト の回 り 込み
のための輪郭 と し て使われます。
offset
(float ま たはパーセ ン ト 値) テキス ト と 回 り 込み領域の輪郭 と の横間隔を、 ユーザー座標で、 ま
たははめ込み枠の幅に対するパーセ ン ト 値で指定 し ます。 こ れを使 う と 、 回 り 込み領域を横へ拡
げる こ と がで き ます。 デ フ ォル ト : 0
paths
(オプ シ ョ ン リ ス ト の リ ス ト ) 回 り 込み領域に追加 し たいパス (複数可)。 使え るサブオプ シ ョ
ン:
path
(パスハン ド ル。 必須) 回 り 込み領域に追加 し たいパスのハン ド ル。
refpoint
(float 2 個かパーセ ン ト 値 2 個の リ ス ト ) パスに対する参照点の座標を、 ユーザー座標
で、 またははめ込み枠の幅 と 高 さ に対するパーセ ン ト 値で指定 し ます。 デ フ ォ ル ト :
{0 0}
draw_path( ) の下記のオプ シ ョ ン (表 6.1 ・ 表 7.8 参照) も使え ます :
align ・ attachmentpoint ・ boxsize ・ close ・ fitmethod ・ orientate ・ position ・ round ・ scale ・
subpaths
polygons
(折れ線の リ ス ト ) 回 り 込み領域に追加 し たい折れ線 (複数可。 閉 じ ていな く て もかまいませ
ん)。
VB RB Function info_textflow(textflow As Long, keyword As String) As Double
C# double info_textflow(int textflow, String keyword)
テ キ ス ト フ ロ ーの、 fit_textflow( ) を呼び出 し た後のカ レ ン ト 状態を取得 し ます。
textflow add/create_textflow( ) か fill_textblock( ) で textflowhandle オプシ ョ ン を指定 し
て呼び出 し て返 さ れた テ キ ス ト フ ロ ーハン ド ル。
keyword
ほ し い情報を表 5.16 に従っ て指定 し た キーワー ド 。
戻り値 keyword で要求 し た何 ら かのテ キ ス ト フ ロ ー特性の値。 こ の関数は、 ブ ラ イ ン ド モー ド で
も 正 し い位置情報を返 し ます (textx/texty パ ラ メ タ と は異な り )。
スコープ オブ ジ ェ ク ト 以外の任意
5.3 テキス ト フ ローによ る複数行テキス ト
99
表 5.16 info_textflow( ) のキーワー ド 一覧
キーワー ド
説明
boundingbox
テキス ト フ ローの外接枠をユーザー座標で表 し た も のを内容 と し て持つパスのハン ド ル、
または -1
boxlinecount
最後のはめ込み枠の中の行数
firstparalinecount
はめ込み枠の最初の段落の行数
firstlinedist
テキス ト の先頭ベース ラ イ ン と 、 上方の空想のベース ラ イ ン (verticalalign=top な ら こ
れがはめ込み枠の上端にな る) の間隔
fittext
fit_textflow( ) への直前の呼び出 し で配置 さ れた テキス ト に対応する テキス ト 文字列に対する
文字列番号。 こ れを利用する と 、 はめ込み枠内に配置する こ と がで き たテキス ト の量を知
る こ と がで き ます。 文字列は下記のよ う に正規化 さ れます : エ ン コ ーデ ィ ングは、 Unicode
対応言語では UTF-16 にな り 、 それ以外では (EBCDIC-) UTF-8 にな り 、 改行は U+000A で
マー ク さ れ、 水平 タ ブはスペースキ ャ ラ ク タ U+0020 で置き換え られます。
fontscale
fit_textflow( ) を fitmethod=auto で も っ と も 最近に呼び出 し た後の fontscale の値
lastfont
はめ込み枠の末尾テキス ト 行の中で使われている フ ォ ン ト のハン ド ル
lastfontsize
はめ込み枠の末尾テキス ト 行の中で使われている文字サイ ズ
lastmark
最後のはめ込み枠の中にある テキス ト フ ローの処理済みの部分で見つか っ た最後のマー ク
の番号 (マー クは mark オプ シ ョ ン で設定する こ と がで き ます)
lastlinedist
テキス ト の最終ベース ラ イ ン と 、 行送 り の変更がなかっ た と し た と きの下方の空想のベー
ス ラ イ ン (verticalalign=bottom な ら こ れがはめ込み枠の下端にな る) の間隔
lastparalinecount
はめ込み枠の最後の段落の行数
leading
テキス ト フ ローの中のテキス ト と オプ シ ョ ン によ っ て決定 さ れる、 leading オプ シ ョ ンの
カレン ト値
leftlinex1 ・ leftliney1
も っ と も最近に流 し 込みが行われたはめ込み枠の中の、 も っ と も 左で始ま る行の x ・ y 座標
を、 カ レ ン ト ユーザー座標系で表 し た もの
maxlinelength
も っ と も最近に流 し 込みが行われたはめ込み枠の中の、 も っ と も 長いテキス ト 行の長 さ
maxliney
1
も っ と も最近に流 し 込みが行われたはめ込み枠の中の、 も っ と も 長いテキス ト 行のベース
ラ イ ンの y 座標を、 カ レ ン ト ユーザー座標系で表 し た もの
minlinelength
も っ と も最近に流 し 込みが行われたはめ込み枠の中の、 も っ と も 短いテキス ト 行の長 さ
minliney1
も っ と も最近に流 し 込みが行われたはめ込み枠の中の、 も っ と も 短いテキス ト 行のベース
ラ イ ンの y 座標を、 カ レ ン ト ユーザー座標系で表 し た もの
returnreason
も っ と も最近の fit_textflow( ) への直接ま たは間接の呼び出 し の戻 り 原因を取得する ために
get_parameter( ) の string パラ メ タ (表 2.3 参照) で使え る文字列番号 (表 2.3 参照)。 取得
さ れる戻 り 原因は、 fit_textflow( ) が返す文字列のいずれか と 同 じ にな り ます。 これは、 fill_
textblock( ) が内部的に行 う 間接的な テキス ト フ ロー呼び出 し の結果を取得 し たい と き に有
用です。
rightlinex1 ・ rightliney1 も っ と も最近に流 し 込みが行われたはめ込み枠の中の、 も っ と も 右で終わる行の x ・ y 座標
を、 カ レ ン ト ユーザー座標系で表 し た もの
split
最後のはめ込み枠の中で単語の分割が起き たかど う かを示 し ます。
0
単語を分割する必要はなか っ た。
1
textendx ・ textendy
100
少な く と も 1 個の単語を分割する必要があ っ た。
も っ と も最近にはめ込み枠へ流 し 込みが行われた後の、 カ レ ン ト テキス ト 位置の x ・ y 座標
を、 カ レ ン ト ユーザー座標系で表 し た もの
第 5 章 : テキス ト と 表の組版 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 5.16 info_textflow( ) のキーワー ド 一覧
キーワー ド
説明
textheight
テキス ト 全体の外接枠の高 さ を (firstlinedist と lastlinedist を考慮 し て)、 カ レ ン ト
ユーザー座標系で表 し た も の
textwidth
テキス ト 全体の外接枠の幅を、 カ レ ン ト ユーザー座標系で表 し た も の
used
現時点で配置済みのテキス ト の割合を、 パーセ ン ト 値で表 し た もの (0 ~ 100)
x1 ・ y1 ・ …x4 ・ y4
テキス ト 全体の外接枠の座標を (firstlinedist と lastlinedist を考慮 し て)、 カ レ ン ト
ユーザー座標系で表 し た も の
1. rotate が 0 以外の と きは、 こ の値は回転後の系を参照 し ます。
VB RB Sub delete_textflow(textflow As Long)
C# void delete_textflow(int textflow)
テ キ ス ト フ ロ ー と 、 関連す る すべてのデー タ 構造を削除 し ます。
textflow
ド ル。
詳細
create_textflow( ) か add_textflow( ) を呼び出 し て返 さ れた テ キ ス ト フ ロ ーハン
こ の関数で削除 し ていないテ キ ス ト フ ロ ーは、カ レ ン ト の文書ス コ ープ を終え る 時に自動
的に削除 さ れ ます。 し か し 、 多 く のテ キ ス ト フ ロ ーを生成す る と き は、 delete_textflow( )
を呼び出 さ ない と 、 アプ リ ケーシ ョ ンはかな り 遅 く な り ます。
スコープ 任意
5.3 テキス ト フ ローによ る複数行テキス ト
101
5.4 表の組版
ク ッ ク ブ ッ ク 完全な コ ー ド サン プルが ク ッ ク ブ ッ クの tables/starter_table ト ピ ッ ク にあ り ます。
VB RB Function add_table_cell(
table As Long, column As Long, row as Long, text As String, optlist As String) As Long
C# int add_table_cell(int table, int column, int row, String text, String optlist)
新規ま たは既存の表にセルを追加 し ます。
table 以前に add_table_cell( ) を呼び出 し て取得 し た有効な表ハン ド ルか、 ま たは新規表
を開始 し たい と き は -1。 こ の表ハン ド ルは、 ま だ fit_table( ) への呼び出 し では使っ ていな
い も のでなければな り ません。 すなわち、 表の内容はすべて、 表をページに配置す る 前に
定義す る 必要があ り ます。
column ・ row セルを入れたい列 と 行の番号。 セルが複数の列 ・ 行にわた る と き は、 いち
ばん左の列 と いちばん上の行を与え る 必要があ り ます。 最初の列 ・ 行の番号は 1 です。
text (内容文字列) セルに入れたいテ キ ス ト 。 text を空以外にす る と 、 fit_textline( ) を
使っ てセル内に書 き 込まれます。
optlist 表セルの組版の詳細を表 5.17 に従っ て指定 し たオプシ ョ ン リ ス ト 。 以下のオプ
シ ョ ンが使え ます :
> 一般オプシ ョ ン : errorpolicy (28 ページ 「2.5 例外処理」 参照)
> 列 ・ 行定義 : colwidth ・ colscalegroup ・ minrowheight ・ return ・ rowheight ・
rowjoingroup ・ rowscalegroup
> セル特性 : checkwordsplitting ・ colspan ・ margin ・ marginleft ・ marginbottom ・
marginright ・ margintop ・ matchbox ・ rowspan
> セル内容 : annotationtype ・ continuetextflow ・ fieldname ・ fieldtype ・ fitannotation ・
fitfield ・ fitimage ・ fitpdipage ・ fittextline ・ fittextflow ・ fitpath ・ image ・ path ・
pdipage ・ repeatcontent ・ textflow
戻り値 表ハン ド ル。 以後の表関連の呼び出 し で使え ます。 errorpolicy=return の場合、 戻 り 値 -1
はエ ラ ーを表すので、 そ う でないか を呼び出 し 側で調べ る 必要があ り ます。 エ ラ ーが起 き
た と き は、 最後のセル定義だけが破棄 さ れます。 表には内容は追加 さ れませんが、 表ハン
ド ルは有効な ま ま です。 返 さ れた表ハン ド ルは、 複数の PDF 出力文書にわた っ て再利用
す る こ と はで き ません。
詳細 表セルには、 画像 ・ 取 り 込み PDF ページ ・ パ ス オブジ ェ ク ト ・ フ ォーム フ ィ ール ド ・ 注
釈 ・ テ キ ス ト フ ロ ー ・ テ キ ス ト 行を入れ る こ と がで き ます。 1 つのセルに対 し て、 複数の
内容種別を、 1 回の関数呼び出 し で指定す る こ と も で き ます。
表の組版アルゴ リ ズ ム と 、 幅 ・ 高 さ 計算の解説は PDFlib チ ュ ー ト リ アルを参照。
スコープ オブ ジ ェ ク ト 以外の任意
表 5.17 add_table_cell( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
annotationtype
(文字列) 表セルに挿入 し たい注釈の種類を表 12.6 に従っ て指定 し ます。
102
第 5 章 : テキス ト と 表の組版 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 5.17 add_table_cell( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
checkwordsplitting
(論理値。 テキス ト フ ローセルに対 し てのみ意味を持ち ます) true にする と 、 表組版機能は、 テキ
ス ト を表セルにはめ込む際にテキス ト フ ローが少な く と も 1 箇所で単語の分割を強制する必要が
あ るかど う かを検査 し ます。 も し そ う な ら、 セルの幅を拡げて、 単語の分割を回避 し よ う と し ま
す。 デ フ ォル ト : true
colscalegroup1
(文字列) 列を追加 し たい列グループの名前。 長いテキス ト を ま る ご と 収める ために、 グループの
1 つの列を拡げる必要がある と きは、 そのグループのすべての列が統一的に拡大 さ れます。 セルが
複数の列にわた る と きは、 それらの列は自動的に伸縮グループ を形成 し ます。
colspan
(整数) セルがわた る列の数。 デ フ ォル ト : 1
colwidth1
(float またはパーセ ン ト 値) column 引数で指定 し ている列の幅。 こ の幅は、 ユーザー座標で 2、 ま
たは表の最初のはめ込み枠 (fit_table( ) 参照) の幅に対するパーセ ン ト 値で指定する こ と がで き ま
す。 ユーザー座標 と パーセ ン ト 値を混在 さ せてはいけません。 すなわち、 1 つの表では、 すべての
列幅定義に、 ユーザー座標かパーセ ン ト 値のど ち らかを使 う 必要があ り ます。 テキス ト を内容 と
する セル群にわた る列の場合には、 その列幅は自動的に増や さ れる こ と があ り ます。 表セル内に
画像 ・ PDF ページがあ っ て も列幅には一切影響を与え ません。 デ フ ォ ル ト : fit_table( ) のオプ シ ョ
ン colwidthdefault を参照
continuetextflow
(論理値。 テキス ト フ ローに対 し てのみ意味を持ち ます) true にする と 、 textflow オプ シ ョ ン で
指定 し たテキス ト フ ローの内容を、 も し それ と 同 じ テキス ト フ ローハン ド ルで別のセルへの流 し
込みを行い、 かつそのセルで も continuetextflow=true にする な ら ば、 その別のセルへ続け さ せ
る こ と がで き ます。 テキス ト フ ローの各部分は、 セルが追加 さ れた順番に配置 さ れてい き ます。
PDFlib は、 テキス ト フ ロー全体に対する セルサイ ズの調整は行わず、 また、 checkwordsplitting
オプ シ ョ ンは無視 さ れます。 ですので、 適切なセルサイ ズを定義する必要があ り ます。
fieldname
(ハイパーテキス ト 文字列) fieldtype に対する フ ォ ーム フ ィ ール ド 名。
fieldtype
(文字列) 表セルに挿入 し たい フ ォ ーム フ ィ ール ド の種類を表 12.9 に従 っ て指定 し ます。 フ ォ ーム
フ ィ ール ド グループは表の外で定義する必要があ り ます。
fitannotation
(オプ シ ョ ン リ ス ト ) に対する、 表 12.7 に従っ た注釈オプ シ ョ ン群。
fitfield
(オプ シ ョ ン リ ス ト ) に対する、 表 12.10 に従っ た フ ォ ーム フ ィ ール ド オプ シ ョ ン群。
fitimage
(オプ シ ョ ン リ ス ト 。 画像 と テ ン プ レー ト に対 し てのみ意味を持ち ます) fit_image( ) に対する オプ
シ ョ ン リ ス ト 。 こ のオプ シ ョ ン リ ス ト は、 与えている画像またはテ ン プ レー ト を セルの中に配置
する ために適用 さ れます。 セル内枠の左下隅が参照点 と し て使われます。
デ フ ォル ト : boxsize={<幅> <高さ>} fitmethod=meet position=center、 こ こ で <幅> と <高さ> は、
算出 さ れたセル内枠の幅 と 高 さ です。 この算出 さ れたオプ シ ョ ン リ ス ト は、 ユーザーが与え る オ
プ シ ョ ン リ ス ト の頭につけ ら れます。3
fitpath
(オプ シ ョ ン リ ス ト 。 パスオブ ジ ェ ク ト に対 し てのみ意味を持ち ます) draw_path( ) に対する オプ
シ ョ ン リ ス ト 。 path オプ シ ョ ン で指定 し たパスオブ ジ ェ ク ト がその外接枠内に入 っ た も のを セル
内に配置する ために、 こ のオプ シ ョ ン リ ス ト が適用 さ れます。 セル内枠の左下隅が参照点 と し て
用い られます。
デ フ ォル ト : boxsize={<幅> <高さ>} fitmethod=meet position=center、 こ こ で <幅> と <高さ> は、
算出 さ れたセル内枠の幅 と 高 さ です。 この算出 さ れたオプ シ ョ ン リ ス ト は、 ユーザーが与え る オ
プ シ ョ ン リ ス ト の頭につけ ら れます。 3
fitpdipage
(オプ シ ョ ン リ ス ト 。 PDI ページに対 し てのみ意味を持ち ます。 PDI が利用可能な場合のみ) fit_pdi_
page( ) に対するオプ シ ョ ン リ ス ト 。 与えたページ を セル内に配置する ために、 こ のオプ シ ョ ン リ
ス ト が適用 さ れます。 セル内枠の左下隅が参照点 と し て用い られます。
デ フ ォル ト : boxsize={<幅> <高さ>} fitmethod=meet position=center、 こ こ で <幅> と <高さ> は、
算出 さ れたセル内枠の幅 と 高 さ です。 この算出 さ れたオプ シ ョ ン リ ス ト は、 ユーザーが与え る オ
プ シ ョ ン リ ス ト の頭につけ ら れます。 3
5.4 表の組版
103
表 5.17 add_table_cell( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
fittextflow
(オプ シ ョ ン リ ス ト 。 テキス ト フ ローに対 し てのみ意味を持ち ます) fit_textflow( ) に対する オプ
シ ョ ン リ ス ト 。 textflow オプ シ ョ ン で与えたテキス ト フ ローを セル内に配置する ために、 こ のオ
プ シ ョ ン リ ス ト が適用 さ れます。 セル内枠がはめ込み枠 と し て使われます。
デ フ ォ ル ト : verticalalign=center lastlinedist=descender。 こ のオプ シ ョ ン リ ス ト は、 ユー
ザーが与え る オプ シ ョ ン リ ス ト の頭につけ られます。
fittextline
(オプ シ ョ ン リ ス ト 。 テキス ト 行に対 し てのみ意味を持ち ます) fit_textline( ) に対する オプ シ ョ ン
リ ス ト 。 与えた テキス ト を セル内に配置する ために、 こ のオプ シ ョ ン リ ス ト が適用 さ れます。 セ
ル内枠の左下隅が参照点 と し て使われます。 指定 し ていないオプ シ ョ ンは、 それぞれのデ フ ォ ル
ト に置き換え られます。 カ レ ン ト テキス ト 状態は考慮 さ れません。
デ フ ォ ル ト : boxsize={<幅> <高さ>} fitmethod=nofit position=center、 こ こ で <幅> と <高さ>
は、 算出 さ れたセル内枠の幅 と 高 さ です。 この算出 さ れたオプ シ ョ ン リ ス ト は、 ユーザーが与え
るオプ シ ョ ン リ ス ト の頭につけ ら れます。 3
image
(画像ハン ド ル) ハン ド ルに関連づけ られた画像が、 セル内枠の中に配置 さ れます。
margin
marginleft
marginbottom
marginright
margintop
(float またはパーセ ン ト 値) セルの左 ・ 下 ・ 右 ・ 上余白を、 ユーザー座標系か (0 以上にする必要
があ り ます)、 またはセルの幅か高 さ に対するパーセ ン ト 値 (100% 未満にする必要があ り ます) で
指定 し ます。 指定する余白は、 セルの内容に対するはめ込み枠 と し てはた ら く セル内枠を定義 し
ます。 margin に対するデ フ ォル ト : 0。 それ以外のすべてに対するデ フ ォル ト : margin
matchbox
(オプ シ ョ ン リ ス ト ) 範囲枠の詳細を表 6.3 に従 っ て入れたオプ シ ョ ン リ ス ト
minrowheight1
(float またはパーセ ン ト 値) ある表行を 1 つの表イ ン ス タ ン スの中で配置 し きれない と き に、 こ の
オプ シ ョ ンは、 行を分割 し ていいか、 そ し て各部分はどれだけ小 さ く で き るかを指定 し ます。 部
分の最小の高 さ を、 ユーザー座標系か、 または表行の高 さ に対するパーセ ン ト 値で指定する こ と
がで き ます。 デ フ ォ ル ト : 100%、 すなわち分割な し
path
(パスハン ド ル) パスオブ ジ ェ ク ト がその外接枠内に入っ た ものが、 fitpath オプ シ ョ ンに従 っ て
セル内枠内に配置 さ れます。
pdipage
(ページハン ド ル) ハン ド ルに関連づけ られた取 り 込み PDF ページが、 セル内枠内に配置 さ れま
す。 デ フ ォル ト : な し
repeatcontent
(論理値) セルまたは表行が複数の表イ ン ス タ ン スに分割 さ れた と き に表セルの内容を繰 り 返 し 印
字するかど う かを指定 し ます。 デ フ ォル ト : true
セルの分割 : セルが複数表行にわた っ ている場合に、 その末尾表行 (群) がはめ込み枠に収ま ら
ない と きは、 そのセルは分割 さ れます。 repeatcontent=true にする と 、 テキス ト フ ロー (繰 り 返
さ れません) の場合を除き、 そのセル内容は次の表イ ン ス タ ン ス内で繰 り 返 さ れます。 そ う でな
い と きは繰 り 返 さ れません。
表行の分割 : 末尾本体行がはめ込み枠に収ま ら ない と きは、 通常、 その表行は分割 さ れずに次の
表イ ン ス タ ン スへま る ご と 配置 さ れます。 minrowheight 値を小 さ く する こ と に よ っ て、 末尾本体
行を分割 さ せ、 その表行の内容の う ちのある割合を最初のイ ン ス タ ン スに、 残 り の部分を次のイ
ン ス タ ン スに配置 さ せる こ と も で き ます。 repeatcontent=true にする と 、 テキス ト フ ロー (繰 り
返 さ れません) の場合を除き、 そのセル内容は次の表イ ン ス タ ン ス内で繰 り 返 さ れます。 そ う で
ない と きは繰 り 返 さ れません。
return1
104
(文字列) fit_table( ) は、 指定行を配置 し た後に停止 し 、 指定文字列を返 し ます。 文字列は、 頭にア
ン ダース コ アキ ャ ラ ク タ 「_」 をつけてはいけません。 指定行が連動グループに含まれている と き
は、 それはそのグループの最後の行であ る必要があ り ます。 そ う でなければエ ラ ーが起 こ り ます。
第 5 章 : テキス ト と 表の組版 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 5.17 add_table_cell( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
rowheight1
(float またはパーセ ン ト 値) row 引数で指定 し ている表行の高 さ 。 この高 さ は、 ユーザー座標で 2、
または表の最初のはめ込み枠 (fit_table( ) 参照) の高 さ に対するパーセ ン ト 値で指定する こ と がで
き ます。 ユーザー座標 と パーセ ン ト 値を混在 さ せてはいけません。 すなわち、 1 個の表では、 すべ
ての表行高 さ 定義に、 ユーザー座標かパーセ ン ト 値のど ち ら かを使 う 必要があ り ます。 テキス ト
を内容 と する セル群にわた る表行の場合には、 その表行高 さ は自動的に増や さ れる こ と があ り ま
す。 表セル内に画像 ・ PDF ページがあ っ て も表行高 さ には一切影響を与え ません。 デ フ ォ ル ト :
fit_table( ) のオプ シ ョ ン rowheightdefault を参照
rowscalegroup1
(文字列) 表行を追加 し たい表行グループの名前。 長いテキス ト を ま る ご と 収める ために、 グルー
プの 1 個の表行を拡げる必要があ る と きは、 そのグループのすべての表行が統一的に拡大 さ れま
す。 セルが複数の表行にわた る と きは、 それら の表行は自動的に伸縮グループ を形成 し ます。
rowjoingroup1
(文字列) 表行を追加 し たい表行グループの名前。 グループの表行はすべて、 1 つの表イ ン ス タ ン
スにま と ま り ます。 グループの表行は連続 し ている必要があ り ます。 セルが複数の表行にわた っ
ていて も 、 それ らの表行は自動的には連動グループ を形成 し ません。
rowspan
(整数) セルがわた る表行の数。 デ フ ォ ル ト : 1
textflow
(テキス ト フ ローハン ド ル) ハン ド ルに関連づけ ら れた テキス ト フ ローが、 セル内枠内に配置 さ れ
ます。 continue オプ シ ョ ンが、 複数のセルで使われる テキス ト フ ローハン ド ルに対する動作を制
御 し ます。 1 個のテキス ト フ ローハン ド ルは表の外で使 っ てはいけません。 デ フ ォ ル ト : テキス ト
フ ローな し
1. こ のオプ シ ョ ンの最後の指定が優先 さ れます。 すなわち、 同 じ 行 ・ 列に対する それ以前の指定は無視 さ れます。
2. よ り 厳密には、 最初の表イ ン ス タ ン ス を配置する ために fit_table( ) を呼び出 し た時に効いている座標系。
3. 枠の大き さ は自動的に算出 さ れます。 オプ シ ョ ン リ ス ト で boxsize オプ シ ョ ン を与え て も 無視 さ れます。
VB RB Function fit_table(table As Long,
llx As Double, lly As Double, urx As Double, ury As Double, optlist As String) As String
C# String fit_table(int table, double llx, double lly, double urx, double ury, String optlist)
表の全部ない し 一部分をページに配置 し ます。
table
add_table_cell( ) を呼び出 し て取得 し た有効な表ハン ド ル。
llx ・ lly ・ urx ・ ury 表 イ ン ス タ ン ス を配置 し たい矩形 (はめ込み枠) の左下隅 と 右上隅
の座標を、ユーザー座標で指定 し ます。こ の 2 個の隅は逆の順に指定す る こ と も で き ます。
optlist 配置の詳細を表 5.18 に従っ て指定 し たオプシ ョ ン リ ス ト 。 以下のオプシ ョ ンが
使え ます :
> 一般オプシ ョ ン : errorpolicy (28 ページ 「2.5 例外処理」 参照)
> 表 6.1 に従っ たはめ込みオプシ ョ ン : fitmethod ・ position ・ showborder
> 一般表オプシ ョ ン : blind ・ colwidthdefault ・ horshrinklimit ・ rewind ・ rowheightdefault ・
vertshrinklimit
> 表内容 : header ・ footer
> 表装飾 : fill ・ firstdraw ・ gstate ・ stroke
> 開発 ・ デバ ッ グの視覚支援 : debugshow ・ showcells ・ showgrid
戻り値 関数か ら 戻っ た原因を示す文字列。
> _stop : 表のすべての表行の処理が完了。
> _boxfull:配置する べ き 表行は ま だあ る が、表のはめ込み枠に充分は余地が得 ら れない。
も う 一度 fit_table( ) を呼び出 し て残 り の表行を処理す る 必要があ り ます。
5.4 表の組版
105
> _error : エ ラ ーが発生。 問題に関す る 詳細を得 る には、 get_errmsg( ) を呼び出 し ます。
> それ以外の文字列:add_table_cell( ) への呼び出 し で return オプシ ョ ンに与えた文字列。
エ ラ ー動作は、 errorpolicy パ ラ メ タ ま たはオプシ ョ ンで変え る こ と がで き ます。
詳細 表をページに配置 し ます。 こ れ以前に add_table_cell( ) を呼び出 し て表にセルを入れてお
く 必要があ り ます。 表全体がはめ込み枠に収ま り き ら ない と き は、 最初の表 イ ン ス タ ン ス
が配置 さ れます。 以後 こ の関数を呼び出 し て、 さ ら な る 表 イ ン ス タ ン ス を配置 し てい く こ
と がで き ます。 表セルの内容は、 以下の順序で配置 さ れます。
> 塗 り : fill
オプシ ョ ンで指定す る 領域は、 次の順序で塗 ら れます : table ・ colother ・
colodd・coleven・col#・collast・rowother・rowodd・roweven・row#・rowlast・header・footer。
> 範囲枠の塗 り : matchbox 定義で定義 し た 1 個のセルの領域。
> 内容 : 指定 し たセル内容は、 次の順序で配置 さ れます : 画像 ・ 取 り 込み PDF ページ ・ テ
キ ス ト フ ロ ー ・ テ キ ス ト 行 ・ パ ス オブジ ェ ク ト ・ 注釈 ・ フ ォーム フ ィ ール ド 。
> 範囲枠の罫線 : matchbox 定義で定義 し た 1 個のセルの領域。
> 罫線:stroke オプシ ョ ン で指定す る 線は、stroke オプシ ョ ンの linecap・linejoin サブオプ
シ ョ ンに従っ て、次の順序で描線 さ れます : other ・ horother ・ hor# ・ horlast ・ vertother ・
vert# ・ vertlast ・ frame (横線 と 縦線の順序は、 firstdraw オプシ ョ ンで変え る こ と がで
き ます。) 。 複数の行 ・ 列にわた る セルの中では、 罫線は引かれません。 同様に、 枠線
の装飾を指定 し てい る 範囲枠をつけてい る セルの ま わ り には、線は描線 さ れません (そ
の範囲枠がセル内枠を使っ てい る と き を除 き ) 。 表の枠線 vert0 ・ hor0 ・ vertN ・ horN
は、 frame を指定 し てい る と き は無視 さ れます。
> 名前付 き 範囲枠 : こ れ ら には、 表関数以外の、 注釈 ・ フ ォ ーム フ ィ ール ド ・ 画像な ど
をつけ る こ と がで き ます。
スコープ 一般にはページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ。 ただ し 、 表が フ ォーム フ ィ ール ド か
注釈を含んでい る 場合には、 各ス コ ープが勝 り ます。 た と えば、 フ ォーム フ ィ ール ド か注
釈を含んでい る 表は、 テ ンプ レー ト 上に配置する こ と がで き ません。
表 5.18 fit_table( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
blind
(論理値) true にする と 、 すべての計算が行われますが、 出力は作成 さ れません。 組版の結果は、
info_table( ) で調べる こ と がで き ます。 デ フ ォ ル ト : false
colwidthdefault
(float またはキーワー ド 。 1 個の表についての最初の fit_table( ) への呼び出 し でのみ意味を持ち ま
す) add_table_cell( ) の colwidth オプ シ ョ ンが指定 さ れなか っ た列に対するデ フ ォ ル ト 幅。 こ のデ
フ ォル ト 幅は、 絶対値 と し て、 またはキーワー ド と し て指定する こ と がで き ます (デ フ ォル ト :
auto) :
幅が指定 さ れなかっ たすべての列に対 し て、 はめ込み枠の幅が均等に分配 さ れます。 結
果 と し て、 表ははめ込み枠の幅い っぱいに広が り ます。
最小限の幅を持つ列を生成するには、 小 さ な値を与え る こ と がで き ます (0.1 な ど)。 テキス ト 行
かテキス ト フ ローを含むすべての列の幅は自動的に調整 さ れます (PDFlib チ ュ ー ト リ アル参照)。
auto
debugshow
106
(論理値) true にする と 、 表が高すぎか、 または幅が広すぎか、 ま たはそのセルが小 さ すぎのエ
ラ ーがすべて出な く な り 、 かわ り にログ記録 さ れます。 で き あがる表イ ン ス タ ン スは、 表 と し て
はおか し く な り ますが、 デバ ッ グの助け と し て作成 さ れます。 デ フ ォル ト : false
第 5 章 : テキス ト と 表の組版 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 5.18 fit_table( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
fill
(オプ シ ョ ン リ ス ト の リ ス ト ) こ のオプ シ ョ ン を使 う と 、 行 ・ 列に色を塗る こ と がで き ます (1 個
のセルに色を塗るには、 matchbox オプ シ ョ ンが使え ます。 118 ページ 「6.2 範囲枠」 参照) :
area
(キーワー ド ) 塗 り たい表の領域。
col#
表の列番号 #
collast
最後の列
coleven
偶数番号の列すべて (add_table_cell( ) の col に従っ て)
colodd
奇数番号の列すべて
colother 未指定の列すべて
row#
表の行番号 #
rowlast
表イ ン ス タ ン スの最後の本体行
roweven 偶数番号の表行すべて (add_table_cell( ) の row に従 っ て)
rowodd 奇数番号の表行すべて
header
ヘ ッ ダグループの表行すべて
footer
フ ッ タ グループの表行すべて
rowother 未指定の本体行すべて
table
表領域全体 (すなわち表の表行すべて)
表 7.2 に従っ た以下のグ ラ フ ィ ッ ク書式オプ シ ョ ン も使え ます :
fillcolor ・ shading
例:
表の表行すべて を赤 く 塗る : fill = { {area=table fillcolor={rgb 1 0 0}} }
奇数番号の表行を緑で、 偶数番号の表行を赤で塗る :
fill = { {area=rowodd fillcolor={rgb 0 1 0}} {area=roweven fillcolor={rgb 1 0 0}} }
firstdraw
(キーワー ド ) 横線 と 縦線を生成する順序を指定 し ます (デ フ ォ ル ト : vertlines) :
horlines
横線を まず生成 し ます。
vertlines
縦線を まず生成 し ます。
footer
(整数) 表の定義における、 終了部 ( フ ッ タ ) 表行の数。 各表イ ン ス タ ン スの下端に現れます。 デ
フ ォ ル ト : 0 ( フ ッ タ 行な し )
gstate
(グ ラ フ ィ ッ ク状態ハン ド ル) create_gstate( ) で取得 し たグ ラ フ ィ ッ ク 状態のハン ド ル。 すべての
表装飾が、 与え るグ ラ フ ィ ッ ク状態に従います。 セル内容に対 し ては効力を持ち ません。 デ フ ォ
ル ト : グ ラ フ ィ ッ ク状態な し (すなわち、 カ レ ン ト 設定が用い られます)
header
(整数) 表の定義における、 開始部 (ヘ ッ ダ) 表行の数。 各表イ ン ス タ ン スの上端に現れます。 デ
フ ォ ル ト : 0 (ヘ ッ ダ行な し )
horshrinklimit
(float またはパーセ ン ト 値) 表のはめ込み枠に収める ために表を縮める と き に使われる横縮小倍率
の下限か (パーセ ン ト 値を与え る と き)、 ま たは表の幅 と はめ込み枠の幅の差の絶対指定 (float を
与え る と き)。 デ フ ォル ト : 50%
rewind
(-1 ・ 0 ・ 1 のいずれかの整数) 表の状態を、 fit_table( ) を呼び出 し たいずれかの時の前の状態に リ
セ ッ ト し ます。 目下、 以下の値が使え ます。 デ フ ォル ト : 0。
1
fit_table( ) を最初に呼び出 し た時の前の状態へ巻き戻 し 。
0
表を リ セ ッ ト し ません。
-1
fit_table( ) を最後に呼び出 し た時の前 (今回の呼び出 し の前) の状態へ巻き戻 し 。
5.4 表の組版
107
表 5.18 fit_table( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
rowheightdefault
(float またはキーワー ド 。 1 個の表についての最初の fit_table( ) への呼び出 し でのみ意味を持ち ま
す) add_table_cell( ) の rowheight オプ シ ョ ンが指定 さ れなかっ た表行に対するデ フ ォ ル ト 高 さ 。 こ
のデ フ ォ ル ト 高 さ は、 絶対値 と し て、 またはキーワー ド と し て指定する こ と がで き ます (デ フ ォ
ル ト : auto) :
auto
高 さ が指定 さ れなか っ たすべての表行に対 し て、 はめ込み枠の高 さ が均等に分配 さ れま
す。 結果 と し て、 表ははめ込み枠の高 さ い っぱいに広が り ます。
最小限の高 さ を持つ表行を生成するには、 小 さ な値を与え る こ と がで き ます (0.1 な ど)。 テキス
ト 行かテキス ト フ ローを含むすべての表行の高 さ は自動的に調整 さ れます (PDFlib チ ュ ー ト リ ア
ル参照)。
showcells
(論理値) true にする と 、 各セル内枠の辺がカ レ ン ト グ ラ フ ィ ッ ク状態を使 っ て描線 さ れます。 デ
フ ォル ト : false
showgrid
(論理値) true にする と 、 すべての列 と 行の縦 ・ 横の境界が描線 さ れます。 デ フ ォ ル ト : false
stroke
(オプ シ ョ ン リ ス ト の リ ス ト ) こ のオプ シ ョ ン を使 う と 、 セルの辺に描線を作成する こ と がで き ま
す:
line
(キーワー ド ) 描線 し たい表の線。
vert#
列番号 # の右の辺の縦線。 vert0 は表の左の辺
vertfirst 最初の縦線 (vert0 と 同義)
vertlast
最後の縦線
vertother 未指定の縦線すべて
hor#
表行番号 # の下の辺の横線。 row0 は表の上の辺
horfirst
表イ ン ス タ ン スの最初の横線
horother 未指定の横線すべて
horlast
表イ ン ス タ ン スの最後の横線
frame
表の外辺
other
指定 し ていない線すべて
表 7.2 に従 っ た以下のグ ラ フ ィ ッ ク書式オプ シ ョ ン も使え ます :
dasharray ・ dashphase ・ linecap ・ linejoin ・ linewidth ・ strokecolor
例:
すべての線を黒で線幅 1 で描線 : stroke = {line=other}
外辺の線を線幅 0.5 で描線 : stroke = { {line=frame linewidth=0.5} }
外辺の線を線幅 0.5 で、 他の線すべて を線幅 0.1 で描線 :
stroke = { {line=frame linewidth=0.5} {line=other linewidth=0.1} }
vertshrinklimit
(float またはパーセ ン ト 値) 表のはめ込み枠に収める ために表を縮める と き に使われる縦縮小倍率
の下限か (パーセ ン ト 値を与え る と き)、 または表の高 さ と はめ込み枠の高 さ の差の絶対指定
(float を与え る と き)。 デ フ ォ ル ト : 90%
VB RB Function info_table(table As Long, keyword As String) As Double
C# double info_table(int table, String keyword)
も っ と も 最近に配置 し た表 イ ン ス タ ン ス に関連する 表情報を取得 し ます。
table add_table_cell( ) を呼び出 し て取得 し た有効な表ハン ド ル。 こ の表ハン ド ルは、 少
な く と も 1 回は fit_table( ) を呼び出す と き に使っ てい る 必要があ り ます。 なぜな ら 戻 り 値
は、 表 イ ン ス タ ン ス をページに配置 し た後にのみ意味を持つか ら です。
keyword
108
ほ し い情報を表 5.19 に従っ て指定 し た キーワー ド 。
第 5 章 : テキス ト と 表の組版 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
戻り値 keyword で要求 し た何 ら かの表特性の値。 こ の関数はブ ラ イ ン ド モー ド であ っ て も 、 正 し
い位置情報を返 し ます。
スコープ オブ ジ ェ ク ト 以外の任意
表 5.19 info_table( ) のキーワー ド 一覧
キーワー ド
説明
boundingbox
表イ ン ス タ ン スの外接枠をユーザー座標で表 し た ものを内容 と し て持つパスのハン ド ル、 ま たは 1
firstbodyrow も っ と も 最近に配置 し た表イ ン ス タ ン スの最初の本体行の番号
height
表イ ン ス タ ン スの高 さ
horboxgap
表イ ン ス タ ン スの幅 と はめ込み枠の幅の差。 表を縮めなければな ら なかっ た と きは、 こ の値はは
め込み枠の幅か らの逸脱を示 し ます (すなわち負の値)。
horshrinking 計算 さ れた表幅に対する横縮小倍率をパーセ ン ト 値 と し て表 し た も の。 表を横に縮めなければな
ら なかっ た と きは、 こ の値は縮小比を示 し ますが、 そ う で なければ 100 にな り ます。
lastbodyrow
も っ と も 最近に配置 し た表イ ン ス タ ン スの最後の本体行の番号
returnreason 返 っ た原因の文字列番号
rowcount
も っ と も 最近に配置 し た表イ ン ス タ ン スの表行の数 (ヘ ッ ダ ・ フ ッ タ を含む)
rowsplit
最後の行を分割 し なければな ら なか っ た と きは 1、 そ う でなければ 0
vertboxgap
表イ ン ス タ ン スの高 さ と はめ込み枠の高 さ の差。 表を縮めなければな ら なかっ た と きは、 この値
ははめ込み枠の高 さ か らの逸脱を示 し ます (すなわち負の値)。
vertshrinking
計算 さ れた表の高 さ に対する縦縮小倍率をパーセ ン ト 値 と し て表 し た もの。 表を縦に縮めなけれ
ばな ら なかっ た と きは、 この値は縮小比を示 し ますが、 そ う でなければ 100 にな り ます。
width
表イ ン ス タ ン スの幅
x1 ・ y1 ・ …
x4 ・ y4
表枠の隅の座標を、 左下隅か ら反時計回 り に、 ユーザー座標で表 し た もの
xvertline#
番号 # の縦線の x 座標。 xvertline0 は表の左の辺。
yhorline#
番号 # の横線の y 座標。 yhorline0 は表の上の辺。
VB RB Sub delete_table(table As Long, optlist As String)
C# void delete_table(int table, String optlist)
表 と 、 関連す る すべてのデー タ 構造を削除 し ます。
table
optlist
詳細
add_table_cell( ) を呼び出 し て取得 し た有効な表ハン ド ル。
ク リ ーン ア ッ プオプシ ョ ン を表 5.20 に従っ て指定 し たオプシ ョ ン リ ス ト 。
こ の関数で削除 し なか っ た表は、カ レ ン ト の文書ス コ ープ を終え る と 自動的に削除 さ れま
す。
スコープ 任意
5.4 表の組版
109
表 5.20 delete_table( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
keephandles
(論理値) false にする と 、 add_table_cell( ) の textflow ・ image ・ pdipage オプ シ ョ ンに与えたハン
ド ルがすべて自動的に削除 さ れます。 デ フ ォル ト : false
110
第 5 章 : テキス ト と 表の組版 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
6 オブ ジ ェ ク ト のはめ込み と 範囲枠
6.1 オ ブ ジ ェ ク ト のはめ込み
PDFlib のはめ込みアルゴ リ ズ ムは、 矩形のグ ラ フ ィ ッ ク オブジ ェ ク ト を、 点に、 ま たは横
線か縦線に、 あ る いは矩形に相対的に配置 し ます。 こ のはめ込みアルゴ リ ズ ムはい く つか
の関数に実装 さ れてい ます :
> fit_textline( ) ・ info_textline( )
> fit_image( ) ・ info_image( )
> fit_pdi_page( ) ・ info_pdi_page( )
> draw_path( ) ・ info_path( )
> add_table_cell( ) (fittextline ・ fitimage ・ fitpdipage ・ fitpath オプシ ョ ンに対す る オプシ ョ
ン リ ス ト を通 じ て)
> fit_table( )
> fill_*block( )
注 テキス ト フ ロ ーに対す るはめ込みオ プ シ ョ ン群は若干異な っ てい ますので、 こ こ ではな
く 、 85 ページ 「5.3 テキス ト フ ローによ る複数行テキス ト 」 で記 し ています。
表 6.1 に、 こ れ ら のはめ込み関数に与え る こ と ので き る はめ込みオプシ ョ ン を挙げます。
すべてのオプシ ョ ン がすべての関数で利用で き る わけではな く 、 ま た、 い く つかのオプ
シ ョ ンの動作は関数に よ っ て若干変わ り ます。 詳 し く は表 6.1 を参照。 以下のオプシ ョ ン
がはめ込みオプシ ョ ンのグループ を形成 し ます :
alignchar ・ boxsize ・ dpi ・ fitmethod ・ margin ・ matchbox ・ minfontsize ・ orientate ・
position ・ refpoint ・ rotate ・ scale ・ stamp ・ showborder ・ shrinklimit
オ ブ ジ ェ ク ト 枠 すべての場合において、 はめ込みアルゴ リ ズ ムは、配置す る オブジ ェ ク
ト を囲む最小の矩形を算出 し ます。 こ の矩形を オブ ジ ェ ク ト 枠 と 呼びます。 こ れは、 オブ
ジ ェ ク ト の種類に応 じ て変え る こ と がで き ます :
> テ キ ス ト 行 (fit/info_textline( ) ・ 一行テ キ ス ト ブ ロ ッ ク ・ 表セル) : オブジ ェ ク ト 枠の
デフ ォ ル ト 幅はテ キ ス ト の幅であ り 、 テ キ ス ト 枠のデフ ォ ル ト 高 さ は、 選択 し た フ ォ
ン ト の capheight です。 こ れは、 matchbox オプシ ョ ンの boxheight サブオプシ ョ ンで
変え る こ と も で き ます。
> 画像 と テ ンプ レー ト (fit/info_image( ) ・ イ メ ージブ ロ ッ ク ・ 表セル) : matchbox オプ
シ ョ ンの clipping サブオプシ ョ ン を用いて、 オブジ ェ ク ト の一部分を オブジ ェ ク ト 枠
と し て定義す る こ と がで き ま す。 TIFF ・ JPEG 画像に ク リ ッ ピ ン グパ ス があ る 場合に
は、 matchbox オプシ ョ ンの innerbox サブオプシ ョ ン を設定す る と 、 それを囲む、 辺
が座標軸に平行な最小の矩形がオブジ ェ ク ト 枠 と し て用い ら れます。
> 取 り 込み PDF ページ (fit/info_pdi_page( )・PDF ブ ロ ッ ク ・表セル):matchbox オプシ ョ
ンの clipping サブオプシ ョ ン を用い る と 、 オブジ ェ ク ト の一部分を オブジ ェ ク ト 枠 と
し て用い る こ と がで き ます。
> パ ス オブジ ェ ク ト (draw/info_path( ) ・ 表セル) : パ ス を囲む、 辺が座標軸に平行な最
小の矩形がオブジ ェ ク ト 枠 と し て用い ら れます。 オブジ ェ ク ト 枠は、 boxsize ・ position
オプシ ョ ンの値がゼ ロ でない と き にのみ算出 さ れます。
> 表 イ ン ス タ ン ス (fit_table( )) : 表 イ ン ス タ ン ス を囲む、 辺が座標軸に平行な最小の矩形
がオブジ ェ ク ト 枠 と し て用い ら れます。
6.1 オブ ジ ェ ク ト のはめ込み
111
参照点 参照点は、 オブジ ェ ク ト 枠を配置す る ためのア ン カー と し て用い ら れます。 こ れ
は以下の よ う に定義 さ れます :
> fit_*( ) ・ draw_path( ) の場合 : 関数の引数 x ・ y。
> info_*( ) の場合 : 点 (0, 0)。 info_path( ) では こ のほかに、 refpoint オプシ ョ ン を用いて参
照点を指定す る こ と も で き ます。
> add_table_cell( ) ・ fit_table( ) ・ fill_*block( ) の場合 : 表セル ・ 表 イ ン ス タ ン ス ・ PDFlib ブ
ロ ッ ク の左下隅。 fill_*block( ) では こ のほかに、 refpoint オプシ ョ ン を用いて参照点を
指定す る こ と も で き ます。
はめ込み枠 と 参照線分 オブジ ェ ク ト 枠がその中に配置 さ れ る 矩形を、 はめ込み枠 と 呼
びます。 こ れは参照点 (x, y) を その左下隅 と し 、 その寸法は boxsize オプシ ョ ンの 2 個の値
で指定 さ れます :
lower left corner = (x, y)
upper right corner = x + boxsize[0], y + boxsize[1]
upper right corner = x + boxsize[0], y - boxsize[1]
(topdown=falseのとき)
(topdown=trueのとき)
上述の定義に加え て、 はめ込み枠は以下の よ う に変更する こ と も で き ます :
> テ キ ス ト 行 : はめ込み枠は margin オプシ ョ ン で縮め る こ と も で き ます。
> 表セル : はめ込み枠は、 セル内枠、 すなわち、 margin* オプシ ョ ン群に よ っ て変更を受
けたセル枠に よ っ て定義 さ れます。
> 表 イ ン ス タ ン ス : はめ込み枠は引数 llx/lly/ury/ury に よ っ て定義 さ れます。
> PDFlibブ ロ ッ ク :はめ込み枠はデフ ォ ル ト ではブ ロ ッ ク のRectプ ロ パテ ィ に よ っ て定義
さ れますが、 refpoint ・ boxsize オプシ ョ ン (一方のみで も 両方で も ) で変更す る こ と も
で き ます。
上記の う ち後半 3 つの場合には、 はめ込み枠はつねに得 ら れます。 それ以外の場合には、
はめ込み枠は、boxsizeオプシ ョ ンにゼ ロ でない2個の値を指定 し た と き にのみ得 ら れます。
boxsize[0]=0 の と き 、枠は 1 本の縦線へ縮退 し ます。 はめ込みアルゴ リ ズ ムはオブジ ェ
ク ト 枠を、 こ の線分に対 し て相対的に配置 し ま す。 同様に、 boxsize[1]=0 の と き 、 枠は、
結果 と し てで き る 横線に対 し て相対的に配置 さ れます。 こ の縦線ま たは横線を、 参照線分
と 呼びます。
オ ブ ジ ェ ク ト 枠 を配置 オブジ ェ ク ト 枠は、 さ ま ざ ま な方式で配置す る こ と がで き ます :
> はめ込み枠が得 ら れない と き 、 オブジ ェ ク ト は参照点に対 し て相対的に配置 さ れ ます
(表セル ・ 表 イ ン ス タ ン ス ・ PDFlib ブ ロ ッ ク の場合を除 く ) : オブジ ェ ク ト 枠の左下隅
が参照点の位置に置かれます。 position オプシ ョ ン を使 う と 、 オブジ ェ ク ト 枠内のそれ
以外の点を選ぶ こ と も で き ます。 た と えば、 position=center にす る と 、 オブジ ェ ク ト
枠の中心点が参照点の位置に置かれます。
scale オプシ ョ ンは、 画像 ・ テ ンプ レー ト ・ パ ス オブジ ェ ク ト ・ 取 り 込み PDF ページに
対 し て効力を持ち ます。 dpi オプシ ョ ンは、 画像に対 し て効力を持ち ます。 fitmethod
オプシ ョ ンは こ の場合無視 さ れます。
パ ス オブジ ェ ク ト : position={0 0} にす る と 、 外接枠は算出 さ れず、 パ ス オブジ ェ ク ト
の原点が参照点の位置に置かれます。
> 参照線分に対 し て相対的に (表セル ・ 表 イ ン ス タ ン ス ・PDFlib ブ ロ ッ ク の場合を除 く ):
こ れは、 上述の よ う にオブジ ェ ク ト を参照点に対 し て相対的に配置す る 場合 と 同様に
動作 し ます。 こ れに加え て、 position オプシ ョ ン も 、 参照点 と し て作用す る 線分上の点
を定義 し ます。
112
第 6 章 : オブ ジ ェ ク ト のはめ込み と 範囲枠 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
> はめ込み枠に対 し て相対的に : fitmethod オプシ ョ ンは、 オブジ ェ ク ト 枠をはめ込み枠
内 に 強 制 的 に 収 め る か ど う か、 お よ び ど の よ う に 収 め る か を 指 定 し ま す。
fitmethod=nofit に す る と 、 は め 込み枠へ収 め る た め の 動作 は 何 も 行 わ れ ま せ ん。
fitmethod のそれ以外の値は、 表 6.2 に従っ て具体的なはめ込みアルゴ リ ズ ム を定義 し
ます。
こ の場合は、 scale ・ dpi オプシ ョ ンは無視 さ れ、 margin ・ shrinklimit ・ showborder オプ
シ ョ ンは効力を持ち ます。
オブジ ェ ク ト 枠の左下隅が、 はめ込み枠の左下隅の位置に置かれ ま す。 position オプ
シ ョ ン を用い る と 、 オブジ ェ ク ト 枠内のそれ以外の点 と 、 同時にそれに対応す る はめ
込み枠内の点を選ぶ こ と がで き ます。 た と えば、 position=center は、 オブジ ェ ク ト 枠
の中心点をはめ込み枠の中心点の位置に置 き ます。
表 6.1 さ ま ざ ま な関数のはめ込みオプ シ ョ ン一覧
オプ シ ョ ン
説明
align
(float 2 個の リ ス ト 。 パスオブ ジ ェ ク ト のみ) パスオブ ジ ェ ク ト の回転を定義する方向ベ ク ト ルの
座標をユーザー座標で指定 し ます。 パスオブ ジ ェ ク ト の座標系の x 方向が、 指定 し たベ ク ト ル と
平行にな り ます。 座標は両方 と も 0 であ っ てはいけません。 こ こ で算出 さ れた回転が、 orientate
オプ シ ョ ン で定義 さ れる回転に加え られます。 デ フ ォ ル ト : {1 0}、 すなわち追加の回転な し
alignchar
(Unichar またはキーワー ド 。 テキス ト 行のみ) 指定 し たキ ャ ラ ク タ がテキス ト 内に見つかっ た と
きは、 その左下隅が参照点の位置に置かれます。 orientate=north または south の横書き テキス ト
については、 position オプ シ ョ ン で与え る 1 番目の値が位置を定義 し ます。 orientate=west ま た
は east の縦書き テキス ト については、 position オプ シ ョ ン で与え る 2 番目の値が位置を定義 し ま
す。
こ のオプ シ ョ ンが存在する と き、 組版 さ れた テキス ト ははめ込み枠からはみ出す可能性があ り ま
す。 このオプ シ ョ ンは、 指定 し た整列キ ャ ラ ク タ がテキス ト 内に存在 し ない と きは無視 さ れます。
指定 し たキ ャ ラ ク タ が フ ォ ン ト ま たはエ ン コ ーデ ィ ング内に見つか ら ない と きは、
glyphcheck=error であれば例外が発生 し ます。 glyphcheck がそれ以外の値であれば、 alignchar
オプ シ ョ ンは、 キ ャ ラ ク タ が得られない と き には警告を出 さ ずに無視 さ れます。
値 0 と キーワー ド none は整列キ ャ ラ ク タ を な し に し ます。 指定 し た fitmethod が適用 さ れます
が、 ただ し alignchar の強制位置合わせのために、 テキス ト ははめ込み枠内には配置で き ません。
デ フ ォル ト : none
attachmentpoint
(文字列。 パスオブ ジ ェ ク ト のみ) 取付点の名前 : fitmethod=nofit にする と 、 パスオブ ジ ェ ク ト
は、 指定 し た取付点が参照店の位置にな る よ う 配置 さ れます。 デ フ ォ ル ト : パスオブ ジ ェ ク ト の
原点
blind
(論理値) true の場合、 出力は生成 さ れませんが、 すべての計算は実行 さ れ、 その組版結果を適切
な関数 info_*( ) でチ ェ ッ ク で き ます。 デ フ ォ ル ト : false
boxsize
(float の リ ス ト 。 表では不可) オブ ジ ェ ク ト (rotate オプ シ ョ ンに従っ て回転 さ れている場合 も あ
る) がそれに対 し て相対的に配置 さ れるはめ込み枠の幅 と 高 さ 。 はめ込み枠の左下隅が、 参照点
(x, y) の位置に置かれます。 オブ ジ ェ ク ト の配置は、 position ・ fitmethod オプ シ ョ ンによ っ て
制御 さ れます。 幅 =0 にする と 高 さ のみが考慮 さ れ、 高さ =0 にする と 幅のみが考慮 さ れます。 こ
れ らの場合には fitmethod オプ シ ョ ンは無視 さ れ、 オブ ジ ェ ク ト は position オプ シ ョ ン に従っ
て、 (x, y) か ら (x, y+ 高さ ) (あ るいは上から 下への座標系では (x, y- 高さ )) の縦線に対 し
て、 ま たは (x, y) から (x+ 幅 , y) の横線に対 し て相対的に配置 さ れます。
ブ ロ ッ ク の場合のデ フ ォル ト : ブ ロ ッ クの Rect プ ロパテ ィ の幅 と 高 さ
それ以外のすべてのはめ込み関数でのデ フ ォル ト : {0 0}
6.1 オブ ジ ェ ク ト のはめ込み
113
表 6.1 さ ま ざ ま な関数のはめ込みオプ シ ョ ン一覧
オプ シ ョ ン
説明
dpi
(float の リ ス ト 。 画像のみ) 求める横方向 と 縦方向の画像解像度を イ ン チあた り ピ ク セル数で指定
し た 1 個か 2 個の値。 こ のオプ シ ョ ンは、 画像内のピ ク セル数を変え る (ダウ ンサン プ リ ング)
わけではあ り ません。 値を 1 個だけ指定する と 、 それは両方の方向に対 し て用い られます。 値 0
にする と 、 画像の内部解像度がも し 得ら れればそれが用い ら れ、 そ う でないな ら 72 dpi と な り ま
す。 キーワー ド internal はゼロ と 同等です。 こ のオプ シ ョ ンに よ っ て生 じ る拡縮は、 カ レ ン ト
ユーザー座標系に対 し て相対的にな り ます。 すなわち、 座標系が拡縮 さ れている と きは、 最終的
な物理解像度は与えた値 と は異な る ものにな り ます。 scale オプ シ ョ ンが、 こ の dpi 値に加え て適
用 さ れます。
こ のオプ シ ョ ンは、 fitmethod オプ シ ョ ンにキーワー ド auto ・ meet ・ slice ・ entire のいずれかを
つけて与えている と き には無視 さ れます。 デ フ ォ ル ト : internal
fitmethod
(キーワー ド ) 指定 し たはめ込み枠内にオブ ジ ェ ク ト を収める ために用いる方式。 使え るキーワー
ド は表 6.2 参照。 nofit 以外のキーワー ド は、 はめ込み枠を指定 し ていない と き には無視 さ れま
す。
デ フ ォ ル ト : テキス ト フ ローの場合は clip、 表 ・ パスオブ ジ ェ ク ト の場合は meet、 それ以外の場
合は nofit
margin
(float の リ ス ト 。 テキス ト 行のみ) はめ込み枠の横 と 縦の追加の縮小を記述 し た 1 個か 2 個の float
値。 デ フ ォル ト : 0
matchbox
(オプ シ ョ ン リ ス ト 。 パスオブ ジ ェ ク ト では不可) 表 6.3 に従 っ た、 範囲枠を生成する ためのオプ
シ ョ ンリスト
minfontsize
(float またはパーセ ン ト 値。 テキス ト フ ローのみ) fitmethod=auto で shrinklimit を超えた と き に
テキス ト をはめ込み枠に収める ために縮小する際の最小許容文字サイ ズ。 ユーザー座標で、 また
ははめ込み枠の高 さ に対するパーセ ン ト 値で指定 し ます。 こ の下限に達 し た と きは、 テキス ト は、
指定 し た minfontsize を文字サイ ズ と し て生成 さ れます。 デ フ ォ ル ト : 0.1%
orientate
(キーワー ド ま たは float。 表では不可) オブ ジ ェ ク ト に対 し て求める、 カ レ ン ト 座標系に対する相
対的な向き を指定 し ます。 デ フ ォ ル ト : north。
パスオブ ジ ェ ク ト の場合には、 任意の回転角 (度単位で) を指定する こ と も で き ますが、 それ以
外の種類のオブ ジ ェ ク ト の場合にはで き ません。 パスオブ ジ ェ ク ト の境界枠は、 そのパスオブ
ジ ェ ク ト を回転 さ せた後に算出 さ れます。 すべての関数で、 以下のキーワー ド が使え ます (それ
ぞれ同等の角度を括弧内に示 し ます) :
114
north
直立 (0)
east
右倒 し (270)
south
倒立 (180)
west
左倒 し (90)
第 6 章 : オブ ジ ェ ク ト のはめ込み と 範囲枠 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 6.1 さ ま ざ ま な関数のはめ込みオプ シ ョ ン一覧
オプ シ ョ ン
説明
position
(float かキーワー ド の リ ス ト ) 参照点 ・ 参照線分 ・ はめ込み枠のいずれかに対するオブ ジ ェ ク ト 枠
の相対的な位置を指定 し た 1 個か 2 個の値。 これ らの値は、 オブ ジ ェ ク ト 枠内の位置を指定 し ま
す。 横位置を枠の幅に対するパーセ ン ト 値 と し て (1 番目の値)、 縦位置を枠の高 さ に対するパー
セ ン ト 値 と し て (2 番目の値) 定義 し ます。 こ の指定 し た位置が、 参照点か、 参照線分上の点か、
はめ込み枠内の点の位置に置かれます。 値はパーセ ン ト 値を表 し ていますが、 パーセ ン ト 記号な
し で指定する必要があ り ます。 負の値も許 さ れます。 両方の値が等 し い と きは、 値を 1 個だけ与
えれば充分です。 デ フ ォル ト : 通常は {0 0}、 ただ し 表の場合は {0 100}
例:
{0 0}
オブ ジ ェ ク ト 枠の左下隅が、 参照点か、 参照線分の始点か、 はめ込み枠の左下隅の位置
に置かれます。
{100 100} オブ ジ ェ ク ト 枠の右上隅が、 参照点か、 参照線分の終点か、 はめ込み枠の右上隅の位置
に置かれます。
キーワー ド left ・ center ・ right (x 方向で) ま たは bottom ・ center ・ top (y 方向で) を、 値 0 ・
50 ・ 100 と 同等な もの と し て用いる こ と がで き ます。 キーワー ド を 1 個だけ指定する と 、 も う 1 つ
の方向でそれに対応するキーワー ド が追加 さ れます。 例 :
{left center}
または {0 50}
左揃え
{center}
または {50 50}
縦横中央揃え
{right center}
または {100 50}
右揃え
テキス ト 行のみ : キーワー ド auto を、 リ ス ト の 1 番目の値 と し て用いる こ と も で き ます。 こ れ
は、 テキス ト の筆記方向が右書きの場合 (ア ラ ビ ア文字 ・ ヘブ ラ イ文字等) には right を意味 し 、
そ う でない場合 ( ラ テ ン文字等) には left を意味 し ます。
refpoint
(float の リ ス ト 。 fill_*block( ) ・ info_path( ) のみ) ブ ロ ッ ク内容またはパス をはめ込む際の参照点を
ユーザー座標で指定 し ます。
fill_*block( ) の場合のデ フ ォル ト : ブ ロ ッ ク の Rect プ ロパテ ィ によ っ て定義 さ れる矩形の左下隅
info_path( ) の場合のデ フ ォ ル ト : {0 0}
rotate
(float。 表 ・ 表セル ・ パスオブ ジ ェ ク ト では不可) 参照点を中心 と し 、 指定 し た値を、 回転角を度
単位で表 し た も の と し て、 座標系を回転 し ます。 こ れに よ っ て、 はめ込み枠 と オブ ジ ェ ク ト が回
転 さ れます。 こ の回転は、 オブ ジ ェ ク ト が配置 さ れた時点で リ セ ッ ト さ れます。 デ フ ォ ル ト : 0
scale
(float の リ ス ト 。 画像 ・ テ ン プ レー ト ・ 取 り 込み PDF ページ ・ パスオブ ジ ェ ク ト のみ) オブ ジ ェ
ク ト を、 参照点を中心 と し て、 横方向 と 縦方向で指定 し た倍率 (パーセ ン ト 値ではな く ) で拡縮
し ます。 両方の倍率が等 し い と きは、 値を 1 個だけ指定すれば充分です。 こ のオプ シ ョ ンは、
fitmethod オプ シ ョ ンにキーワー ド auto ・ meet ・ slice ・ entire のいずれかをつけて与えている と
き には無視 さ れます。 デ フ ォ ル ト : {1 1}
stamp
(キーワー ド 。 テキス ト 行のみ。 boxsize が指定 さ れていない と きは無視 さ れます) このオプ シ ョ
ン を使 う と 、 boxsize オプ シ ョ ン で指定する枠の対角線上に最大限の大き さ のス タ ン プ を生成する
こ と がで き ます。 よ り 具体的には、 こ のテキス ト ははめ込み枠内に対角線上に配置 さ れます。 テ
キス ト 枠の大き さ は、 それがはめ込み枠を可能な限 り 覆いつつ も そのテキス ト 枠の縦横比を保持
する よ う に選ばれます (すなわち、 ス タ ン プ を構成する テキス ト は可能な限 り 大き く な り ます)。
オプ シ ョ ン fontsize ・ fitmethod ・ position は無視 さ れます。 オプ シ ョ ン orientate=west と
=east は何の意味 も持ち ません (north ・ south のみ)。 使え るキーワー ド (デ フ ォ ル ト : none) :
ll2ur
ス タ ン プは、 左下隅か ら右上隅への対角線に沿っ て置かれます。
ul2lr
ス タ ン プは、 左上隅か ら右下隅への対角線に沿っ て置かれます。
none
ス タ ン プは作成 さ れません。
6.1 オブ ジ ェ ク ト のはめ込み
115
表 6.1 さ ま ざ ま な関数のはめ込みオプ シ ョ ン一覧
オプ シ ョ ン
説明
showborder
(論理値) true にする と 、 はめ込み枠の境界がカ レ ン ト グ ラ フ ィ ッ ク 状態を用いて描線 さ れます。
ス タ ン プ を生成 し ている と きは、 ス タ ン プの境界枠も 描線 さ れます。 これは開発やデバ ッ グの際
に有用で し ょ う 。 デ フ ォル ト : false
shrinklimit
(float またはパーセ ン ト 値。 テキス ト 行のみ) fitmethod=auto で テキス ト を収める ために適用 さ れ
る長体比率の下限。 デ フ ォ ル ト : 0.75
116
第 6 章 : オブ ジ ェ ク ト のはめ込み と 範囲枠 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 6.2 さ ま ざ ま な関数の fitmethod オプ シ ョ ンのキーワー ド 一覧。 テキス ト 行に対する各キーワー ド の典型的効果
をあわせて図示。 fontsize オプ シ ョ ンにはすべての図で同 じ 値を用いています。
キーワー ド
説明
auto
(テキス ト 行のみ。 それ以外の種類のオブ ジ ェ ク ト : meet と 同 じ 動
作) この方式は、 テキス ト 枠をはめ込み枠内に自動的に収めよ う と
試みます。
具体的には : テキス ト がはめ込み枠内に収ま っ ている と きは nofit
と 同 じ です。 そ う でない と きは、 テキス ト を横に縮めて (つぶ し て)
はめ込み枠に収ま る よ う 縮小倍率が算出 さ れます。 算出 さ れた倍率
が shrinklimit オプ シ ョ ン よ り も小 さ い と きは、 meet 方式が適用 さ
れ、 すなわち、 テキス ト が収ま る ま で、 または minfontsize の値に
達する ま で文字サイ ズが縮小 さ れます。
Kraxi Systems
Kraxi Systems
Kraxi Systems
clip
オブ ジ ェ ク ト を置き、 はめ込み枠の辺で図形的に切 り 落 と し ます。
fit_table( ) : 算出 さ れた表枠は、 はめ込み枠の下辺で論理的に切 り 落
と さ れ、 次のはめ込み枠へ続 く こ と がで き ます。 論理的切 り 落 と し
は、 fit_textflow( ) と 同様であ り 、 fit_image( ) 等での図形的切 り 落 と し
と は異な り ます。 表枠は、 はめ込み枠内で position オプ シ ョ ンに
従 っ て配置 さ れます。
entire
オブ ジ ェ ク ト 枠を、 はめ込み枠全体を覆 う よ う に拡縮 し ます。 一般
に、 この方式ではオブ ジ ェ ク ト はつぶ さ れます。 position オプ シ ョ
ンは何ら 効力を持ち ません。
Kraxi Sys
Kraxi Systems
fit_table( ) : clip に似ています。 表枠がはめ込み枠よ り も小 さ い と きは、 表枠がはめ込み枠全体を
覆 う ま で、 表枠のセル群が一様に拡大 さ れます (セルの内容は拡大 さ れません)。
meet
オブ ジ ェ ク ト を position オプ シ ョ ンに従っ て置き、 はめ込み枠内に
ま る ご と 収ま る よ う 、 縦横比を保 っ て拡縮 し ます。 一般に、 オブ
ジ ェ ク ト 枠の少な く と も 2 つの辺が、 対応するはめ込み枠の辺 と 重
な る こ と にな り ます。
Kraxi Systems
fit_table( ) : clip に似ています。 表枠がはめ込み枠よ り も小 さ い と きは、 表の横辺か縦辺がはめ込
み枠に重な る ま で、 表枠のセル群が一様に拡大 さ れます (セルの内容は拡大 さ れません)。
nofit
オブ ジ ェ ク ト を置 く だけです。 scale ・ dpi が画像に適用 さ れます。
fit_table( ) : 表が、 無限の高 さ を持つ仮想的なはめ込み枠に対 し て算
Kraxi Systems
出 さ れます。 表枠ははめ込み枠内に、 position オプ シ ョ ンに従っ て
配置 さ れます。 列 と 表行のデ フ ォル ト のサイ ズは、 指定 し たはめ込
み枠の高 さ に対 し て相対的にな り ます。 表を blind モー ド で組版するには fitmethod=nofit を推
奨 し ます。
slice
オブ ジ ェ ク ト を position オプ シ ョ ンに従っ て置き、 はめ込み枠全体
を覆 う よ う に、 かつオブ ジ ェ ク ト の少な く と も 1 つの方向でははめ
込み枠内にち ょ う ど収ま る よ う 、 縦横比を保っ て拡縮 し ます。 一般
に、 オブ ジ ェ ク ト のも う 1 つの方向でははめ込み枠か ら一部分がは
み出すので、 その分は切 り 落 と さ れます。
Kraxi S
fit_table( ) : clip に似ています。 表枠がはめ込み枠よ り も小 さ い と きは、 はめ込み枠全体が表枠に
よ っ て覆われる ま で、 表枠のセル群が、 縦横比を保っ て一様に拡大 さ れます (セルの内容は拡大
さ れません)。 表枠ははめ込み枠内に、 position オプ シ ョ ンに従 っ て配置 さ れます。 表枠の う ち、
はめ込み枠から はみ出 し た部分は、 はめ込み枠の辺で図形的に切 り 落 と さ れます。
6.1 オブ ジ ェ ク ト のはめ込み
117
6.2 範囲枠
範囲枠は、 それ専用の関数で定義す る のではな く 、 実際の要素を作成す る 関数を呼び出す
に、 matchbox オプシ ョ ンで定義 し ます。
> テ キ ス ト 行 : fit_textline( ) ・ fill_textblock( ) で textflow=false
> テ キ ス ト フ ロ ー : add/create_textflow( ) ・ fill_textblock( ) で textflow=true
> 取 り 込み PDF ページ : fit_pdi_page( ) ・ fill_pdf_block( )
> 画像 ・ テ ンプ レー ト : fit_image( ) ・ fill_image_block( )
> 表セル : add_table_cell( )
範囲枠は、 こ れ ら の関数の matchbox オプシ ョ ンで定義 さ れます。 こ のオプシ ョ ンには、
以下のサブオプシ ョ ンが使え る オプシ ョ ン リ ス ト を与え ます :
> 表 7.2 に従っ た グ ラ フ ィ ッ ク 書式オプシ ョ ン群 :
borderwidth・dasharray・dashphase・fillcolor・gstate・linecap・linejoin・shading・strokecolor
> 表 6.3 に従っ た範囲枠制御オプシ ョ ン群
範囲枠に対応す る 矩形の詳細は、 info_matchbox( ) で取得で き ます。
表 6.3 さ ま ざ ま な関数の matchbox オプ シ ョ ンのサブオプ シ ョ ン一覧
オプ シ ョ ン
説明
boxheight
(要素 2 個の リ ス ト 。 各要素は正の float かキーワー ド 。 テキス ト 行 ・ テキス ト フ ローのみ) テキス
ト 枠の縦の長 さ を定義 し ます。 ベース ラ イ ンの上 と 下の長 さ について、 値 2 個を数値かキーワー
ド で指定する こ と がで き ます :
none (長 さ ゼロ) ・ xheight ・ descender ・ capheight ・ ascender ・ fontsize ・ leading ・ textrise
テキス ト フ ローの場合、 範囲枠の先頭のテキス ト に対応する値が使われます。
デ フ ォ ル ト : {capheight none}
boxwidth
(float またはパーセ ン ト 値。 テキス ト フ ローのみ) 範囲枠の幅を、 ユーザー座標で、 または枠の高
さ に対するパーセ ン ト 値で指定 し ます。 こ のオプ シ ョ ン を与え る と 、 matchbox オプ シ ョ ン と 、 次
の部分テキス ト か matchbox end 指定 と の間に、 指定 し た幅の横アキが挿入 さ れます。 こ れは、 テ
キス ト フ ローの中に、 画像 ・ テ ン プ レー ト ・ PDF ページ を挿入する ためのアキを確保 し たい と き
に便利です。 デ フ ォ ル ト : 0
clipping
(矩形、 またはパーセ ン ト 値 4 個。 画像 ・ 取 り 込み PDF ページのみ。 innerbox オプ シ ョ ン を指定
し ている と きは無視 さ れます) 画像ま たはページの中のどの部分が見え る よ う にするかを指定す
る矩形の左下隅 と 右上隅の座標。 画像の場合、 こ の切 り 抜き矩形は、 ピ ク セル単位で、 または幅 ・
高 さ に対するパーセ ン ト 値で指定で き ます。 PDF ページの場合、 この切 り 抜き矩形は、 デ フ ォ ル
ト 単位で、 またはそのページの CropBox の幅 ・ 高 さ に対するパーセ ン ト 値で指定で き ます。 デ
フ ォル ト : {0% 0% 100% 100%}
createwrapbox
(論理値。 テキス ト フ ローのみ) true にする と 、 範囲枠を構成する 1 個ない し 複数の矩形が算出 さ
れた後に、 それらが回 り 込み枠 と し て テキス ト フ ロー内へ挿入 さ れます。 その範囲枠の入っ てい
る行の後に続 く 行群は、 その矩形を回 り 込みます。 デ フ ォル ト : false
doubleadapt true にする と 、 2 番目の線の始点 と 終点が、 1 番目の線に合わせて調整 さ れます。 そ う でなけれ
ば、 2 番目の線は、 doubleoffset の分だけ短 く 、 または長 く な り ます。 デ フ ォ ル ト : true
doubleoffset
118
(float) 0 以外にする と 、 内側の範囲枠矩形の境界のまわ り の線が二重にな り ます。 2 番目の線は、
元の線に対 し て、 指定 し た変位を持ち ます。 変位を正の値にする と 、 線は範囲枠矩形の外側に描
かれ、 負の値にする と 内側に描かれます。 デ フ ォ ル ト : 0 (すなわち一重線)
第 6 章 : オブ ジ ェ ク ト のはめ込み と 範囲枠 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 6.3 さ ま ざ ま な関数の matchbox オプ シ ョ ンのサブオプ シ ョ ン一覧
オプ シ ョ ン
説明
drawleft
(論理値) true にする と 、 borderwidth を 0 よ り 大き い値に設定 し ている な ら、 矩形のそれぞれの
drawbottom 境界が描かれます。 デ フ ォル ト : true
drawright
drawtop
end
(論理値。 テキス ト フ ローのみ) 範囲枠の終了を指定 し ます。 true にする と 、 カ レ ン ト の
matchbox 定義に対する他のすべてのオプ シ ョ ンは無視 さ れます。 テキス ト フ ロー内の範囲枠は入
れ子にで き ません。 テキス ト フ ローの範囲枠の幅は、 boxwidth オプ シ ョ ン (指定 し ていれば) と 、
matchbox オプ シ ョ ン と matchbox= end オプ シ ョ ン では さ んだ テキス ト の視覚的長 さ に よ っ て定義
さ れます。 この end オプ シ ョ ン を指定 し ていない と きは、 範囲枠は、 テキス ト フ ローの末尾キ ャ
ラ ク タ の後に終了 し ます。
exceedlimit
(float またはパーセ ン ト 値。 テキス ト フ ローのみ) 範囲枠がはめ込み枠の下辺ま たは右辺から はみ
出す こ と を許す上限を、 ユーザー座標で、 または範囲枠の高 さ に対するパーセ ン ト 値で指定 し ま
す。 指定 し た上限を超え る と きは、 fit_textflow( ) は _boxfull を返 し ます。 こ の場合、 残 り のテキ
ス ト と 範囲枠は次のはめ込み枠へ続 く こ と がで き ます。 デ フ ォ ル ト : 0、 すなわち範囲枠が枠内に
完全に収ま る必要があ り ます。
innerbox
(論理値。 表セル と TIFF ・ JPEG 画像のみ) 表セル : true にする と 、 セルに対 し て定義 し ている余
白の分だけセル枠が縮小 さ れます。 そ う でなければセル枠全体が用い られます。
TIFF ・ JPEG 画像 : true にする と 、 画像に ク リ ッ ピ ングパスがある と きは、 画像全体でな く 、 その
ク リ ッ ピ ングパスの外接枠が使われます。
デ フ ォル ト : false
margin
(float またはパーセ ン ト 値) 範囲枠の矩形に対する追加の余白を、 ユーザー座標系で (0 以上にす
る必要があ り ます)、 ま たは矩形の幅か高 さ に対するパーセ ン ト 値で (100% 未満にする必要があ り
ます) 指定 し ます。 こ のオプ シ ョ ンは、 offset* を指定 し ている辺については無視 さ れます。 デ
フ ォル ト : 0
name
(名前文字列) 範囲枠の名前。 こ の名前を付けた範囲枠がすでにある と きは、 同 じ 名前の矩形がも
う 1 個作 られます。 ですので、 1 個の範囲枠が複数の矩形から成る場合があ り え ます。 こ の名前は
info_matchbox( ) で使え ます。 さ ま ざ ま な関数で、 usematchbox オプ シ ョ ン を使っ て、 範囲枠の矩形
(群) を参照する こ と がで き ます。 た と えば create_annotation( ) で注釈を追加する こ と がで き ます。
範囲枠の名前は、 カ レ ン ト ページ を終え る ま で使え ます。 デ フ ォル ト : 名前な し
offsetleft
offsetbottom
offsetright
offsettop
(float またはパーセ ン ト 値) 算出 さ れた矩形から 、 求める枠への、 左 ・ 右 ・ 下 ・ 上辺のユーザー定
義の変位。 値は、 ユーザー座標で、 または矩形の幅 (offsetleft/offsetright の場合) か高 さ
(offsetbottom/offsettop の場合) に対するパーセ ン ト 値で指定 し ます。 負の値も 可能で、 範囲枠
を拡げる ために用いる こ と がで き ます。 offsetleft/offsetbottom のデ フ ォ ル ト : margin。
offsetright/offsettop のデ フ ォル ト : -margin
openrect
(論理値。 テキス ト フ ロー ・ 表セルのみ) テキス ト フ ロー : true にする と 、 範囲枠矩形が次行へ分
割 さ れる と き、 前の矩形の右辺 と 、 後の矩形の左辺を描き ません。 表セル : true にする と 、 表行
が次の表イ ン ス タ ン スへ分割 さ れる と き、 前の部分の下辺 と 、 後の部分の上辺を描き ません。 デ
フ ォ ル ト : false
round
(float)範囲枠矩形の隣りあう線の頂点が、それらの接合点で、指定した半径を持ち、それらの
線分を接線とする円弧によって丸められます。負の半径を指定すると、角が円形にへこむように
弧が切り取られ、その接線は枠の線分に対して垂直になります。デフォルト:0(丸めなし)
6.2 範囲枠
119
VB RB Function info_matchbox(boxname As String, num As Long, keyword As String) As Double
C# double info_matchbox(String boxname, int num, String keyword)
カ レ ン ト ページ上の範囲枠に関す る 情報を取得 し ます。
boxname (名前文字列) 範囲枠の名前。 名前は、 範囲枠を定義 し た際に matchbox オプ
シ ョ ンの name サブオプシ ョ ンで定義 し て あ る 必要があ り ます。
あ る いは、 名前 「*」 (ア ス タ リ ス ク キ ャ ラ ク タ 1 個) を使 う と 、 こ のページ上のすべ
ての範囲枠を評価す る こ と がで き ます。
num 求め る 範囲枠矩形の番号 (1 か ら 数え る )。 num=0 の特殊な場合については表 6.4
を参照。
keyword
求め る 情報を表 6.4 に従っ て指定 し た キーワー ド 。
戻り値 keyword で要求 し た何 ら かの範囲枠特性の値。 指定 し た名前の範囲枠が、 ま たは指定 し た
番号の範囲枠矩形がカ レ ン ト ページ上にない と き は、あ ら ゆ る キーワー ド が値 0 を返 し ま
す。
詳細 テ キ ス ト フ ロ ー内の名前付 き 範囲枠は、fit_textflow( ) を呼び出 し た後にのみ取得す る こ と
がで き ます。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ ・ パス ・ フ ォ ン ト
表 6.4 info_matchbox( ) のキーワー ド 一覧
キーワー ド
説明
count
(num 引数は無視 さ れます)
boxname が範囲枠の名前を内容 と し て持つ と き : こ のページ上のこ の範囲枠の矩形の数
boxname=* の と き : このページ上に少な く と も 1 個の矩形を持つ範囲枠の数
exists
boxname が範囲枠の名前を内容 と し て持つ と き : 矩形が存在 し ている な ら 1、 そ う でないな ら 0。
boxname=* の場合は、 こ のキーワー ド を使っ て、 こ のページ上のすべての範囲枠を評価する こ と が
で き ます :
num=0 の と き : 任意の範囲枠が存在する な ら 1、 ないな ら 0
それ以外の と き : 番号 num を持つ範囲枠が存在する な ら 1
1
height
矩形の高 さ を、 ユーザー座標で表 し た も の
name
番号 num を持つ範囲枠の名前の文字列番号。 対応する文字列は、 get_parameter( ) と string パラ メ
タ で取得で き ます (表 2.3 参照)。
rectangle
width
1
num 番目の矩形をユーザー座標で表 し た も のを内容 と し て持つパスのハン ド ル、 または -1
矩形の幅を、 ユーザー座標で表 し た もの
x1 ・ y1 ・ …
x4 ・ y41
矩形の i 番目の隅 (i=1, 2, 3, 4) の位置を、 ユーザー座標で表 し た もの。 それぞれのはめ込み要素
(画像 ・ テキス ト 等) の座標系で、 x1, y1 は左上、 x2, y2 は左下、 x3, y3 は右下、 x4, y4 は右上
隅に対応 し ます。
1. このキーワー ド は、 boxname=* の と きは無視 さ れます
120
第 6 章 : オブ ジ ェ ク ト のはめ込み と 範囲枠 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
7 グ ラ フ ィ ッ ク関数
ク ッ ク ブ ッ ク 完全な コ ー ド サン プルが ク ッ ク ブ ッ クの graphics/starter_graphics ト ピ ッ ク にあ り ます。
7.1 グ ラ フ ィ ッ ク 書式パ ラ メ タ ・ オ プ シ ョ ン
表 7.1 に、 こ の章に関連す る パ ラ メ タ キー名を挙げます (21 ページ 「2.2 パ ラ メ タ ・ オプ
シ ョ ン処理」 参照)。
表 7.1 get/set_parameter( ) のパス関連キー一覧
キー
説明
fillrule
カ レ ン ト 塗 り 規則を winding か evenodd に設定 し ます (表 7.2 参照)。 ス コ ープ : ページ ・ パター
ン ・ テンプレート ・ グリフ
表 7.2 に、 create_gstate( ) ・ draw_path( ) ・ shading_pattern( ) のグ ラ フ ィ ッ ク 書式オプシ ョ
ン と 、 fit_table( ) の fill ・ stroke オプシ ョ ン と 、 さ ま ざ ま な関数の matchbox オプシ ョ ン を
挙げます。
表 7.2 グ ラ フ ィ ッ ク 書式オプ シ ョ ン一覧
オプ シ ョ ン
説明 ・ と り う る値
borderwidth
(float。 範囲枠のみ) 矩形の境界の線幅。 borderwidth を 0 よ り 大き い値に設定する と 、 すべての
矩形の境界が描線 さ れます。 上 ・ 下 ・ 左 ・ 右の境界が描線 さ れないよ う にするには、 それぞれ
drawtop ・ drawbottom ・ drawleft ・ drawright オプ シ ョ ン を false に設定 し ます。 デ フ ォ ル ト : 0
dasharray
(float の リ ス ト ) 描線 さ れるパスの短線 と 間隙の長 さ (ユーザー座標系で測っ た もの) を交互に指
定 し た 2 ~ 8 個の値の リ ス ト 。 値はすべてゼロ よ り 大き く する必要があ り ます。 こ れら は、 パス
全体が描線 さ れる ま で循環的に再利用 さ れます。
dashphase
(float) 破線パ タ ーン内で短線を開始する ま での距離。 デ フ ォル ト : 0
fillcolor
(Color) 領域の塗 り 色。 デ フ ォル ト : 通常は {gray 0} (PDF/A モー ド の場合 : {lab 0 0 0})、 ただ
し 表 ・ 範囲枠の場合は none
fillrule
(キーワー ド ) 領域の、 塗 り と 切 り 抜きの際の内側を決定する塗 り 規則 (デ フ ォ ル ト : winding) :
winding
非ゼロ巻数規則を用います。 単純な形状の
場合、 塗 り の結果は直感的見込み と 一致 し
ます。 複数のパスから 成る形状の場合には、
パスの方向が意味を持ち ます。
evenodd
偶奇規則を用います。 こ れは、 単純な形状
に対 し ては winding と 同 じ 結果を得ますが、
よ り 複雑な形状、 と り わけ自己交差するパ
スに対 し ては異な る結果を生 じ ます。
flatness
(float > 0) 円弧または曲線 と 、 線分群から 成る近似表現 と の最大間隔を示 し た (デバイ ス ピ ク セ
ル単位で) 正の数。 デ フ ォル ト : 1
gstate
(グ ラ フ ィ ッ ク状態ハン ド ル) create_gstate( ) で取得 し たグ ラ フ ィ ッ ク 状態のハン ド ル。 デ フ ォル
ト : グ ラ フ ィ ッ ク状態な し (すなわち、 カ レ ン ト 設定が用い られます)
7.1 グ ラ フ ィ ッ ク書式パラ メ タ ・ オプ シ ョ ン
121
表 7.2 グ ラ フ ィ ッ ク書式オプ シ ョ ン一覧
オプ シ ョ ン
説明 ・ と り う る値
linecap
(整数ま たはキーワー ド ) パスの終端の形状 (デ フ ォ ル ト : butt) :
butt
(同等な値 : 0) バ ッ ト 線端 : パスの終端で描線を四角 く 切 り ま
す。
round
(同等な値 : 1) 丸型線端 : 終端を中心 と し 、 線幅に等 し い直径
を持つ半円を描き、 塗 り ます。
projecting (同等な値 : 2) 突出線端 : 線の終端から、 線幅の半分だけ描線
を延長 し 、 四角 く 切 り ます。
linejoin
(整数ま たはキーワー ド ) パスの角の形状 (デ フ ォ ル ト : miter) :
miter
(同等な値 : 0) マ イ タ ー結合 : 2 本の線分の描線の外辺を、 互いに出会 う ま
で延ば し ます。 そ う する と マ イ タ ー リ ミ ッ ト に よ る指定よ り も遠 く ま で延
びて し ま う と きは、 ベベル結合がかわ り に用い られます。
round
(同等な値 : 1) ラ ウ ン ド 結合 : 線分ど う し の交点を中心 と し 、 線幅に等 し
い半径の円弧を描き、 塗る こ と で、 角を丸 く し ます。
bevel
(同等な値 : 2) ベベル結合 : 2 本のパス線分をバ ッ ト 線端で描き (linecap
オプ シ ョ ンの説明を参照)、 終端ど う し の間に生 じ る三角形の切れ込みを塗
り ます。
linewidth
(float > 0) 線幅。 デ フ ォル ト : 1
miterlimit
(float ≧ 1) マ イ タ ー結合に よ っ て形成 さ れる く さ び型を制御 し ます
(デ フ ォル ト : 10。 こ れは角度に し ておよ そ 11.5 度にあた り ます)。
線結合ス タ イル linejoin を 0 (マ イ タ ー結合) に設定する と 、 2 本の
線分が出会 う 角度が小 さ い と きは、 鋭い く さ び型が形作られます。 マ
イ タ ー長 と 線幅 と の比がマ イ タ ー リ ミ ッ ト を超え る と き、 こ の く さ び
型を平坦な終端に置き換え ます (すなわち マ イ タ ー結合をベベル結合
に変更 し ます)。
shading
(表 7.3 に従っ たオプ シ ョ ン リ ス ト 。 範囲枠 ・ 表のみ) 範囲枠の矩形 (群) または表領域のシ ェ ー
デ ィ ン グ を指定 し ます。 fillcolor オプ シ ョ ンの値が (指定 し ていれば)、 またはカ レ ン ト 塗 り 色
が開始色 と し て用い られます。
strokecolor
(色) パスの描線色。 デ フ ォル ト : 通常は {gray 0} (PDF/A モー ド の場合 : {lab 0 0 0})、 ただ し
表 ・ 範囲枠の場合は none
122
第 7 章 : グ ラ フ ィ ッ ク関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 7.3 グ ラ フ ィ ッ ク 書式オプ シ ョ ン shading のサブオプ シ ョ ン一覧
オプ シ ョ ン
説明
antialias
(論理値) シ ェ ーデ ィ ングの際にア ン チエ イ リ ア シ ング を有効にするかど う かを指定 し ます。 デ
フ ォ ル ト : false
domain
(float 2 個の リ ス ト ) 媒介変数 t の限界値を指定 し た 2 個の数値。 こ の変数は、 色勾配が軸の始点
と 終点の間を変動するにつれて、 こ の 2 値の間を線形的に変動する と 考え られます。 デ フ ォル ト :
{0 1}
end
(float 2 個かパーセ ン ト 値 2 個の リ ス ト ) シ ェ ーデ ィ ング軸に対する終点の (type=axial)、 または
半径を算出する ための円上の点の (type=radial) x ・ y 座標を、 矩形の幅 ・ 高 さ に対するパーセ ン
ト 値で、 またはユーザー座標で指定 し ます。 デ フ ォル ト : {100% 100%}
endcolor
(色。 必須) 終点の色。
N
(float) 色遷移関数に対する累乗指数。 > 0 にする必要があ り ます。 デ フ ォ ル ト : 1
start
(float 2 個かパーセ ン ト 値 2 個の リ ス ト ) シ ェ ーデ ィ ング軸に対する始点の (type=axial)、 または
シ ェ ーデ ィ ング円の中心の (type=radial) x ・ y 座標を、 矩形の幅 ・ 高 さ に対するパーセ ン ト 値
で、 ま たはユーザー座標で指定 し ます。 デ フ ォ ル ト : {0% 0%}
type
(キーワー ド ) シ ェ ーデ ィ ングの種類 : axial (線形シ ェ ーデ ィ ング) か radial (放射シ ェ ーデ ィ
ング)。 デ フ ォル ト : axial
7.1 グ ラ フ ィ ッ ク書式パラ メ タ ・ オプ シ ョ ン
123
7.2 グ ラ フ ィ ッ ク 状態
グ ラ フ ィ ッ ク 状態パ ラ メ タ はすべて、 ページの始ま り ご と にデフ ォ ル ト 値に復帰 し ます。
デフ ォ ル ト 値は、 それぞれの関数の説明に記 し ます。 テ キ ス ト 状態に関連す る 関数は、 53
ページ 「4 章 フ ォ ン ト ・ テ キ ス ト 関数」 に示 し てい ます。
注 パスス コ ープ では、 どのグ ラ フ ィ ッ ク状態関数も 使っ てはいけません。
VB RB Sub setdash(b As Double, w As Double)
C# void PDF_setdash(double b, double w)
カ レ ン ト 破線パ タ ーン を設定 し ます。
b・w
交互に描かせたい黒 ・ 白部分の数。 b と w は、 非負の数値にす る 必要があ り ます。
詳細 実線をひ く には b = w = 0 に設定 し ます。 破線パ タ ーン を示す dasharray ・ dashphase パ ラ
メ タ は、 ページの始ま り ご と に実線に設定 さ れます。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ
VB RB Sub setdashpattern(optlist As String)
C# void setdashpattern(String optlist)
破線パ タ ーン を、 オプシ ョ ン リ ス ト で定義 し て設定 し ます。
optlist 表 7.2 に従っ た グ ラ フ ィ ッ ク 書式オプシ ョ ン群 (空の リ ス ト にす る と 、 実線が生
成 さ れます) : dasharray ・ dashphase
詳細 破線パ タ ーン を示す dasharray ・ dashphase パ ラ メ タ は、 ページの始ま り ご と に実線に設
定 さ れます。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ
VB RB Sub setflat(flatness As Double)
C# void setflat(double flatness)
平坦度許容量を設定 し ます。
flatness
平坦度許容量。 表 7.2 参照。
詳細 平坦度許容量を示す flatness パ ラ メ タ は、 ページの始ま り ご と にデフ ォ ル ト 値 1 に設定 さ
れます。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ
VB RB Sub setlinejoin(linejoin As Long)
C# void setlinejoin(int linejoin)
線結合ス タ イ ルを設定 し ます。
linejoin 描線 さ れ る パ ス の角の形を指定 し ます。 表 7.2 参照。 こ の linejoin ス タ イ ルは、
数値 0 ・ 1 ・ 2 のいずれかで指定す る 必要があ り ます。
124
第 7 章 : グ ラ フ ィ ッ ク関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
詳細 線結合ス タ イ ルを示す linejoin パ ラ メ タ は、 ページの始ま り ご と にデフ ォ ル ト 値 0 に設定
さ れます。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ
VB RB Sub setlinecap(linecap As Long)
C# void setlinecap(int linecap)
線端ス タ イ ルを設定 し ます。
linecap パ ス を描線す る 際の終端の形状を制御 し ます。 表 7.2 参照。 こ の linecap 引数は、
数値 0 ・ 1 ・ 2 のいずれかで指定す る 必要があ り ます。
詳細 線端ス タ イ ルを示す linejoin パ ラ メ タ は、 ページの始ま り ご と にデフ ォ ル ト 値 0 に設定 さ
れます。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ
VB RB Sub setmiterlimit(miter As Double)
C# void setmiterlimit(double miter)
マ イ タ ー リ ミ ッ ト を設定 し ます。
miter
マ イ タ ー結合に よ っ て生 じ る く さ び型を制御する 1 以上の値。 表 7.2 参照。
詳細 マ イ タ ー リ ミ ッ ト を示す miterlimit パ ラ メ タ は、ページの始ま り ご と にデフ ォ ル ト 値 10 に
設定 さ れます。 こ れは角度に し てお よ そ 11.5 度にあ た り ます。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ
VB RB Sub setlinewidth(width As Double)
C# void setlinewidth(double width)
カ レ ン ト 線幅を設定 し ます。
width
線幅を、 ユーザー座標系の単位で指定 し ます。
詳細 線幅を示す linewidth パ ラ メ タ は、ページの始ま り ご と にデフ ォ ル ト 値 1 に設定 さ れます。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ
VB RB Sub initgraphics
C# void initgraphics( )
すべての色 ・ グ ラ フ ィ ッ ク 状態パ ラ メ タ を、 それぞれのデフ ォ ル ト 値に リ セ ッ ト し ます。
詳細 塗 り 色 ・ 描線色 ・ 線幅 ・ 線端ス タ イ ル ・ 線結合ス タ イ ル ・ マ イ タ ー リ ミ ッ ト ・ 破線パ タ ー
ン ・ 平坦度許容量の各設定 と 、 座標系が、 それぞれデフ ォ ル ト 値に リ セ ッ ト さ れます (テ
キ ス ト 状態パ ラ メ タ は リ セ ッ ト さ れません) 。 カ レ ン ト ク リ ッ ピ ン グパ ス は影響を受け ま
せん。
プ ロ グ ラ ムの流れ的に save( ) ・ restore( ) が安易に利用で き ない よ う な状況で こ の関数
は有用で し ょ う 。
7.2 グ ラ フ ィ ッ ク 状態
125
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ
VB RB Sub save( )
C# void save( )
カ レ ン ト グ ラ フ ィ ッ ク 状態を ス タ ッ ク に保存 し ます。
詳細
グ ラ フ ィ ッ ク 状態は、あ ら ゆ る 種類のグ ラ フ ィ ッ ク オブジ ェ ク ト を制御す る パ ラ メ タ 群を
持っ てい ます。 グ ラ フ ィ ッ ク 状態の保存は、 PDF に よ っ て必要 と さ れてい る わけではな
く 、 アプ リ ケーシ ョ ンが後で、 パ ラ メ タ をすべて明示的に設定 し なおす こ と な し にいずれ
かのグ ラ フ ィ ッ ク 状態 (カ ス タ ムの座標系等) へ戻 り たい と き にのみ必要です。 以下の項
目が保存 ・ 復帰の対象にな り ます。
> それぞれ対応す る 関数で設定 し てい る グ ラ フ ィ ッ ク パ ラ メ タ : ク リ ッ ピ ン グパ ス ・ 座
標系 ・ カ レ ン ト 点 ・ 平坦度許容量 ・ 線端 ス タ イ ル ・ 破線パ タ ーン ・ 線結合 ス タ イ ル ・
線幅 ・ マ イ タ ー リ ミ ッ ト 。
> 色パ ラ メ タ : 塗 り 色 ・ 描線色。
> set_gstate( ) で明示グ ラ フ ィ ッ ク 状態に よ っ て設定 し てい る グ ラ フ ィ ッ ク パ ラ メ タ 。
> テ キ ス ト 位置 と 、次のテ キ ス ト 関連パ ラ メ タ : charspacing ・ decorationabove ・ fakebold ・
font ・ fontsize ・ horizscaling ・ italicangle ・ leading ・ strokewidth ・ textrendering ・ textrise ・
underlineposition ・ underlinewidth ・ wordspacing。
save( ) と restore( ) の対は、 入れ子にす る こ と も で き ます。 PDF 規格では、 保存 ・ 復帰の
対の入れ子階層の深 さ に制限は あ り ま せん が、 さ ま ざ ま な PDF ビ ュ ー ア が生成す る
PostScript 出力の持つ制約が引 き 起 こ す印刷上の問題を避け る ために も 、 ま た、 PDFlib が
内部的に必要 と す る 保存階層を確保す る ために も 、アプ リ ケーシ ョ ンでは入れ子階層の深
さ を 26 未満に抑え てお く 必要があ り ます。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ 。 対応する restore( ) と 必ず対に し て呼び出す
必要があ り ます。 save( ) と restore( ) への呼び出 し は、 ページ ・ パ タ ーン ・ テ ンプ レー ト ・
グ リ フ記述ご と に同数にす る 必要があ り ます。
パラメタ 先述の と お り 、 テ キ ス ト 関連パ ラ メ タ の多 く は、 保存 ・ 復帰の対象 と な り ます。 次のパ ラ
メ タ は、 保存 ・ 復帰の対象にな り ません : fillrule ・ kerning ・ underline ・ overline ・ strikeout。
VB RB Sub restore( )
C# void restore( )
も っ と も 最近に ス タ ッ ク に保存 し た グ ラ フ ィ ッ ク 状態に復帰 し ます。
詳細 そのグ ラ フ ィ ッ ク 状態は、同 じ ページかパ タ ーンかテ ンプ レー ト で保存 し て あ る 必要があ
り ます。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ 。 対応する save( ) と 必ず対に し て呼び出す必要
があ り ます。 save( ) と restore( ) への呼び出 し は、 ページ ・ パ タ ーン ・ テ ンプ レー ト ・ グ リ
フ記述ご と に同数にす る 必要があ り ます。
126
第 7 章 : グ ラ フ ィ ッ ク関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
VB RB Function create_gstate(optlist As String) As Long
C# int create_gstate(String optlist)
グ ラ フ ィ ッ ク 状態オブジ ェ ク ト を、 さ ま ざ ま なオプシ ョ ンに従っ て作成 し ます。
optlist グ ラ フ ィ ッ ク 状態オプシ ョ ン群を指定 し たオプシ ョ ン リ ス ト :
> 表 7.2 に従っ た グ ラ フ ィ ッ ク 書式オプシ ョ ン群 :
flatness ・ linecap ・ linejoin ・ linewidth ・ miterlimit
> 表 7.4 に従っ た グ ラ フ ィ ッ ク 状態オプシ ョ ン群 :
alphaisshape ・ blendmode ・ opacitystroke ・ overprintfill ・ overprintmode ・ overprintstroke ・
renderingintent ・ smoothness ・ softmask ・ strokeadjust ・ textknockout
戻り値
グ ラ フ ィ ッ ク 状態ハン ド ル。 以後の set_gstate( ) への呼び出 し で、 カ レ ン ト の文書ス コ ー
プが続 く 限 り 使え ます。
詳細 オプシ ョ ン リ ス ト は、任意の数のグ ラ フ ィ ッ ク 状態パ ラ メ タ を内容 と し て持つ こ と がで き
ます。 すべてのパ ラ メ タ がすべての PDF バージ ョ ン で使え る わけではあ り ません。 表の
中で、 最小必須の PDF バージ ョ ン を示 し てい ます。
スコープ 文書 ・ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ
表 7.4 create_gstate( ) のオプ シ ョ ン一覧
キー
説明 ・ と り う る値
alphaisshape
(論理値。 PDF 1.4) アル フ ァ の供給元の扱いを、 輪郭 (true) か不透過 (false) に し ま
す。 デ フ ォル ト : false
blendmode
(キーワー ド の リ ス ト 。 PDF 1.4。 PDF/A モー ド で使 う と きは、 値 Normal にする必要があ り
ます) ブ レ ン ド モー ド の名前。 複数のブ レ ン ド モー ド を指定する こ と も で き ます。 と り う
る値 : Color ・ ColorDodge ・ ColorBurn ・ Darken ・ Difference ・ Exclusion ・ HardLight ・
Hue ・ Lighten ・ Luminosity ・ Multiply ・ None ・ Normal ・ Overlay ・ Saturation ・ Screen ・
SoftLight。 デ フ ォ ル ト : None
opacityfill
(float。 PDF 1.4。 PDF/A モー ド で使 う と きは、 値 1 にする必要があ り ます) 塗 り 操作での
不透明度を、 範囲 0 ~ 1 で指定 し ます。 値 0 は完全に透過を意味 し ます。 値 1 は完全に不
透明を意味 し ます。
opacitystroke
(float。 PDF 1.4。 PDF/A モー ド で使 う と きは、 値 1 にする必要があ り ます) 描線操作での
不透明度を、 範囲 0 ~ 1 で指定 し ます。 値 0 は完全に透過を意味 し ます。 値 1 は完全に不
透明を意味 し ます。
overprintfill
(論理値) 描線以外の操作でのオーバープ リ ン ト 。 デ フ ォ ル ト : false
overprintmode
(整数) オーバープ リ ン ト モー ド 。 0 にする と 、 それぞれの色要素は、 それ以前に配置 さ れ
たマー ク を置き換え ます。 1 にする と (Acrobat では 「オーバープ リ ン テ ィ ングのデ フ ォル
ト は非ゼロのオーバープ リ ン テ ィ ング」 と いいます)、 0 の色要素は、 そ こ の要素を変更 し
ないま まに し ます。 デ フ ォ ル ト : 0
overprintstroke
(論理値) 描線操作でのオーバープ リ ン ト 。 デ フ ォ ル ト : false
renderingintent
(キーワー ド ) 色域圧縮のために用いたい カ ラ ーレ ン ダ リ ング イ ン テ ン ト 。 と り う るキー
ワー ド : Auto ・ AbsoluteColorimetric ・ RelativeColorimetric ・ Saturation ・ Perceptual
smoothness
(float) シ ェ ーデ ィ ン グにおける線形内挿の最大誤差。 ≧ 0 かつ≦ 1 にする必要があ り ます
7.2 グ ラ フ ィ ッ ク 状態
127
表 7.4 create_gstate( ) のオプ シ ョ ン一覧
キー
説明 ・ と り う る値
softmask
(オプ シ ョ ン リ ス ト またはキーワー ド ) 透過画像処理のためのマ ス ク 画像または不透明度値
を持 っ た カ レ ン ト ソ フ ト マス ク 。 キーワー ド none はソ フ ト マス ク な し を指定 し 、 こ れは、
直前に設定 さ れたグ ラ フ ィ ッ ク 状態か ら効力を持っ ているかも し れない ソ フ ト マ ス ク を無
効にする ために必要です。 使え るオプ シ ョ ン (デ フ ォ ル ト : none) :
backdropcolor
(float 1 個か 3 個か 4 個の リ ス ト 。 type=luminosity の場合のみ意味を持ち ます)
透過グループ テ ン プ レー ト を構築する際の背景 と し て用いたい色。 float 値の数
は、 透過グループ テ ン プ レー ト を作成 し た際に用いた transparencygroup オプ
シ ョ ンの colorspace サブオプ シ ョ ンに依存 し ます (DeviceGray な ら 1 個、
DeviceRGB な ら 3 個、 DeviceCMYK な ら 4 個)。 デ フ ォ ル ト : それぞれのカ ラ ー
スペースにおける黒
template (テ ン プ レー ト ハン ド ル。 必須) begin_template_ext( ) で作成 さ れた透過グループ
テ ン プ レー ト 。
type
(キーワー ド 。 必須) 透過グループ テ ン プ レー ト か ら マス ク値を導出する ための
方式 :
alpha
透過グループのアル フ ァ 値を用い、 色を無視 し ます。
luminosity 透過グループの色を、 1 要素の輝度値へ変換 し ます。 こ の場合、 テ ン
プ レー ト は transparencygroup オプ シ ョ ン で作成 し ている必要があ り
ます。
strokeadjust
(論理値) 自動描線調整を適用するかど う か。 デ フ ォル ト : false
textknockout
(論理値。 PDF 1.4) 色版合成に関 し て、 テキス ト 内のグ リ フ群を、 ば らばら に扱 う
(false) か、 単体 と し て扱 う (true) かを指定 し ます。 デ フ ォ ル ト : true
VB RB Sub set_gstate(gstate As Long)
C# void set_gstate(int gstate)
グ ラ フ ィ ッ ク 状態オブジ ェ ク ト を呼び出 し ます。
gstate
詳細
create_gstate( ) で取得 し た グ ラ フ ィ ッ ク 状態オブジ ェ ク ト のハン ド ル。
グ ラ フ ィ ッ ク 状態オブジ ェ ク ト が持つすべてのオプシ ョ ンが設定 さ れます。 こ の関数を複
数回呼び出す と 、 グ ラ フ ィ ッ ク 状態のオプシ ョ ンは蓄積 さ れてい き ます。 グ ラ フ ィ ッ ク 状
態オブジ ェ ク ト の中で明示的に設定 さ れていないオプシ ョ ンについては、そのカ レ ン ト の
値の ま ま にな り ます。 グ ラ フ ィ ッ ク 状態のオプシ ョ ンはすべて、 ページの始ま り ご と に、
それぞれのデフ ォ ル ト 値に リ セ ッ ト さ れます。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ
128
第 7 章 : グ ラ フ ィ ッ ク関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
7.3 座標系の変換
変換関数(translate( )・scale( )・rotate( )・align( )・skew( )・concat( )・setmatrix( )・initgraphics( ))
はすべて、 以後のオブジ ェ ク ト を描 く ために使われ る 座標系を変更 し ます。 ページにすで
に存在 し てい る オブジ ェ ク ト に対 し ては効力を持ち ません。
VB RB Sub translate(tx As Double, ty As Double)
C# void translate(double tx, double ty)
座標系の原点を平行移動 さ せます。
tx ・ ty
座標系の新 し い原点 (tx, ty) を、 古い座標系で測 り ます。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ
VB RB Sub scale(sx As Double, sy As Double)
C# void scale(double sx, double sy)
座標系を拡縮 し ます。
sx ・ sy
詳細
x ・ y 方向の拡縮倍率。
こ の関数は、 座標系を sx 倍 ・ sy 倍 し ます。 負の倍率を使っ て、 反転 (鏡映) を行わせ る
こ と も で き ます。 新 し い座標系におけ る x 方向の 1 単位は、 古い座標系におけ る x 方向の
sx 単位 と 等 し く な り ます。 y 座標について も 同様です。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ
バインディング COM : VB のバグ を回避する ため、 こ の関数は pscale と い う 名前で も 得 ら れます。
VB RB Sub rotate(phi As Double)
C# void rotate(double phi)
座標系を回転 さ せます。
phi
回転角を度単位で指定 し ます。
詳細 角度は、 カ レ ン ト 座標系の x 軸正の向 き か ら の反時計回 り で測 り ます。 新 し い座標軸は、
古い座標軸を phi 度回転 さ せ る こ と に よ っ て得 ら れます。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ
VB RB Sub align(dx As Double, dy As Double)
C# void align(double dx, double dy)
座標系の方向を相対ベ ク ト ル と 同 じ に し ます。
dx ・ dy
方向ベ ク ト ルの座標。 dx と dy を両方 0 に し てはいけ ません。
詳細 座標系を回転 し 、 新 し い座標系の x 軸の方向がベ ク ト ル (dx, dy) と 同 じ にな り 、 y 軸の方
向が (-dy, dx) と 同 じ にな る よ う に し ます。 こ れは rotate( ) で
phi=180°/ pi × atan2(dy/dx) と し た場合 と 等価です。
7.3 座標系の変換
129
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ
VB RB Sub skew(alpha As Double, beta As Double)
C# void skew(double alpha, double beta)
座標系を斜形化 し ます。
alpha ・ beta
x ・ y 方向の斜形化角を、 度単位で指定 し ます。
詳細 斜形化 (シ アー と も い う ) と は、 座標系を x ・ y 方向へ指定の角度だけ歪め ます。 alpha
は、 カ レ ン ト 座標系の x 軸正の向 き か ら の反時計回 り で表 さ れ、 beta は、 y 軸正の向 き か
ら の時計回 り で測 り ます。 ど ち ら の角度 も 、 -360°< alpha, beta < 360°の範囲にす る 必
要があ り 、 かつ、 -270° ・ -90° ・ 90° ・ 270°以外に し なければな り ません。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ
VB RB Sub concat(a As Double, b As Double, c As Double, d As Double, e As Double, f As Double)
C# void concat(double a, double b, double c, double d, double e, double f)
カ レ ン ト 座標系に変換行列を適用 し ます。
a ・ b ・ c ・ d ・ e ・ f 変換行列の各要素。 6 個の値は、 PostScript ・ PDF と 同 じ 方式で行列
を構成 し ます (各 リ フ ァ レ ン ス を参照)。 縮退変換を避け る ため、 a × d を b × c に等 し
く し てはいけ ません。
詳細
こ の関数は、 座標系に行列を適用 し ます。 こ れを使 う と 、 も っ と も 一般的な形で変換を行
え ます。 変換行列の使い方が よ く わか ら ないな ら 、 こ の関数でな く 、 translate( ) ・ scale( ) ・
rotate( ) ・ skew( ) の使用を推奨 し ます。 座標系は、 ページの始ま り ご と にデフ ォ ル ト 座標
系 (すなわち、 カ レ ン ト 変換行列が単位行列 [1, 0, 0, 1, 0, 0]) に リ セ ッ ト さ れます。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ
VB RB Sub setmatrix(a As Double, b As Double, c As Double, d As Double, e As Double, f As Double)
C# void setmatrix(double a, double b, double c, double d, double e, double f)
カ レ ン ト 変換行列を明示的に設定 し ます。
a・b・c・d・e・f
詳細
concat( ) 参照。
こ の関数は concat( ) に似てい ます。 ただ し 、 カ レ ン ト 変換行列を捨てて、 ま っ た く 新 し い
行列に置 き 換え ます。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ
130
第 7 章 : グ ラ フ ィ ッ ク関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
7.4 パスの作成
こ の節に関連す る 値のキー名を表 7.5 に示 し ます (21 ページ 「2.2 パ ラ メ タ ・ オプシ ョ ン
処理」 参照)。 こ れ ら のキー名は set_value( ) では使え ません。 こ れ ら の値を設定す る ため
の API 関数が別にあ る ためです。
表 7.5 get_value( ) のキー一覧
キー
説明
currentx
currenty
カ レ ン ト 点の、 それぞれ x ・ y 座標 (カ レ ン ト 座標系の単位で表 し た も の)。 ス コ ー
プ : ページ ・ パ タ ーン ・ テ ン プ レ ー ト ・ パス
ctm_a
ctm_d
ctm_b
ctm_e
ctm_c
ctm_f
ベ ク ト ルグ ラ フ ィ ッ ク に対する カ レ ン ト 変換行列 (CTM) の各要素。 ス コ ープ :
ページ ・ パ タ ーン ・ テ ン プ レー ト ・ パス
注 こ の節の関数を使 っ た後は、 必ず 135 ページ 「7.5 描画 と ク リ ッ ピ ング」 の関数のいずれか
を呼び出 し て く だ さ い。 そ う でない と 、 作成 し たパスは何の効果も な く 、 その後の操作が
例外を発生 さ せる こ と があ り ます。
VB RB Sub moveto(x As Double, y As Double)
C# void moveto(double x, double y)
グ ラ フ ィ ッ ク 出力のためのカ レ ン ト 点を設定 し ます。
x・y
詳細
新 し いカ レ ン ト 点の座標。
カ レ ン ト 点は、 ページの始ま り ご と に、 デフ ォ ル ト 値であ る 未定義に設定 さ れます。 グ ラ
フ ィ ッ ク のカ レ ン ト 点 と 、 カ レ ン ト テ キ ス ト 位置は、 別々に保持 さ れます。
スコープ ページ ・パ タ ーン ・ テ ン プ レー ト ・パス ・ グ リ フ 。 こ の関数はパス ス コ ープ を開始 さ せます。
パラメタ currentx ・ currenty
VB RB Sub lineto(x As Double, y As Double)
C# void lineto(double x, double y)
カ レ ン ト 点か ら 別の点へ線を描 き ます。
x・y
詳細
線の終点の座標。
こ の関数は、 カ レ ン ト 点か ら (x, y) ま での直線を、 カ レ ン ト パ ス に追加 し ます。 カ レ ン ト
点は、 こ の関数を使 う 前に設定 し てお く 必要があ り ます。 点 (x, y) が新たにカ レ ン ト 点に
な り ます。
こ の線は、 「理想の線」 を中心軸 と し て描かれます。 すなわち、 2 個の端点を結ぶ線の
両側に、 線幅 (linewidth パ ラ メ タ の値に よ っ て決定 さ れ る ) の半分ずつが描かれます。 終
端での動作は、 linecap パ ラ メ タ の値に よ っ て決定 さ れます。
スコープ パス
パラメタ currentx ・ currenty
7.4 パスの作成
131
VB RB Sub curveto(x1 As Double, y1 As Double, x2 As Double, y2 As Double,
x3 As Double, y3 As Double)
C# void curveto(double x1, double y1, double x2, double y2, double x3, double y3)
カ レ ン ト 点か ら 、 3 個の制御点を用いて、 ベジエ曲線を描 き ます。
x1 ・ y1 ・ x2 ・ y2 ・ x3 ・ y3
詳細
3 個の制御点の座標。
カ レ ン ト 点か ら (x3, y3) ま でのベジエ曲線を、 (x1, y1) と (x2, y2) を制御点 と し て使っ て、 カ
レ ン ト パ ス に追加 し ます。 カ レ ン ト 点は、 こ の関数を使 う 前に設定 し てお く 必要があ り ま
す。 曲線の終点が新たにカ レ ン ト 点にな り ます。
スコープ パス
パラメタ currentx ・ currenty
VB RB Sub circle(x As Double, y As Double, r As Double)
C# void circle(double x, double y, double r)
円を描 き ます。
x・y
r
詳細
円の中心の座標。
円の半径。
こ の関数は、 円を完全なサブパ ス と し て、 カ レ ン ト パス に追加 し ます。 点 (x + r, y) が新た
にカ レ ン ト 点にな り ます。 描かれ る 形は、 ユーザー座標系において円にな り ます。 座標系
を、 x ・ y 方向で違 う 倍率で拡縮 し てい る と き は、 描かれ る 曲線は楕円にな り ます。
スコープ ページ ・パ タ ーン ・ テ ン プ レー ト ・パス ・グ リ フ 。こ の関数はパス ス コ ープを開始 さ せます。
パラメタ currentx ・ currenty
バインディング COM : VB 6 のバグ を回避す る ため、 こ の関数は pcircle と い う 名前で も 得 ら れます。
VB RB Sub arc(x As Double, y As Double, r As Double, alpha As Double, beta As Double)
C# void arc(double x, double y, double r, double alpha, double beta)
円弧を、 反時計周 り で描 き ます。
x・y
r
円弧の中心の座標。
円弧の半径。 r は非負にす る 必要があ り ます。
alpha ・ beta
詳細
円弧の開始角 と 終了角を、 度単位で指定 し ます。
こ の関数は、 alpha 度か ら beta 度ま での反時計回 り の円弧を、 カ レ ン ト パ ス に追加 し ま
す。 arc( ) で も arcn( ) で も 、 角度は、 カ レ ン ト ユーザー座標系におけ る x 軸正の向 き か ら
の反時計回 り で指定 し ます。 カ レ ン ト 点があ る と き は、 カ レ ン ト 点か ら 円弧の始点ま での
直線 も 描かれます。 円弧の終点が新たにカ レ ン ト 点にな り ます。
円弧は、 ユーザー座標系において部分円にな り ます。 座標系を、 x ・ y 方向で違 う 倍率
で拡縮 し てい る と き は、 描かれ る 曲線は部分楕円にな り ます。
スコープ ページ ・パ タ ーン ・ テ ン プ レー ト ・パス ・グ リ フ 。こ の関数はパス ス コ ープを開始 さ せます。
132
第 7 章 : グ ラ フ ィ ッ ク関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
パラメタ currentx ・ currenty
VB RB Sub arcn(x As Double, y As Double, r As Double, alpha As Double, beta As Double)
C# void arcn(double x, double y, double r, double alpha, double beta)
円弧を、 時計回 り で描 き ます。
詳細 描画方向以外は、 こ の関数は arc( ) と ま っ た く 同 じ 動作を し ます。 特に角度は、 こ の関数
で も x 軸正の向 き か ら の反時計回 り で指定 し ます。
VB RB Sub circular_arc(x1 As Double, y1 As Double, x2 As Double, y2 As Double)
C# void circular_arc(double x1, double y1, double x2, double y2)
3 個の点に よ っ て定義 さ れ る 円弧線分を描 き ます。
詳細
x1 ・ y1
円弧線分上の任意の点の座標。
x2 ・ y2
円弧線分の終点の座標。
こ の関数は、 カ レ ン ト パ ス に円弧線分を追加 し ます。 こ の円弧線分はカ レ ン ト 点を始点 と
し 、 (x1, y1) を通っ て、 (x2, y2) を終点 と し ます。 こ の関数を使 う 前にカ レ ン ト 点を設定す る
必要があ り ます。 こ の曲線の終点が新たにカ レ ン ト 点 と な り ます。
こ の円弧線分はユーザー座標系において円形にな り ます。 座標系が x 方向 と y 方向で
異な る 拡縮を さ れてい る と き は、 生成 さ れ る 曲線は楕円形にな り ます。
スコープ パス
パラメタ currentx ・ currenty
VB RB Sub ellipse(x As Double, y As Double, rx As Double, ry as Double)
C# void ellipse(double x, double y, double rx, double ry)
楕円を描 き ます。
x・y
rx ・ ry
詳細
楕円の中心の座標。
楕円の x 半径 と y 半径。
こ の関数は、 カ レ ン ト パ ス に楕円を、 完全なサブパ ス と し て追加 し ます。 点 (x + rx, y) が
新たにカ レ ン ト 点 と な り ます。
スコープ ページ ・パ タ ーン ・ テ ン プ レー ト ・パス ・ グ リ フ 。 こ の関数はパス ス コ ープ を開始 さ せます。
パラメタ currentx ・ currenty
VB RB Sub rect(x As Double, y As Double, width As Double, height As Double)
C# void rect(double x, double y, double width, double height)
矩形を描 き ます。
x・y
矩形の左下隅の座標。
width ・ height
矩形の寸法。
7.4 パスの作成
133
詳細
こ の関数は、 矩形を完全なサブパス と し て、 カ レ ン ト パ ス に追加 し ます。 こ の関数の前に
カ レ ン ト 点を設定 し てお く こ と は、 必須ではあ り ません。 点 (x, y) が新たにカ レ ン ト 点に
な り ます。 線は、 「理想の線」 を中心軸 と し て描かれ ます。 すなわち、 それぞれの端点を
結ぶ線の両側に、 線幅 (linewidth パ ラ メ タ の値に よ っ て決定 さ れ る ) の半分ずつが描か
れます。
スコープ ページ ・パ タ ーン ・ テ ン プ レー ト ・パス ・グ リ フ 。こ の関数はパス ス コ ープを開始 さ せます。
パラメタ currentx ・ currenty
VB RB Sub closepath( )
C# void closepath( )
カ レ ン ト パ ス を閉 じ ます。
詳細
こ の関数は、 カ レ ン ト サブパス を閉 じ ます。 すなわち、 カ レ ン ト 点か ら サブパ ス の開始点
ま での線を追加 し ます。
スコープ パス
パラメタ currentx ・ currenty
134
第 7 章 : グ ラ フ ィ ッ ク関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
7.5 描画 と ク リ ッ ピ ン グ
注 こ の節の関数の多 く は、 パス を ク リ ア し て、 カ レ ン ト 点を未定義に し ます。 ですので、 こ
れらの関数のいずれかを呼び出 し た後の描画操作では、 カ レ ン ト 点を明示的に設定する必
要があ り ます (moveto( ) を使 う 等)。
VB RB Sub stroke( )
C# void stroke( )
パ ス を、 カ レ ン ト 線幅 と カ レ ン ト 描線色で描線 し た後、 ク リ ア し ます。
スコープ パス。 こ の関数はパス ス コ ープ を終了 さ せます。
VB RB Sub closepath_stroke( )
C# void closepath_stroke( )
パ ス を閉 じ た後、 描線 し ます。
詳細
こ の関数は、 カ レ ン ト サブパ ス を閉 じ た後 (カ レ ン ト 点か ら パ ス の開始点への線分を追
加)、 カ レ ン ト パ ス全体を、 カ レ ン ト 線幅 と カ レ ン ト 描線色で描線 し ます。
スコープ パス。 こ の関数はパス ス コ ープ を終了 さ せます。
VB RB Sub fill( )
C# void fill( )
パ ス の内部を、 カ レ ン ト 塗 り 色で塗 り ます。
詳細
こ の関数は、 カ レ ン ト パス の内部を、 カ レ ン ト 塗 り 色で塗 り ます。 パ ス の内部は、 2 種の
アルゴ リ ズ ムのいずれかに よ っ て決定 さ れます (fillrule パ ラ メ タ 参照)。 開いてい る パ ス
は、 塗 る 前に暗黙的に閉 じ ら れます。
スコープ パス。 こ の関数はパス ス コ ープ を終了 さ せます。
パラメタ fillrule
VB RB Sub fill_stroke( )
C# void fill_stroke( )
パ ス を、 カ レ ン ト 塗 り 色 と カ レ ン ト 描線色で、 塗 り 、 描線 し ます。
スコープ パス。 こ の関数はパス ス コ ープ を終了 さ せます。
パラメタ fillrule
7.5 描画 と ク リ ッ ピ ング
135
VB RB Sub closepath_fill_stroke( )
C# void closepath_fill_stroke( )
パ ス を閉 じ た後、 塗 り 、 描線 し ます。
詳細
こ の関数は、 カ レ ン ト サブパ ス を閉 じ た後 (カ レ ン ト 点か ら パ ス の開始点への線分を追
加)、 カ レ ン ト パ ス全体を塗 り 、 描線 し ます。
スコープ パス。 こ の関数はパス ス コ ープを終了 さ せます。
パラメタ fillrule
VB RB Sub clip( )
C# void clip( )
カ レ ン ト パ ス を ク リ ッ ピ ン グパ ス と し て使っ て、 パ ス を終了 さ せます。
詳細
こ の関数は、 カ レ ン ト パス と カ レ ン ト ク リ ッ ピ ン グパス の共通部分を、 以後の操作に対す
る ク リ ッ ピ ン グパ ス と し て使い ま す。 ク リ ッ ピ ン グパ ス は、 ページの始 ま り ご と に、 デ
フ ォ ル ト 値で あ る ページ サ イ ズ と 同 じ に設定 さ れ ま す。 ク リ ッ ピ ン グ パ ス は、 save( ) ・
restore( ) の対象にな り ます。 ク リ ッ ピ ン グパ ス を大 き く で き る のは、 save( ) ・ restore( ) を
使っ た と き だけです。
スコープ パス。 こ の関数はパス ス コ ープを終了 さ せます。
VB RB Sub endpath( )
C# void endpath( )
カ レ ン ト パ ス を、 塗 ら ずに、 描線せずに、 終了 さ せます。
詳細
こ の関数は、 ページに対 し て何の視覚的効力 も 持ち ません。 目に見え ないパ ス をページに
生成す る だけです。
スコープ パス。 こ の関数はパス ス コ ープを終了 さ せます。
136
第 7 章 : グ ラ フ ィ ッ ク関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
7.6 パス オ ブ ジ ェ ク ト
VB RB Function add_path_point(path As Long, x As Double, y As Double, type As String, optlist As String)
As Long
C# int add_path_point(int path, double x, double y, String type, String optlist)
新規の、 ま たは既存のパ ス オブジ ェ ク ト に点を追加 し ます。
path それ以前に add_path_point( ) を呼び出 し て返 さ れた有効なパ スハン ド ルか、 ま た
は新規パ ス を作成す る には -1。
x ・ y 新規カ レ ン ト 点の座標。 polar=false にす る と 、 こ の 2 個の数は、 点のデカル ト 座標
(x, y) を表 し ます。 polar=true にする と 、 こ の 2 個の数は、 点の動径 r と 偏角 phi (radians
オプシ ョ ンに従っ て度単位ま たは ラ ジ ア ン単位で) を表 し ます。
type=move ・ line ・ curve ・ circular の と き は、 こ の点が新たにカ レ ン ト 点 と な り ます。
type
点の種別を、 表 7.6 に従っ て指定 し ます。
表 7.6 add_path_point( ) の点の種別一覧
キーワー ド
説明
circular
カ レ ン ト 点から 新規点へ円弧を追加 し ます。 あ らか じ め、 3 番目の円弧点 と し て制御点を定義 し て
お く 必要があ り ます。 新規点を カ レ ン ト 点 と 同一にする と 、 カ レ ン ト 点 と 制御点を結ぶ線分を直
径 と する円が作成 さ れます。
control
ベジ エ曲線の、 または円弧の制御点。
curve
カ レ ン ト 点から 新規点へ、 あ らか じ め定義 し ておいた制御点群を用いてベジ エ曲線を追加 し ます。
少な く と も 1 個の制御点を与え る必要があ り ます。 制御点を 1 個だけ与え る と 、 こ れは曲線の 2
番目の制御点 と し て用い られ、 1 番目の制御点は、 2 番目の制御点に対する、 直前のベジ エ曲線の
終点における鏡像 と し て算出 さ れます。
line
カ レ ン ト 点から 新規点へ線分を追加 し ます。
move
新規サブパス または (書式が変わる と き、 または異な るパス操作が用い ら れる と き) 新規パス を
開始 し ます。 サブパスは連続的に付番 さ れます (1, 2, …)。 最初のサブパスは原点を始点 と し ま
す。
origin
絶対座標の新規原点。 relative=true にする と 、 座標は、 も っ と も 最近の座標に対 し て相対的にな
り ます。 原点は任意の頻度で設定する こ と がで き、 パスオブ ジ ェ ク ト 内には挿入 さ れません。 デ
フ ォ ル ト : (0, 0)
optlist パ ス構築オプシ ョ ン群を指定 し たオプシ ョ ン リ ス ト :
> 点 1 個に対する 、 表 7.7 に従っ たパ ス計算 ・ 命名オプシ ョ ン群 : name ・ polar ・
radians ・ relative
> サブパス 1 個に属性群を割 り 当て る ための(type=move の場合のみ)、表 7.7 に従っ たパ
ス構築オプシ ョ ン群 : close ・ fill ・ round ・ stroke
> 表 7.2 に従っ た グ ラ フ ィ ッ ク 書式オプシ ョ ン群 (type=move の場合のみ) :
dasharray ・ dashphase ・ fillcolor ・ fillrule ・ flatness ・ gstate ・ linecap ・ linejoin ・
linewidth ・ miterlimit ・ strokecolor
戻り値 パ ス ハン ド ル。 delete_path( ) で削除す る ま で使え ます。
7.6 パスオブ ジ ェ ク ト
137
詳細 パ ス オブジ ェ ク ト は、 ベ ク ト ル図形のための コ ン テナ と し て機能 し ます。 パ ス オブジ ェ ク
ト には、 パス と サブパス を 1 個ずつ加え てい く こ と がで き ます。 作成 さ れたパ ス は、 その
後、 draw_path( ) な ど の関数で用い る こ と がで き ます。
1 個のパ ス オブジ ェ ク ト は、任意の数のパ ス を保持す る こ と がで き ます : 書式が変わ る
と き (新 し い色な ど) 、 ま たは異な る パ ス操作オプシ ョ ンが用い ら れ る と き (描線か ら 塗
へ) には必ず、 新規パ ス が自動的に開始 さ れます。
さ ら にパ スはそれぞれ、 1 個ない し 複数のサブパ ス を含む こ と がで き ます。 1 個のサブ
パ ス は、 type=move に よ る 点で開始 し 、 次の type=move に よ る 点の前で、 ま たは点列の
末尾の前で終了 し ます。
すべてのサブパ ス は、 指定 し たオプシ ョ ン に従っ て個別に、 閉 じ ら れ、 塗 ら れ、 描線
さ れ、 丸め ら れます。 すべてのパ ス は個別に塗 ら れます。
スコープ 任意
表 7.7 add_path_point( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
close
(論理値。 type=move のみ) true にする と 、 サブパスは直線で閉 じ られます。 デ フ ォル ト : 脚注参
照1
fill
(論理値。 type=move のみ) true にする と 、 サブパスは閉 じ られて塗られます。 デ フ ォ ル ト : 脚注
参照 1
name
(文字列) 点の名前。 デ フ ォル ト : p<i> (例 : p1)、 こ こ で i は、 与えた点の連続番号です。
polar
(論理値) true にする と 、 引数 (x, y) は極座標で動径 r と 偏角 phi を表 し 、 そ う で ないな ら デ カ
ル ト 座標で値 x ・ y を表 し ます。 デ フ ォ ル ト : false
radians
(論理値) true にする と 、 極座標における偏角はラ ジ ア ン で表 さ れ、 そ う でないな ら度単位で表 さ
れます。 デ フ ォ ル ト : false
relative
(論理値) true にする と 、 (x, y) はカ レ ン ト 点に対 し て相対的 と な り 、 そ う で ないな ら カ レ ン ト
原点に対 し て相対的 と な り ます。 デ フ ォ ル ト : 脚注参照 1
round
(float。 type=move のみ) サブパス内の隣 り あ う 線の頂点が、 それ らの接合点で、 指定 し た半径を
持ち、 それら の線分を接線 と する円弧に よ っ て丸め ら れます。 半径を負にする と 、 角が円形にへ
こ むよ う に弧が切 り 取られます。 close=true と する と 、 終了点から 開始点への線を指定 し ていな
いな ら ば、 最初の線 と 閉 じ る線も 丸め ら れます。 round=0 と する と 丸めは行われません。 デ フ ォ ル
ト : 脚注参照 1
stroke
(論理値。 type=move のみ) true にする と 、 サブパスは描線 さ れます。 デ フ ォル ト : 脚注参照 1
1. デ フ ォ ル ト は、 draw_path( ) で も 、 info_path( ) で も 、 fit_textline( ) の textpath オ プ シ ョ ン で も 、 fit_textflow( ) の wrap オプ シ ョ
ン で も 、 add_table_cell( ) の fitpath オ プ シ ョ ン で も 指定 さ れます。
VB RB Sub draw_path(path As Long, x As Double, y As Double, optlist As String)
C# void draw_path(int path, double x, double y, String optlist)
パ ス オブジ ェ ク ト を描 き ます。
path add_path_point( ) を、 ま たはパ スハン ド ルを返すその他の関数 (例 : info_image( )
で boundingbox キー ワー ド を指定) を呼び出 し て返 さ れた有効なパ スハン ド ル。
x ・ y 参照点の座標を、 ユーザー座標で指定 し ます。 こ の参照点は さ ま ざ ま なオプシ ョ ン
で用い ら れ、 かつパス の原点のカ レ ン ト ユーザー座標系におけ る 位置を指定 し ます。 こ れ
138
第 7 章 : グ ラ フ ィ ッ ク関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
に よ り 、 パ ス オブジ ェ ク ト が平行移動 し ます。
boxsize オプシ ョ ン を指定す る と 、 (x, y) は、 パ ス オブジ ェ ク ト がはめ込まれ る はめ込み枠
(表 6.1 参照) の左下隅 と な り ます。
optlist パ ス描画オプシ ョ ン群を指定 し たオプシ ョ ン リ ス ト :
> 表 6.1 に従っ たはめ込みオプシ ョ ン群 :
align ・ attachmentpoint ・ boxsize ・ fitmethod ・ orientate ・ position ・ scale
> 表 7.8 に従っ たパ ス操作 ・ サブパ ス選択オプシ ョ ン群 :
clip ・ close ・ fill ・ round ・ stroke ・ subpaths
> 表 7.2 に従っ た グ ラ フ ィ ッ ク 書式オプシ ョ ン群。 こ れ ら は、 fill ・ stroke オプシ ョ ンに対
し てのみ意味を持ち ます :
dasharray ・ dashphase ・ fillcolor ・ fillrule ・ flatness ・ gstate ・ linecap ・ linejoin ・
linewidth ・ miterlimit ・ strokecolor
詳細 パ ス (群) は、 参照点 (x, y) に配置 さ れ、 その後、 指定 し たオプシ ョ ン群に従っ て、 描線
さ れた り 、 塗 ら れた り 、 ク リ ッ ピ ン グパ ス と し て用い ら れた り し ます。 こ の関数は、 clip
オプシ ョ ン を用いていない限 り 、カ レ ン ト グ ラ フ ィ ッ ク 状態に変更を加え る こ と はあ り ま
せん。 書式 ・ 操作オプシ ョ ン群はデフ ォ ル ト 設定を上書 き し ますが、 add_path_point( ) の
中のサブパ ス に対 し て書式オプシ ョ ン を指定 し ていた場合は、それを上書 き す る こ と は一
切あ り ません。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ
表 7.8 パスオブ ジ ェ ク ト 内のすべてのサブパス を制御する ための draw_path( ) のパス操作オプ シ ョ ン一覧
オプ シ ョ ン
説明
clip
(論理値) true にする と 、 パスは閉 じ られ、 ク リ ッ ピ ングパス と し て用い られます。 グ ラ フ ィ ッ ク
書式オプ シ ョ ンはすべて無視 さ れます。 デ フ ォ ル ト : false
close
(論理値) true にする と 、 各サブパスが直線で閉 じ られます。 デ フ ォル ト : パスが構築 さ れた際に
指定 さ れた値、 あるいは値が何も指定 さ れなか っ たな ら false
fill
(論理値) true にする と 、 各パスが塗 られます。 デ フ ォル ト : パスが構築 さ れた際に指定 さ れた
値、 あ るいは値が何も 指定 さ れなか っ たな ら false
round
(float) 各サブパスについて、 隣 り あ う 線の頂点が、 それ らの接合点で、 指定 し た半径を持ち、 そ
れ らの線分を接線 と する円弧によ っ て丸め られます。 半径を負にする と 、 角が円形にへ こ むよ う
に弧が切 り 取ら れます。 close=true と する と 、 終了点か ら開始点への線を指定 し ていないな ら ば、
最初の線 と 閉 じ る線も 丸め ら れます。 round=0 と する と 丸めは行われません。 デ フ ォ ル ト : パスが
構築 さ れた際に指定 さ れた値、 あ るいは値が何 も指定 さ れなかっ たな ら 0
stroke
(論理値) true にする と 、 パスは描線 さ れます。 デ フ ォル ト : false
subpaths
(整数の リ ス ト 、 またはキーワー ド 1 個) 描き たいサブパスの番号の リ ス ト 。 キーワー ド all です
べてのサブパスが指定 さ れます。 デ フ ォル ト : all
VB RB Function info_path(path As Long, keyword As String, optlist As String) As Double
C# double info_path(int path, String keyword, String optlist)
パ ス オブジ ェ ク ト を描いた結果を、 実際にそれを描 く こ と な く 取得 し ます。
path add_path_point( ) を、 ま たはパス ハン ド ルを返すその他の関数 (例 : info_image( )
で boundingbox キーワ ー ド を指定) を呼び出 し て返 さ れた有効なパス ハン ド ル。
7.6 パスオブ ジ ェ ク ト
139
keyword
求め る 情報を表 7.9 に従っ て指定 し た キーワー ド 。
表 7.9 info_path( ) のキーワー ド 一覧
キーワー ド
説明
boundingbox
外接枠をユーザー座標で (参照点に対 し て相対的に) 表 し た ものを内容 と し て持つパスのハン ド
ル
numpoints
与え ら れた点の数。 subpaths オプ シ ョ ンは無視 さ れます。
px ・ py
name オプ シ ョ ン で指定 し たパス点の x ・ y 座標 (ユーザー座標系における)。 subpaths オプ シ ョ ン
は無視 さ れます。
width ・
height
パスの外接枠の幅 ・ 高 さ をユーザー座標で表 し た もの。 線幅 と マ イ タ ー リ ミ ッ ト は無視 さ れます。
x1 ・ y1 ・
x2 ・ y2 ・
x3 ・ y3 ・
x4 ・ y4
外接枠矩形の i 番目の隅の位置 (i=1, 2, 3, 4) を、 参照点に対 し て相対的にユーザー座標で表 し た も
の
optlist パス描画オプシ ョ ン群を指定 し たオプシ ョ ン リ ス ト :
> 表 7.8 に従っ た draw_path( ) のすべてのオプシ ョ ン
> お よ び、 表 6.1 に従っ たはめ込みオプシ ョ ン : refpoint
> お よ び、 表 7.10 に従っ たオプシ ョ ン : name
戻り値
詳細
キーワー ド で求め ら れた何 ら かのパ ス特性の値。
こ の関数は、 add_path_point( ) と 同 じ 計算を実行 し ますが、 ページ上に目に見え る 出力を
一切生成 し ません。
スコープ 任意
表 7.10 info_path( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
name
px または py に対するパス点の名前。 add_path_point( ) で明示的な名前を指定 し てあ っ て も、 デ フ ォ
ル ト 名 (p1 等) も 用いる こ と がで き ます。
VB RB Sub delete_path(path As Long)
C# void delete_path(int path)
パ ス オブジ ェ ク ト を削除 し ます。
path add_path_point( ) を、 ま たはパ スハン ド ルを返すその他の関数 (例 : info_image( )
で boundingbox キー ワー ド を指定) を呼び出 し て返 さ れた有効なパ スハン ド ル。
詳細 パ ス オブジ ェ ク ト と 、 それに関連 し たすべての内部デー タ 構造を削除 し ま す。 パ ス オブ
ジ ェ ク ト は、 end_document( ) で自動的に削除 さ れ る わけではない こ と に留意 し て く だ さ
い。
スコープ 任意
140
第 7 章 : グ ラ フ ィ ッ ク関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
8 色関数
8.1 色 と 色空間の設定
ク ッ ク ブ ッ ク 完全な コ ー ド サン プルが ク ッ ク ブ ッ クの color/starter_color ト ピ ッ ク にあ り ます。
こ の節に関連す る パ ラ メ タ のキー名を表 8.1 に示 し ます (21 ページ 「2.2 パ ラ メ タ ・ オプ
シ ョ ン処理」 参照)。
表 8.1 get/set_parameter( ) の色関連キー一覧
キー
説明
preserveoldpantonenames
false な ら 、 旧形式の Pantone スポ ッ ト カ ラ ー名は、 対応する新 し い色名に変換 さ れます。
そ う でないな ら、 そのま まにな り ます。 デ フ ォ ル ト : false。 ス コ ープ : 任意
spotcolorlookup
false な ら 、 PDFlib は、 スポ ッ ト カ ラ ー名の内蔵デー タ ベース を使いません。 その場合は、
既知のスポ ッ ト カ ラ ーに カ ス タ ムの定義を与え る こ と がで き ます。 カ ス タ ム定義は、 他の
ア プ リ ケーシ ョ ン で使われる定義 と の整合を と る手段 と し て必要にな る こ と があ り ます。
こ の機能は、 使用には注意が必要であ り 、 推奨 し ません。 デ フ ォル ト : true。 ス コ ープ :
任意
色空間 PDFlib の ク ラ イ ア ン ト では、パ ス と テ キ ス ト の文字の内部を塗っ た り 描線 し た り
す る ために使 う 色を指定す る こ と がで き ます。 色は、 い く つかの色空間のいずれかで指定
す る こ と がで き ます (一覧の各項目の頭に、 setcolor( ) と 色オプシ ョ ンに対す る その色空
間キー ワー ド を示 し ます)。
> gray : 0 =黒か ら 1 =白ま でのグ レー値。
> rgb:RGB の三つ組。すなわち、赤・緑・青の比率を指定す る 0 か ら 1 ま での値 3 個。(0, 0, 0)
=黒、 (1, 1, 1) =白。 広 く 用い ら れてい る 範囲 0 ~ 255 の RGB カ ラ ー値は、 PDFlib で必
要な範囲 0 ~ 1 へ縮小 さ せ る ために、 255 で割 る 必要があ り ます。
RGB 値を数値で指定せずに、 RGB カ ラ ーを、 その HTML 名ま たは 16 進値で指定す る
こ と も で き ます (13 ページ 「色」 参照)。
ク ッ ク ブ ッ ク RGB
カ ラ ー値の使用に関する完全な コ ー ド サン プルがク ッ ク ブ ッ クの
color/web_
colornames ト ピ ッ ク にあ り ます。
> cmyk : シ ア ン ・ マゼン タ ・ イ エ ロ ー ・ 黒を表す、 0 =無色か ら 1 =ベ タ 色ま での 4 個の
CMYK 値。 (0, 0, 0, 0) =白、 (0, 0, 0, 1) =黒。 こ れは RGB の指定 と 異な る こ と に注意 し
て く だ さ い。
> iccbasedgray/rgb/cmyk : ICC ベース の色は、 ICC プ ロ フ ァ イ ルの助け を借 り て指定 し ま
す。
> spot : ス ポ ッ ト カ ラ ー (分版色空間) : 定義済みか、 ま たは任意に命名 し た カ ス タ ム色
に、 他の上記の色空間のいずれか 1 つで表 し た代替表現を与え た も の。 こ れは一般に、
オ フ セ ッ ト 印刷機でカ ス タ ム色 (複数可) を使っ て印刷す る こ と を想定 し てい る 文書
を作成す る ために使い ます。 濃度値 (比率) は、 0 =無色か ら 1 =その ス ポ ッ ト カ ラ ー
の最大濃度ま での範囲を と り ます。
> lab : D50 標準光源に よ る CIE L*a*b* 色空間のデバ イ ス独立色を と り ます。色は、範囲 0
~ 100 の輝度値 1 個 と 、 範囲 -128 ~ 127 の 2 個の色値 a と b で指定 し ます。 成分 a は
8.1 色 と 色空間の設定
141
緑か ら 赤/マゼン タ ま での範囲を と り (負の値は緑を示 し 、正の値はマゼン タ を示す)、
成分 b は青か ら 黄色ま での範囲を と り ます (負の値は青を示 し 、正の値は黄色を示す)。
> pattern : 任意のテ キ ス ト ・ ベ ク ト ル ・ 画像グ ラ フ ィ ッ ク か ら 成 る オブジ ェ ク ト に よ る
タ イ リ ン グパ タ ーン。
> シ ェーデ ィ ン グ (ス ムーズブ レ ン ド ) は、 2 つの色の間の連続的遷移を与え る も ので、
他の色空間に も と づいてい ます。 シ ェーデ ィ ン グは、 shading( ) を使っ て作成す る こ と
がで き ます。
> イ ンデ ッ ク ス カ ラ ーは、それ自体は本当の色空間ではな く 、他の色空間の効率的な コ ー
ド 化です。 こ れは、 イ ンデ ッ ク ス化 さ れた (パ レ ッ ト ベース の) 画像を取 り 込む と 自
動的に生成 さ れますが、 直接指定す る こ と はで き ません。
描線 と 塗 り の操作のデフ ォ ル ト 色は黒です。
オ プ シ ョ ン リ ス ト での色指定
説明 と 例を示 し てい ます。
13 ページ 「色」 に、 オプシ ョ ン リ ス ト での色デー タ 型の
VB RB Sub setcolor(fstype As String, colorspace as String,
c1 As Double, c2 As Double, c3 As Double, c4 As Double)
C# void setcolor(String fstype, String colorspace, double c1, double c2, double c3, double c4)
カ レ ン ト 色空間 と 色を設定 し ます。
fstype
fill ・ stroke ・ fillstroke のいずれかで、 塗 り ・ 描線 ・ 両方のいずれに色を設定 し た
いのかを指定 し ます。
colorspace
指定す る 色値群に対 し て用いたい色空間を指定す る か、ま たは RGB カ ラ ー値
を名前か 16 進値で指定 し ます。
1 番目の形式:gray・rgb・cmyk・spot・pattern・iccbasedgray・iccbasedrgb・iccbasedcmyk・
lab のいずれか 1 つで、 色空間を指定 し ます。
2 番目の形式 : RGB カ ラ ー名 (例 : pink) か、 ま たはハ ッ シ ュ キ ャ ラ ク タ の後に 6 桁の
16 進数 (例 : #FFC0CB)。 詳 し く は 13 ページ 「色」 を参照。
c1 ・ c2 ・ c3 ・ c4
選んでい る 色空間におけ る 色要素。 こ れ ら の値の解釈は、 colorspace 引
数に よ っ て異な り ます。
> gray : c1 でグ レー値を指定 し ます。
> rgb : c1 ・ c2 ・ c3 で赤 ・ 緑 ・ 青の値を指定 し ます。
> cmyk : c1 ・ c2 ・ c3 ・ c4 でシ ア ン ・ マゼン タ ・ イ エ ロ ー ・ 黒の値を指定 し ます。
> iccbasedgray : c1 でグ レー値を指定 し ます。
> iccbasedrgb : c1 ・ c2 ・ c3 で赤 ・ 緑 ・ 青の値を指定 し ます。
> iccbasedcmyk : c1 ・ c2 ・ c3 ・ c4 でシ ア ン ・ マゼン タ ・ イ エ ロ ー ・ 黒の値を指定 し ます。
> spot:c1 で、makespotcolor( ) に よ っ て返 さ れた ス ポ ッ ト カ ラ ーハン ド ルを指定 し 、c2 で、
0 か ら 1 ま での濃度値を指定 し ます。
> lab : c1 ・ c2 ・ c3 で、 D50 光源に よ る CIE L*a*b* 色空間内のカ ラ ー値を指定 し ます。 c1 で
L*(輝度)を範囲0~100で指定 し 、c2・c3でa*・b*(色度)値を範囲-128~127で指定 し ます。
> pattern:c1 で、begin_pattern( ) か shading_pattern( ) に よ っ て返 さ れたパ タ ーンハン ド ル
を指定 し ます。 こ のパ タ ーン を使っ て塗 り や描線を行 う と き は、 カ レ ン ト の塗 り 色や
描線色が適用 さ れます。 カ レ ン ト 色空間は他のパ タ ーン色空間であ っ てはいけ ません。
142
第 8 章 : 色関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
詳細 gray ・ rgb ・ cmyk 色空間におけ る すべての色値 と 、 spot 色空間におけ る 濃度値は、 0 以上
1 以下の数値にす る 必要があ り ます。 使わない引数は、 0 に設定す る べ き です。
gray ・ rgb ・ cmyk 色空間におけ る 描線 ・ 塗 り 色の値は、 ページの始ま り ご と に、 デフ ォ
ル ト 値であ る 黒に設定 さ れます。 ス ポ ッ ト ・ パ タ ーン カ ラ ーの場合はデフ ォ ル ト はあ り ま
せん。
iccbasedgray/rgb/cmyk 色空間を使 う 場合には、 setcolor:iccprofilegray/rgb/cmyk パ ラ メ
タ を使 う 前に、 適切な ICC プ ロ フ ァ イ ルを設定 し てお く 必要があ り ます (表 8.3 参照)。
PDF/X-1a : colorspace=rgb ・ iccbasedgray/rgb/cmyk ・ lab は許 さ れません。
PDF/X-3 : iccbasedgray/rgb/cmyk ・ lab カ ラ ーを使 う な ら 、 出力 イ ン テ ン ト の中に ICC
プ ロ フ ァ イ ルが必要です ( こ の場合、 標準名では不十分です)。
PDF/X-3 ・ 4 ・ 5 : colorspace=gray にす る な ら 、 PDF/X 出力 イ ン テ ン ト がグ レース ケー
ルか CMYK のデバ イ ス でない と き は、 begin_page_ext( ) で defaultgray オプシ ョ ン を設定
し てお く 必要があ り ます。
colorspace=rgb にす る な ら 、 PDF/X 出力 イ ン テ ン ト が RGB デバ イ ス でない と き は、
begin_page_ext( ) で defaultrgb オプシ ョ ン を設定 し てお く 必要があ り ます。
colorspace=cmyk にす る な ら 、PDF/X 出力 イ ン テ ン ト が CMYK デバ イ ス でない と き は、
begin_page_ext( ) で defaultcmyk オプシ ョ ン を設定 し てお く 必要があ り ます。
PDF/A : colorspace=gray にす る な ら 、 出力 イ ン テ ン ト (あ ら ゆ る 種類の) が指定 さ れ
ていない と き は、 begin_page_ext( ) で defaultgray オプシ ョ ン を設定 し てお く 必要があ り
ます。
colorspace=rgb にす る な ら 、出力 イ ン テ ン ト が RGB デバ イ ス でない と き は、begin_page_
ext( ) で defaultrgb オプシ ョ ン を設定 し てお く 必要があ り ます。
colorspace=cmyk にす る な ら 、 出力 イ ン テ ン ト が CMYK デバ イ ス でない と き は、 begin_
page_ext( ) で defaultcmyk オプシ ョ ン を設定 し てお く 必要があ り ます。
スコープ ページ ・ パ タ ーン (パ タ ーンの painttype が 1 の場合のみ) ・ テ ン プ レー ト ・ グ リ フ (Type
3 フ ォ ン ト の colorized オプシ ョ ンが true の場合のみ) ・ 文書。 パ タ ーン カ ラ ーは、 それ自
身の定義の中では使え ません。文書ス コ ープ内での色の設定は、makespotcolor( ) で ス ポ ッ
ト カ ラ ーを定義す る 際に有用です。
パラメタ setcolor:iccprofilegray/rgb/cmyk
VB RB Function makespotcolor(spotname As String) As Long
C# int makespotcolor(String spotname)
組み込み ス ポ ッ ト カ ラ ーの名前を検索す る か、 ま たは、 カ レ ン ト 塗 り 色か ら 名前付 き ス
ポ ッ ト カ ラ ーを作 り ます。
spotname 組み込みス ポ ッ ト カ ラ ーの名前か、 ま たは、 定義 し たい ス ポ ッ ト カ ラ ーにつ
けたい任意の名前。 こ の名前は最長 126 バ イ ト に制限 さ れてい ます。 ス ポ ッ ト カ ラ ー名で
は、 8 ビ ッ ト キ ャ ラ ク タ し か使え ません。 Unicode や null キ ャ ラ ク タ を含んだ文字列は使
え ません。 PDF/X-1a モー ド では、 PANTONE® カ ラ ーは使え ません。
特殊な ス ポ ッ ト カ ラ ー名 All を使 う と 、色をすべての色分版に適用す る こ と がで き ます
ので、 ト ン ボに色をつけ る 際に便利です。 ス ポ ッ ト カ ラ ー名 None を指定する と 、 ど の色
分版に も 目に見え る 出力が ま っ た く 生成 さ れな く な り ます。
8.1 色 と 色空間の設定
143
戻り値
カ ラ ーハン ド ル。 以後の setcolor( ) への呼び出 し で、 文書を終え る ま で使え ます。 ス ポ ッ
ト カ ラ ーハン ド ルは、 すべてのページにわた っ て再利用で き ますが、 文書を越え た再利用
はで き ません。 1 文書内の ス ポ ッ ト カ ラ ーの数に制限はあ り ません。
詳細 spotname が内蔵の色テーブルで既知の と き は、 spotcolorlookup パ ラ メ タ が true (デフ ォ
ル ト ) な ら 、 与えた ス ポ ッ ト カ ラ ー名が使われます。 それ以外な ら 、 カ レ ン ト 塗 り 色の色
値 (CMYK ない し それ以外の) を使っ て、 新規 ス ポ ッ ト カ ラ ーの視覚表現が定義 さ れ ま
す。 こ の代替色は、 画面プ レ ビ ュ ー と 低品位印刷でのみ使われ ます。 色分版製版の際は、
こ の代替値ではな く 、 与え た ス ポ ッ ト カ ラ ー名が使われます。
spotname が、 以前に makespotcolor( ) を呼び出 し た時に も う 使っ ていた も のな ら ば、
戻 り 値は前回の呼び出 し と 同 じ にな り 、 カ レ ン ト 色の反映 も さ れません。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ (Type 3 フ ォ ン ト の colorized オプシ ョ ンが true
の場合のみ) ・ document。 カ ス タ ム色を定義 し たい と き は、 カ レ ン ト 塗 り 色は ス ポ ッ ト カ
ラ ーかパ タ ーンであ っ てはいけ ません。
パラメタ spotcolorlookup ・ preserveoldpantonenames
144
第 8 章 : 色関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
8.2 ICC プ ロ フ ァ イ ル
VB RB Function load_iccprofile(profilename As String, optlist As String) As Long
C# int load_iccprofile(String profilename, String optlist)
ICC プ ロ フ ァ イ ルを検索 し て、 以後の使用に備え ます。
profilename (名前文字列) ICCProfile リ ソ ース の名前か、 ま たはデ ィ ス ク ベース の フ ァ
イ ルか仮想フ ァ イ ルの名前。PDF/X-1 か PDF/X-3 が生成 さ れ る 場合、usage=outputintent
な ら ば、 表 8.5 に挙げ る 標準出力条件名の 1 つ (ま たは StandardOutputIntent リ ソ ース カ
テ ゴ リ で定義 し た名前) を用い る こ と も で き 、 その場合、 対応す る ICC プ ロ フ ァ イ ルを埋
め込む必要はあ り ません。標準出力 イ ン テ ン ト の 1 つを PDF/X-4 か PDF/X-5pg で用いた
い と き は、 対応す る ICC プ ロ フ ァ イ ルを、 表 8.5 の参照名を リ ソ ー ス名 と し て用いて、
ICCProfile リ ソ ース と 同様に設定す る 必要があ り ます。
optlist プ ロ フ ァ イ ル処理の諸特性を記述 し たオプシ ョ ン リ ス ト :
> 一般オプシ ョ ン : errorpolicy (28 ページ 「2.5 例外処理」 参照)
> 表 8.2 に従っ たプ ロ フ ァ イ ル処理オプシ ョ ン群 : description ・ embedprofile ・ metadata ・
urls ・ usage
表 8.2 load_iccprofile( ) のオプ シ ョ ン
キー
説明 ・ と り う る値
description
(文字列。 usage=outputintent かつ非標準出力条件の場合のみ) 出力イ ン テ ン ト と と も に用い られ
る ICC プ ロ フ ァ イルに関する人間向けの説明。
embedprofile
(論理値。 PDF/X-1 または PDF/X-3 かつ usage=outputintent の場合のみ。 PDF/X-4 と PDF/X-5g
では true を強制 さ れます) PDF/X で標準出力イ ン テ ン ト を profilename と し て与え ている と き に
も 、 ICC プ ロ フ ァ イルの埋め込みが強制 さ れます。 デ フ ォ ル ト : false
metadata
(オプ シ ョ ン リ ス ト 。 標準出力イ ン テ ン ト ・ 参照出力イ ン テ ン ト 、 すなわち PDF/X-4p ・ PDF/X5pg モー ド における usage= outputintent の場合には無視 さ れます。 PDF 1.4) プ ロ フ ァ イルに対
する メ タ デー タ を与え ます (225 ページ 「14.2 XMP メ タ デー タ 」 参照)
urls
(文字列 1 個ない し 複数の リ ス ト 。 PDF/X-4p と PDF/X-5pg, の場合のみ。 かつその場合には必須)
参照 さ れている出力イ ン テ ン ト ICC プ ロ フ ァ イルを入手で き る場所を示 し た URL 群の リ ス ト 。 送
り 手 と 受け手が、 適切な URL 項目を ア レ ン ジする必要があ り ます。 この文字列は自由に選ぶ こ と
がで き ますが、 有効な URL 文法を内容 と する必要があ り ます。
usage
(キーワー ド ) ICC プ ロ フ ァ イルの想定用途。 使え るキーワー ド (デ フ ォル ト : iccbased) :
ICC プ ロ フ ァ イルは、 テキス ト かグ ラ フ ィ ッ ク のための ICC ベースの色空間を定義する
ために用い られるか、 または画像に適用 さ れます。 入力 ・ 表示 ・ 出力デバイ ス (スキ ャ
ナ ・ モニ タ ・ プ リ ン タ ) のプ ロ フ ァ イルのほか、 色空間変換プ ロ フ ァ イルを用いる こ と
も で き ます。
outputintent
ICC プ ロ フ ァ イルは、 PDF/X か PDF/A で出力イ ン テ ン ト を定義する ために用い ら れま
す。 PDF/X-4p ・ PDF/X-5pg モー ド では、 指定 し た出力イ ン テ ン ト ICC プ ロ フ ァ イルは
埋め込まれず、 外部プ ロ フ ァ イルへの参照が作成 さ れます。 こ のプ ロ フ ァ イルは、 PDF
を生成する際にはロー カルで利用可能であ る必要があ り 、 その PDF の利用者に対 し て
は、 文書を表示または印刷する際には利用可能 と な る必要があ り ます。
iccbased
PDF/X モー ド では、 usage=outputintent に対 し ては、 出力デバイ ス (プ リ ン タ ) プ ロ
フ ァ イルのみ用いる こ と がで き ます。
8.2 ICC プ ロ フ ァ イル
145
戻り値 プ ロ フ ァ イ ルハン ド ル。 以後の load_image( ) への呼び出 し か、 ま たはプ ロ フ ァ イ ル関連
のパ ラ メ タ の設定で使え ます。 errorpolicy=return の場合、 戻 り 値 -1 はエ ラ ーを示 し ます
ので、 そ う でないか を呼び出 し 側で検査す る 必要があ り ます。 返 さ れたプ ロ フ ァ イ ルハン
ド ル は、 複 数 の
PDF
文 書 に わ た っ て 再利用す る こ と は で き ま せ ん。 ま た、
usage=outputintent に し てい る と き は、 返 さ れ る ハン ド ルを画像に適用す る こ と はで き ま
せん。 1 文書内の ICC プ ロ フ ァ イ ルの数に制限はあ り ません。 関数の呼び出 し が失敗 し た
と き は、 その失敗の原因は、 get_errmsg( ) を使っ て取得す る こ と がで き ます。
詳細 usage=iccbased にす る と 、 プ ロ フ ァ イ ル検索戦略に従っ て、 名前付 き プ ロ フ ァ イ ルが検索
さ れます。 プ ロ フ ァ イ ルが見つか っ た と き は、 それが適切か ど う か検査 さ れます (色要素
の数等)。 sRGB プ ロ フ ァ イ ルは、 つねに内部的に得 ら れ る ので、 定義 し てはいけ ません。
読み込む ICC プ ロ フ ァ イ ルは、 PDF 1.4 の場合は 2.x 以下の ICC バージ ョ ンに、 PDF 1.5
以上の場合は 4.x 以下の ICC バージ ョ ンに準拠 し てい る 必要があ り ます。 プ ロ フ ァ イ ル
は、 グ レー ・ RGB ・ CMYK ・ Lab のいずれかの色空間で指定可能です。
PDF/X : 出力 イ ン テ ン ト は、 こ の関数を使 う か、 ま たは、 process_pdi( ) を使っ て取 り
込み文書の出力 イ ン テ ン ト を コ ピー し て、 設定する 必要があ り ます。
PDF/X-1 ・ PDF/X-3 : usage=outputintent にす る と 、 名前付 き プ ロ フ ァ イ ルは、 まず
標準出力 イ ン テ ン ト の内部 リ ス ト 内で、 次いで、 ユーザー設定出力 イ ン テ ン ト 群の リ ス ト
内で検索 さ れます。 与え ら れた profilename が標準出力 イ ン テ ン ト であ る こ と がわかっ た
と き は、ICC プ ロ フ ァ イ ルは必要 と さ れず、その名前だけが出力 イ ン テ ン ト と し て PDF 出
力に書 き 込 ま れ ま す。 その名前が標準出力 イ ン テ ン ト 識別子でない こ と がわか っ た と き
は、 それはプ ロ フ ァ イ ル名 と し て扱われ、 対応する ICC プ ロ フ ァ イ ル (ICCProfile リ ソ ー
ス カ テ ゴ リ でマ ッ プす る こ と も 可能) が出力 イ ン テ ン ト と し て PDF に埋め込まれます。
PDF/A : 出力 イ ン テ ン ト は、 こ の関数を使 う か、 ま たは、 process_pdi( ) を使っ て取 り
込み文書の出力 イ ン テ ン ト を コ ピー し て、 設定する こ と がで き ます。 ただ し 、 デバ イ ス独
立な色だけ を文書で使っ てい る と き は、 出力 イ ン テ ン ト は必要あ り ません。
スコープ 文書。 出力 イ ン テ ン ト は、 begin_document( ) の直後に設定す る 必要があ り ます。 usage オ
プシ ョ ン を iccbased に し てい る と き は、 次の ス コ ープ も 許 さ れます : ページ ・ パ タ ーン ・
テ ン プ レー ト ・ グ リ フ 。
パラメタ 表 8.3 ・ 表 8.4 参照。
表 8.3 get/set_parameter( ) のキー一覧 (21 ページ 「2.2 パラ メ タ ・ オプ シ ョ ン処理」 参照)
キー
説明
ICCProfile
StandardOutputIntent
UPR フ ァ イルの各カ テ ゴ リ と 同 じ 内容の、 同名の リ ソ ース フ ァ イル行。 複数回呼び出す と 、
内部 リ ス ト に新たな項目が追加 さ れます (表 2.3 の resourcefile も 参照)。 ス コ ープ : 任意
表 8.4 get/set_value( ) のキー一覧 (21 ページ 「2.2 パラ メ タ ・ オプ シ ョ ン処理」 参照)
キー
説明
icccomponents 修飾子で与え るハン ド ルで参照する ICC プ ロ フ ァ イルの色要素の数
setcolor:iccprofilegray
setcolor( ) で使 う ためのグ レー色空間を指定する ICC プ ロ フ ァ イル。 ス コ ープ : 文書 ・ ページ ・ パ
ターン ・ テンプレート ・ グリフ
setcolor:iccprofilergb
setcolor( ) で使 う ための RGB 色空間を指定する ICC プ ロ フ ァ イル。 ス コ ープ : 文書 ・ ページ ・ パ
ターン ・ テンプレート ・ グリフ
setcolor:iccprofilecmyk
setcolor( ) で使 う ための CMYK 色空間を指定する ICC プ ロ フ ァ イル。 ス コ ープ : 文書 ・ ページ ・ パ
ターン ・ テンプレート ・ グリフ
146
第 8 章 : 色関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 8.5 PDF/X の標準出力イ ン テ ン ト 一覧 (詳 し く は www.color.org を参照)
名前
出力処理
米国のための CGATS 規格群 (www.npes.org/standards/tools.html)
CGATS TR 001
米国における SWOP (出版) 印刷 : ANSI CGATS.6
CGATS TR 002
米国における SNAP 印刷
CGATS TR 003
米国 グ レー ド 3 コ ー ト 出版用紙上への SWOP 校正および印刷
CGATS TR 005
米国グ レー ド 5 コ ー ト 出版用紙上への SWOP 校正および印刷
CGATS TR 006
米国グ レー ド 1 コ ー ト 紙上への GRACoL 校正および印刷
米国のための GRACoL ・ SWOP 規格群 (www.gracol.org) (CGATS グループ で も 入手可)
GRACoL2006_ GRACoL グ レー ド 1 コ ー ト 紙、 ISO 12647-2 用紙 タ イ プ 1。 ISO 12647-2 特性群に準拠 し 、 スムーズ
Coated1
化 さ れ、 G7 NPDC 2006 に同調 (K50 が CMY50,40,40 よ り 若干明るい) さ れたデー タ
SWOP2006_
Coated3
SWOP グ レー ド 3 コ ー ト 紙、 ISO 2846-1 イ ンキ群。 SWOP に準拠 し 、 G7 ニ ュ ー ト ラル印刷密度曲
線に同調 さ れた特性
SWOP2006_
Coated5
SWOP グ レー ド 5 コ ー ト 紙、 ISO 2846-1 イ ンキ群。 SWOP に準拠 し 、 G7 ニ ュ ー ト ラル印刷密度曲
線に同調 さ れた特性
FOGRA 規格群 (www.fogra.org)
FOGRA27
ISO/DIS 12647-2:2004、 ISO 12647-2 に従っ たオ フ セ ッ ト 商業および特殊印刷、 ポジ版、 用紙 タ イ
プ 1 ま たは 2 (グ ロ ス紙またはマ ッ ト コ ー ト オ フ セ ッ ト 紙、 115 g/m2)、 ス ク リ ーン線数 60/cm。
FOGRA28
ISO/DIS 12647-2:2004、 ISO 12647-2 に従っ たオ フ セ ッ ト 商業および特殊印刷、 ポジ版、 用紙 タ イ
プ 3 ( コ ー ト ウ ェ ブ紙、 60 g/m2)、 ス ク リ ーン線数 60/cm。
FOGRA29
ISO/DIS 12647-2:2004、 ISO 12647-2 に従っ たオ フ セ ッ ト 商業および特殊印刷、 ポジ版、 用紙 タ イ
プ 4 (上質白色オ フ セ ッ ト 紙、 120 g/m2)、 ス ク リ ーン線数 60/cm。
FOGRA30
ISO/DIS 12647-2:2004、 ISO 12647-2 に従っ たオ フ セ ッ ト 商業および特殊印刷、 ポジ版、 用紙 タ イ
プ 5 (上質、 やや黄味、 オ フ セ ッ ト 紙、 115 g/m2)、 ス ク リ ーン線数 60/cm。
FOGRA31
ISO/DIS 12647-2:2003、 ISO 12647-2 に従 っ た連続紙印刷、 ポジ版、 用紙 タ イ プ 2 (マ ッ ト コ ー ト オ
フ セ ッ ト 紙、 115 g/m2)、 ス ク リ ーン線数 60/cm。
FOGRA32
ISO/DIS 12647-2:2004、 ISO 12647-2 に従っ た連続紙印刷、 ポジ版、 用紙 タ イ プ 4 (白色上質オ フ
セ ッ ト 紙、 80 g/m2)、 ス ク リ ーン線数 60/cm。
FOGRA33
ISO/DIS 12647-2:2004、 ISO 12647-2 に従 っ た連続紙印刷、 ポジ版、 用紙 タ イ プ 2 (マ ッ ト コ ー ト オ
フ セ ッ ト 紙、 115 g/m2)、 ス ク リ ーン線数 54/cm。
FOGRA34
ISO/DIS 12647-2:2004、 ISO 12647-2 に従っ た連続紙印刷、 ポジ版、 用紙 タ イ プ 4 (白色上質オ フ
セ ッ ト 紙、 120 g/m2)、 ス ク リ ーン線数 60/cm。
FOGRA35
ISO/DIS 12647-2:2004、 ISO 12647-2 に従 っ た連続紙印刷、 ネガ版、 用紙 タ イ プ 2 (マ ッ ト コ ー ト オ
フ セ ッ ト 紙、 115 g/m2)、 ス ク リ ーン線数 54/cm。
FOGRA36
ISO/DIS 12647-2:2004、 ISO 12647-2 に従っ た連続紙印刷、 ネガ版、 用紙 タ イ プ 4 (白色上質オ フ
セ ッ ト 紙、 120 g/m2)、 ス ク リ ーン線数 54/cm。
FOGRA37
ISO/DIS 12647-2:2004、 ISO 12647-2 に従 っ た連続紙印刷、 ネガ版、 用紙 タ イ プ 2 (マ ッ ト コ ー ト オ
フ セ ッ ト 紙、 115 g/m2)、 ス ク リ ーン線数 60/cm。
FOGRA38
ISO/DIS 12647-2:2004、 ISO 12647-2 に従っ た連続紙印刷、 ネガ版、 用紙 タ イ プ 4 (白色上質オ フ
セ ッ ト 紙、 120 g/m2)、 ス ク リ ーン線数 60/cm。
FOGRA39
ISO 12647-2:2004/Amd 1、 ISO 12647-2 に従っ たオ フ セ ッ ト 商業および特殊印刷、 用紙 タ イ プ 1 ま
たは 2 (グ ロ ス紙またはマ ッ ト コ ー ト オ フ セ ッ ト 紙、 115 g/m2)、 ス ク リ ーン線数 60/cm。
8.2 ICC プ ロ フ ァ イル
147
表 8.5 PDF/X の標準出力イ ン テ ン ト 一覧 (詳 し く は www.color.org を参照)
名前
出力処理
FOGRA40
ISO 12647-2:2004、 ISO 12647-2 に従っ たオ フ セ ッ ト 商業および特殊印刷、 強光沢 (SC) 紙、 60 g/
m2、 ス ク リ ーン線数 60/cm。
FOGRA41
ISO 12647-2:2004、 ISO 12647-2 に従っ たオ フ セ ッ ト 印刷、 用紙 タ イ プ : MFC (機械仕上げ コ ー ト
紙)、 濃淡値強調曲線 B (CMY) および C (K)。
FOGRA42
ISO 12647-2:2004、 ISO 12647-2 に従っ たオ フ セ ッ ト 印刷、 用紙 タ イ プ : SNP (標準新聞用紙)、 濃
淡値強調曲線 C (CMY) および D (K)。
FOGRA43
ISO 12647-2:2004/Amd 1、 ISO 12647-2 に従っ たオ フ セ ッ ト 印刷、 用紙 タ イ プ 1 または 2 ( コ ー ト
アー ト 紙) 115 g/m2、 非周期ス ク リ ーン処理、 濃淡値強調曲線 F (CMYK) .。
FOGRA44
ISO 12647-2:2004/Amd 1、 ISO 12647-2 に従っ たオ フ セ ッ ト 印刷、 用紙 タ イ プ 4 (上質オ フ セ ッ ト
紙) 115 g/m2、 非周期ス ク リ ーン処理、 濃淡値強調曲線 F (CMYK)。
新聞用紙のための IFRA 規格群 (www.ifra.com)
IFRA26
ISO/DIS 12647-3:2004、 コ ール ド セ ッ ト オ フ セ ッ ト 印刷、 接点露出ネガ圧版または コ ン ピ ュ ー タ
ト ゥ プ レー ト (調子値増大 26%)、 新聞用紙、 ス ク リ ーン線数 40/cm。
IFRA30
ISO/DIS 12647-3:2004、 コ ール ド セ ッ ト オ フ セ ッ ト 印刷、 接点露出ネガ圧版または コ ン ピ ュ ー タ
ト ゥ プ レー ト (調子値増大 30%)、 新聞用紙、 ス ク リ ーン線数 40/cm。 (主 と し て米国に適応)
Eurostandard System Brunner (www.systembrunner.com)
EUROSB104
Eurostandard System Brunner 仕様に従っ たオ フ セ ッ ト 印刷、 ISO 12647-2:2004 許容範囲内、 用紙 タ
イ プ : コ ー ト 紙/セ ミ マ ッ ト 紙、 115 g/m2、 TVI 15%,、 ス ク リ ーン線数 60/cm、 詳 し く は仕様書を
参照。
EUROSB204
Eurostandard System Brunner 仕様に従っ たオ フ セ ッ ト 印刷、 ISO 12647-2:2004 許容範囲内、 軽量
コ ー ト 木材パルプ紙、 80 g/m2、 TVI 15%,、 ス ク リ ーン線数 60/cm、 詳 し く は仕様書を参照。
日本の規格群
JC200103
Japan Color 2001 コ ー ト 紙 : ISO 12647-2:2004、 枚葉オ フ セ ッ ト 印刷、 ポジ版、 用紙 タ イ プ 3 ( コ ー
ト 紙、 105 g/m2)、 ス ク リ ーン線数 69/cm。
JC200104
Japan Color 2001 上質紙 : ISO 12647-2:2004、 枚葉オ フ セ ッ ト 印刷、 ポジ版、 用紙 タ イ プ 4 (上質
紙、 105 g/m2)、 ス ク リ ーン線数 69/cm。
JCN2002
Japan Color 2002 新聞印刷用 : ISO/DIS 12647-3:2004、 コ ール ド セ ッ ト オ フ セ ッ ト 印刷、 ネガ版、
新聞用紙、 ス ク リ ーン線数 39/cm。
JCW2003
Japan Color 2003 商業オ フ 輪用 : ISO 12647-2:2004、 ヒ ー ト セ ッ ト オ フ セ ッ ト 印刷、 ポジ版、 用紙
タ イ プ 3 ( コ ー ト 紙、 70 g/m2)、 ス ク リ ーン線数 69/cm。
148
第 8 章 : 色関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
8.3 パ タ ー ン と シ ェ ーデ ィ ン グ
VB RB Function begin_pattern(width As Double, height As Double,
xstep As Double, ystep As Double, painttype As Long) As Long
C# int begin_pattern(double width, double height, double xstep, double ystep, int painttype)
パ タ ーン定義を開始 し ます。
width ・ height
パ タ ーンの外接枠の寸法を、 ポ イ ン ト 単位で指定 し ます。
xstep ・ ystep 何 ら かのオブジ ェ ク ト を描線 し た り 塗っ た り す る 際に、 パ タ ーン を繰 り 返
し 配置す る 時の変位。 こ れは、 多 く の用途で、 パ タ ーンのそれぞれ width ・ height と 同 じ
値に設定 し ます。
painttype こ のパ ラ メ タ は、 パ タ ーン が自分自身で色指定を含んでい る か、 それ と も パ
タ ーン が塗 り や描線に使われ る 際に カ レ ン ト の塗 り 色や描線色で着色 さ れ る ス テ ン シル
と し て使われ る か を指定 し ます。
> パ タ ーンが、setcolor( ) への 1 度ない し 複数回の呼び出 し で着色 さ れてい る 場合や、画像
ま たは取 り 込み PDF ページ を配置 し てい る 場合は、painttype=1 を用い る 必要があ り ま
す。
> パ タ ーンが ま っ た く 色指定を含ま ない場合は、 painttype=2 を用い る 必要があ り ます。
こ の場合、 パ タ ーン が塗 り や描線に使われ る 際には、 カ レ ン ト の塗 り 色や描線色が適
用 さ れます。 painttype=2 の場合、 画像マ ス ク を使 う こ と も で き ます。 パ タ ーン を使 う
前に、 setcolor( ) を呼び出 し て カ レ ン ト 色を設定する 必要があ り ます。 こ のカ レ ン ト 色
の色空間は、 それ自体が他のパ タ ーンに基づかない も のでなければな り ません。
painttype で誤っ た値を与え る と 、 望ま し く ない動作が起 こ る 可能性があ り ます。
戻り値 パ タ ーンハン ド ル。以後のsetcolor( )への呼び出 し で、文書ス コ ープが終わ る ま で使え ます。
詳細
こ の関数は、 テ キ ス ト ・ グ ラ フ ィ ッ ク ・ 色状態パ ラ メ タ をすべてデフ ォ ル ト に リ セ ッ ト し
て、 グ ロ ーバルな topdown パ ラ メ タ に従っ て座標系を定義 し ます。 パ タ ーン定義の最中
は、 ハ イ パーテ キ ス ト 関数 と 、 画像を開 く 関数は使っ てはいけ ませんが、 テ キ ス ト ・ グ ラ
フ ィ ッ ク ・ 色関数 (定義中のパ タ ーン以外で) はすべて使え ます。
スコープ 文書 ・ ページ。 こ の関数はパ タ ーン ス コ ープを開始 さ せます。 対応す る end_pattern( ) と
必ず対に し て呼び出す必要があ り ます。
パラメタ topdown
VB RB Sub end_pattern( )
C# void end_pattern( )
パ タ ーン定義を完了 し ます。
スコープ パ タ ーン。 こ の関数はパ タ ーン ス コ ープを終了 さ せます。 対応す る begin_pattern( ) と 必
ず対に し て呼び出す必要があ り ます。
8.3 パ タ ーン と シ ェ ーデ ィ ング
149
VB RB Function shading_pattern(shading As Long, optlist As String) As Long
C# int shading_pattern(int shading, String optlist)
シ ェ ーデ ィ ン グ パ タ ー ン を、 シ ェ ーデ ィ ン グ オ ブ ジ ェ ク ト を 使 っ て 定義 し ま す (要
PDF 1.4)。
shading
shading( ) に よ っ て返 さ れたシ ェーデ ィ ン グハン ド ル。
optlist シ ェ ーデ ィ ン グパ タ ーンのグ ラ フ ィ ッ ク 書式を表 7.2 に従っ て記述 し たオプシ ョ
ン リ ス ト : gstate
戻り値 パ タ ーンハン ド ル。以後のsetcolor( )への呼び出 し で、文書ス コ ープが終わ る ま で使え ます。
詳細
こ の関数を使 う と 、 任意のオブジ ェ ク ト を シ ェーデ ィ ン グで塗 る こ と がで き ます。 そのた
めには、shading( ) を使っ てシ ェ ーデ ィ ン グハン ド ルを取得する 必要があ り 、 それか ら 、 こ
のシ ェーデ ィ ン グに も と づいて shading_pattern( ) を使っ てパ タ ーン を定義す る 必要があ
り ます。 そ し て最終的に、 こ のパ タ ーンハン ド ルを setcolor( ) に与えれば、 カ レ ン ト 色を
シ ェーデ ィ ン グパ タ ーンに設定す る こ と がで き ます。
スコープ 文書 ・ ページ ・ フ ォ ン ト
VB RB Sub shfill(shading As Long)
C# void shfill(int shading)
領域 を シ ェ ーデ ィ ン グ で、 シ ェ ーデ ィ ン グ オ ブ ジ ェ ク ト に も と づ い て 塗 り ま す (要
PDF 1.4)。
shading
詳細
shading( ) に よ っ て返 さ れたシ ェーデ ィ ン グハン ド ル。
こ の関数を使えば、 shading_pattern( ) と setcolor( ) を使わな く て も 、 シ ェーデ ィ ン グ を使
う こ と がで き ます。 ただ し こ れは、 塗 る べ き オブジ ェ ク ト の形がシ ェーデ ィ ン グ自体の形
と 同 じ と い う 、 単純な形に対 し てのみ動作 し ます。 カ レ ン ト 切 り 抜 き 領域がシ ェーデ ィ ン
グで塗 ら れ る ので (シ ェ ーデ ィ ン グの extend0 ・ extend1 オプシ ョ ンに従っ て)、 一般に こ
の関数は、 clip( ) と 組み合わせて使い ます。
スコープ ページ ・ パ タ ーン (パ タ ーンの painttype が 1 の場合のみ) ・ テ ン プ レー ト ・ グ リ フ (Type
3 フ ォ ン ト の colorized オプシ ョ ンが true の場合のみ) ・ 文書
VB RB Function shading(shtype As String, x0 As Double, y0 As Double, x1 As Double, y1 As Double,
c1 As Double, c2 As Double, c3 As Double, c4 As Double, optlist As String) As Long
C# int shading(String shtype, double x0, double y0, double x1, double y1,
double c1, double c2, double c3, double c4, String optlist)
カ レ ン ト 塗 り 色か ら 別の色へのブ レ ン ド を定義 し ます (要 PDF 1.4)。
shtype シ ェ ーデ ィ ン グの種類。 線形シ ェ ーデ ィ ン グ を表す axial か、 ま たは円形の放射
シ ェーデ ィ ン グ を表す radial にす る 必要があ り ます。
x0 ・ y0 ・ x1 ・ y1 線形シ ェーデ ィ ン グの場合、 (x0, y0) と (x1, y1) はシ ェーデ ィ ン グの始点
と 終点の座標。 放射シ ェーデ ィ ン グの場合、 こ れ ら の点は開始円 と 終了円の中心を指定 し
ます。
150
第 8 章 : 色関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
c1 ・ c2 ・ c3 ・ c4 シ ェーデ ィ ン グの終点の色値であ り 。setcolor( ) の色引数 と 同様にカ レ ン
ト 塗 り 色空間で解釈 さ れます。 カ レ ン ト 塗 り 色空間が ス ポ ッ ト カ ラ ーの と き は c1 は無視
さ れ、 c2 で色の濃 さ を指定 し ます。
optlist シ ェ ーデ ィ ン グの諸特性を表 8.6 に従っ て記述 し たオプシ ョ ン リ ス ト 。 次のオプ
シ ョ ンが使え ます : antialias ・boundingbox ・ domain ・ extend0 ・ extend1 ・ N ・ r0 ・ r1 ・ startcolor
戻り値
シ ェーデ ィ ン グハン ド ル。 以後の shading_pattern( ) ・ shfill( ) への呼び出 し で、 カ レ ン ト
の文書ス コ ープ を終え る ま で使え ます。
詳細
カ レ ン ト 塗 り 色が開始色 と し て使われます。それはパ タ ーンに も と づいた色であ っ てはい
け ません。
スコープ 文書 ・ ページ ・ フ ォ ン ト
表 8.6 shading( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明 ・ と り う る値
antialias
(論理値) シ ェ ーデ ィ ングにおいて ア ン チエ イ リ アシ ングを有効にするかど う かを指定 し ます。 デ
フ ォ ル ト : false
boundingbox
(矩形) シ ェ ーデ ィ ングの外接枠をユーザー座標で定義 し た矩形。 こ の外接枠は、 シ ェ ーデ ィ ング
が塗られる際に一時的な ク リ ッ ピ ングパス と し て適用 さ れます (カ レ ン ト ク リ ッ ピ ングパスが効
力を持っ ている と きはそれに加えて)。 こ のオプ シ ョ ンは、 clip( ) を適用せずにシ ェ ーデ ィ ング を
切 り 抜 く のに有用で し ょ う 。
domain
(float 2 個の リ ス ト ) 媒介変数 t の限界値を指定 し た 2 個の数値。 こ の変数は、 色勾配が軸の始点
と 終点の間を変動するにつれて、 こ の 2 値の間を線形的に変動する と 考え られます。 デ フ ォル ト :
{0 1}
extend0
(論理値) シ ェ ーデ ィ ング を始点よ り 先へ拡げるかど う かを指定 し ます。 デ フ ォ ル ト : false
extend1
(論理値) シ ェ ーデ ィ ング を終点よ り 先へ拡げるかど う かを指定 し ます。 デ フ ォ ル ト : false
N
(float) 色遷移関数に対する累乗指数。 > 0 にする必要があ り ます。 デ フ ォ ル ト : 1
r0
(float。 放射シ ェ ーデ ィ ングのみ。 その場合は必須) 開始円の半径
r1
(float。 放射シ ェ ーデ ィ ングのみ。 その場合は必須) 終了円の半径
startcolor
(色) 開始点の色。 こ のオプ シ ョ ンは、 こ の関数を カ レ ン ト 色か ら独立にするのに有用で し ょ う 。
デ フ ォル ト : カ レ ン ト 塗 り 色
8.3 パ タ ーン と シ ェ ーデ ィ ング
151
152
第 8 章 : 色関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
9 画像 ・ テ ン プ レー ト 関数
こ の節に関連す る パ ラ メ タ と 値のキー名を表 9.1 ・ 表 9.2 に示 し ます (21 ページ 「2.2 パ
ラ メ タ ・ オプシ ョ ン処理」 参照)。
表 9.1 get/set_parameter( ) の画像関連キー一覧
キー
説明
honoriccprofile
画像内に埋め込まれている ICC カ ラ ープ ロ フ ァ イルを読み込んで、 それを画像デー タ に適
用 し ます。 デ フ ォル ト : true
renderingintent
画像に対する レ ン ダ リ ング イ ン テ ン ト 。 デ フ ォ ル ト : Auto。
PDF フ ァ イルの中で レ ン ダ リ ング イ ン テ ン ト を一切指定せずに、 デバイ スのデ
フ ォル ト のイ ン テ ン ト を使います。 代表的用途 : 未知のケース
AbsoluteColorimetric
デバイ スの白色点 (紙白等) に対する補正を一切行いません。 色域外にあ る色
は、 デバイ スの色域の中の も っ と も近い値にマ ッ プ さ れます。 代表的用途 : 特
色の厳密な再現。 それ以外の用途には推奨 さ れません
RelativeColorimetric
色デー タ は、 白色点を互いにマ ッ プ し 、 色を若干シ フ ト さ せて、 デバイ スの色
域にスケール さ れます。 代表的用途 : 線画
Auto
Saturation 色の彩度を保つため、 色値はシ フ ト さ れる こ と があ り ます。 代表的用途 : ビ ジ
ネスグ ラ フ ィ ッ ク
Perceptual 自然な見ばえにな る よ う 、 色間の関係を保つため、 色域内外両方の色を変更 し
ます。 代表的用途 : スキ ャ ン画像
表 9.2 get/set_value( ) の画像関連キー一覧
キー
説明
imagewidth
imageheight
非推奨。 info_image( ) で imagewidth ・ imageheight キーを指定 し て く だ さ い。
image:iccprofile
非推奨。 info_image( ) で iccprofile キーを指定 し て く だ さ い。
orientation
非推奨。 info_image( ) で orientation キーを指定 し て く だ さ い。
resx ・ resy
非推奨。 info_image( ) で resx・resy キーを指定 し て く だ さ い。
153
9.1 画像
ク ッ ク ブ ッ ク 完全な コ ー ド サン プルが ク ッ ク ブ ッ クの images/starter_image ト ピ ッ ク にあ り ます。
VB RB Function load_image(imagetype As String, filename As String, optlist As String) As Long
C# int load_image(String imagetype, String filename, String optlist)
デ ィ ス ク ベース か仮想の画像フ ァ イ ルを、 さ ま ざ ま なオプシ ョ ンに従っ て開き ます。
imagetype 文字列 auto にす る と 、 PDFlib に画像フ ァ イ ル形式を自動検出す る よ う 指示
し ます ( こ れは CCITT ・ raw 画像に対 し ては不可能です) 。 画像形式を明示的に文字列
bmp ・ ccitt ・ gif ・ jbig2 (PDF 1.4 以上) ・ jpeg ・ jpeg2000 (PDF 1.5 以上) ・ png ・ raw ・ tiff
のいずれかで指定す る と 、 若干速度が向上 し ます。 種別 ccitt は、 CCITT 圧縮 さ れた画像
デー タ の入っ た TIFF フ ァ イ ル と は別物です。
filename (名前文字列。グ ロ ーバルな filenamehandlingオプシ ョ ン ま たはパ ラ メ タ に従っ
て解釈 さ れます、 表 2.2 参照) 一般に、 開 き たい画像フ ァ イ ルの名前。 こ れは、 ロ ーカル
フ ァ イ ルか仮想フ ァ イ ルの名前にす る 必要があ り ます。 PDFlib は、 URL か ら は画像デー
タ を取 り 寄せません。
指定 し た フ ァ イ ル名の フ ァ イ ルが見つか ら ず、 かつ imagetype=auto に し てい る と き
は、 PDFlib は自動的に適切な フ ァ イ ル名拡張子を決定 し よ う と し ます。 PDFlib は、 与え ら
れた filename に以下の一覧の拡張子をすべてつけ てみて (小文字 と 大文字の両方で) 、
searchpath で指定 し てい る デ ィ レ ク ト リ の中にその名前の フ ァ イ ルを見つけ よ う と し ま
す:
.bmp・.ccitt・.g3・.g4・.fax・.gif・.jbig2・.jb2・.jpg・.jpeg・.jpx・.jp2・.jpf・.jpm・
.j2k・.png・.raw・.tif・.tiff
optlist 画像関連の特性を表 9.3 に従っ て指定 し たオプシ ョ ン リ ス ト 。 以下のオプシ ョ ン
が使え ます :
> 一般オプシ ョ ン : errorpolicy (表 2.6 参照)
> 色関連オプシ ョ ン群 : colorize ・ honoriccprofile ・ iccprofile ・ invert ・ renderingintent
> ク リ ッ ピ ン グ ・ マ ス ク ・ 等価オプシ ョ ン群 : alphachannelname ・ clippingpathname ・
honorclippingpath ・ ignoremask ・ mask ・ masked
> 画像を使 う ための特殊な PDF 機能群 : georeference ・ iconname ・ template
> JBIG2 画像のためのオプシ ョ ン群 : copyglobals ・ imagehandle
> 画像デー タ を処理す る ためのオプシ ョ ン群 : cascadedflate ・ ignoreorientation ・ inline ・
page ・ passthrough
> その他のオプシ ョ ン群 : interpolate ・ layer ・ metadata ・ OPI-1.3 ・ OPI-2.0
戻り値 画像ハン ド ル。 以後の画像関連の呼び出 し で使え ます。 errorpolicy=return の場合、 戻 り 値
-1 はエ ラ ーを示すので、 そ う でないか を呼び出 し 側で検査す る 必要があ り ます。 返 さ れ
た画像ハン ド ルは、 複数の PDF 文書にわた っ て再利用す る こ と はで き ません。 関数の呼
び出 し が失敗 し た と き は、 その失敗の原因を get_errmsg( ) で取得する こ と がで き ます。
詳細
154
こ の関数は、 imagetype パ ラ メ タ で決定 さ れ る 、 対応形式のいずれかの ラ ス タ グ ラ フ ィ ッ
ク フ ァ イ ルを開いて分析 し 、 その画像デー タ を出力文書へコ ピー し ます。 こ の関数は、 出
力上にいかな る 視覚効果を も 与え ません。 取 り 込んだ画像を、 生成す る 出力文書の ど こ か
に実際に配置す る には、 fit_image( ) を使 う 必要があ り ます。 同 じ 画像を、 1 つの生成文書
第 9 章 : 画像 ・ テ ン プ レー ト 関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
内で複数回開 く こ と は推奨 し ません。 なぜな ら 、 画像デー タ 本体が出力文書へい く つ も コ
ピー さ れて し ま う か ら です。
PDFlib は、 与え ら れた filename の画像フ ァ イ ルを開 き 、 内容を処理 し て、 呼び出 し か
ら 戻 る 前に フ ァ イ ルを閉 じ ます。 画像は 1 つの文書内に何回で も 貼 る こ と がで き ますが
(fit_image( ) 参照)、画像フ ァ イ ル自体は、 こ の呼び出 し の後 も 開かれた ま ま にな っ てい る
のではあ り ません。
imagetype = raw か ccitt の場合には、 width ・ height ・ components ・ bpc オプシ ョ ン を
与え る 必要があ り ます。 なぜな ら 、 それ ら を PDFlib は画像デー タ か ら 取 り 出す こ と がで
き ないか ら です。 画像に本当に合っ たオプシ ョ ン値を与え る のは、 ユーザー側の役割で
す。 そ う し ない と 、 破損 し た PDF 出力が生成 さ れ る こ と があ り 、 Acrobat か ら Insufficient
data for an Image メ ッ セージが出 さ れ る 可能性があ り ます。
imagetype = raw の場合には、 与え る 画像デー タ のサ イ ズは [width × components ×
bpc ÷ 8] × height バ イ ト に等 し く なければな り ません。 こ こ で角カ ッ コ 内は小数点以下
を切 り 上げて整数 と し ます。 画像のサンプルは、 標準の PostScript/PDF の順序であ る と 見
な さ れます。 すなわち、 上か ら 下、 左か ら 右 と い う 順序です (座標変換が適用 さ れていな
い も の と し て)。 16 ビ ッ ト のサンプルは、 最上位バ イ ト を先頭に し て (ビ ッ グエンデ ィ ア
ン、 ま たは 「Mac」 バ イ ト 順序 と 呼ばれます) 与え る 必要があ り ます。 ピ ク セル値の極性
については 141 ページ 「色空間」 で解説 し た も の と 同様です。 bpc が 8 未満であ っ て も 、
各ピ ク セル行はバ イ ト の区切 り で開始 さ れ、そ し てバ イ ト 内では色値は左か ら 右へ格納 さ
れてい き ます。 画像のサンプルは必ず独立 し てい ます。 すなわち、 最初の ピ ク セルのすべ
ての色値が最初に与え ら れて、 次に 2 番目のピ ク セルのすべての色値が与え ら れ、 以下同
様です。
PDF/X-1a : RGB 画像は許 さ れません。
PDF/X-3 ・ 4 ・ 5 : グ レース ケール画像の場合は、 出力 イ ン テ ン ト がグ レース ケールか
CMYK のデバ イ ス でない と き は、 begin_page_ext( ) で defaultgray オプシ ョ ン を設定 し て
お く 必要があ り ます。 RGB 画像の場合は、 出力 イ ン テ ン ト が RGB デバ イ ス でない と き は、
begin_page_ext( ) で defaultrgb オプシ ョ ン を設定 し てお く 必要があ り ます。 CMYK 画像の
場合は、出力 イ ン テ ン ト が CMYK デバ イ ス でない と き は、begin_page_ext( ) で defaultcmyk
オプシ ョ ン を設定 し てお く 必要があ り ます。 JBIG2 画像は許 さ れません。
PDF/A : グ レース ケール画像の場合は、 出力 イ ン テ ン ト が (いずれの種別 も ) 指定 さ
れていない と き は、 begin_page_ext( ) で defaultgray オプシ ョ ン を設定 し てお く 必要があ
り ます。
RGB 画像の場合は、 出力 イ ン テ ン ト が RGB デバ イ ス でない と き は、 begin_page_ext( )
で defaultrgb オプシ ョ ン を設定 し てお く 必要があ り ます。
CMYK 画像の場合は、 出力 イ ン テ ン ト が CMYK デバ イ ス でない と き は、 begin_page_
ext( ) で defaultcmyk オプシ ョ ン を設定 し てお く 必要があ り ます。
スコープ inline オプシ ョ ン を与えていない と き は、 ス コ ープは文書 ・ ページ ・ フ ォ ン ト であ り 、 こ
の関数は、 対応す る close_image( ) と 必ず対に し て呼び出す必要があ り ます。 文書ス コ ー
プか フ ォ ン ト ス コ ープで画像を読み込む と 、 ページ ス コ ープで読み込む場合に比べて、 若
干出力サ イ ズ を小 さ く す る こ と がで き ます。
inline オプシ ョ ン を与えてい る と き は、 ス コ ープはページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ
リ フ であ り 、 close_image( ) を呼び出 し てはいけ ません。
パラメタ 表 9.1 ・ 表 9.2 参照
9.1 画像
155
表 9.3 load_image( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
alphachannel- (名前文字列。 TIFF 画像では不可。 ignoremask=true にする と 無視 さ れます) 指定 し た名前のアル
name
フ ァ チ ャ ン ネルを画像フ ァ イルか ら読み取 り 、 それを ソ フ ト マ ス ク と し て画像に適用 し ます。 そ
の名前のチ ャ ン ネルが画像 フ ァ イル内に存在 し ている必要があ り ます。 デ フ ォル ト : 画像内の最
初のアルフ ァ チ ャ ン ネル
bitreverse
(論理値。 imagetype=ccitt のみ) true にする と 、 圧縮デー タ 内のすべてのバイ ト のビ ッ ト 反転を
し ます。 デ フ ォ ル ト : false
bpc
(整数。 imagetype=raw のみ。 その場合は必須) 色要素あた り のビ ッ ト 数。 1 ・ 2 ・ 4 ・ 8 のいずれか
にする必要があ り ます。 PDF 1.5 では bpc=16 も使え ます。
cascadedflate
(論理値。 imagetype=jpeg のみ) true にする と 、 JPEG 圧縮 さ れた画像デー タ に、 Flate 圧縮の追
加のレ イ ヤーが適用 さ れます。 こ れは、 同色の広い領域を持つ画像等、 特定の場合には、 出力
フ ァ イルサイ ズを減 ら す可能性があ り ます。 ただ し 、 多 く の タ イ プの画像内容について、 このオ
プ シ ョ ンはフ ァ イルサイ ズを減ら さ ず、 む し ろ出力が大き く な る可能性も あ り ます。 デ フ ォル ト :
false
clippingpathname
(文字列。 imagetype=tiff ・ jpeg のみ。 honorclippingpath=false にする と 無視 さ れます) 指定 し
た名前のパス を画像 フ ァ イルから 読み込んで、 それを ク リ ッ ピ ングパス と し て使います。 その名
前のパスが画像フ ァ イル内に存在 し ている必要があ り ます。 特別な名前 Work Path を使 う と 、
Photoshop で作成 さ れた一時パス を指定する こ と がで き ます。 デ フ ォ ル ト : 画像 フ ァ イル内で ク
リ ッ ピ ングパス と し て与え られているパスの名前
colorize
(スポ ッ ト カ ラ ーハン ド ル。 iccprofile オプ シ ョ ン を与え る と 無視 さ れます) スポ ッ ト カ ラ ーハン
ド ルで画像に着色 し ます。 こ のハン ド ルは、 makespotcolor( ) で取得 し てお く 必要があ り ます。 画
像は、 白黒かグ レースケールの画像でなければな り ません。
components
(整数。 imagetype=raw のみ。 その場合は必須) 画像要素 (チ ャ ン ネル) の数。 1 ・ 3 ・ 4 のいずれ
かにする必要があ り ます。
copyglobals
(キーワー ド 、 または整数の リ ス ト 。 imagetype=jbig2 のみ) JBIG2 ス ト リ ーム内のどのグ ローバ
ルセグ メ ン ト が PDF へ複製 さ れるかを指定 し ます。 JBIG2 ス ト リ ーム内にグ ローバルセグ メ ン ト
が全然ない と きは、 こ のオプ シ ョ ンは全 く 効力を持ち ません (デ フ ォル ト : current) :
all
JBIG2 ス ト リ ーム内のすべてのページに対するグ ローバルセグ メ ン ト を PDF へ複製 し
ます。 こ れは、 同 じ JBIG2 ス ト リ ームから 複数のページが取 り 込まれる場合には、 用い
る必要があ り ます。 同 じ JBIG2 ス ト リ ームから さ ら な るページ群が後で取 り 込まれる場
合には、 imagehandle オプ シ ョ ン を用いる必要があ り ます。
current
JBIG2 ス ト リ ーム内のカ レ ン ト ページ (すなわち、 page オプ シ ョ ン で指定 し たページ)
に対 し て必要なグローバルセグ メ ン ト のみを PDF へ複製 し ます。 こ れは、 同 じ JBIG ス
ト リ ーム内から さ ら な るページが取 り 込まれない場合には、 用いる必要があ り ます。
georeference (オプ シ ョ ン リ ス ト 。 PDF 1.7ext3) 地理空間測量に利用する ために画像に関連づけ ら れる地球ベー
ス座標系の記述を指定 し ます。 詳 し く は 220 ページ 「13.2 地理空間機能」 を参照。
height
(整数。 imagetype=raw ・ ccitt のみ。 その場合は必須) 画像の高 さ を、 ピ ク セル単位で指定 し ま
す。
honorclippingpath
(論理値。 imagetype=tiff ・ jpeg のみ) 画像フ ァ イルから、 も し あればク リ ッ ピ ングパス を読み込
んで、 それを画像に適用 し ます。 デ フ ォ ル ト : true
honoriccprofile
(論理値。 imagetype=jpeg ・ png ・ tiff のみ。 colorize オプ シ ョ ン を与え ている と きは false に設
定 さ れます) 埋め込まれている ICC プ ロ フ ァ イル (も し あれば) を読み込んで、 それを画像に適
用 し ます。 デ フ ォル ト : グ ローバルな honoriccprofile パラ メ タ の値。
156
第 9 章 : 画像 ・ テ ン プ レー ト 関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 9.3 load_image( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
iccprofile
(ICC ハン ド ル。 imagetype=jpeg ・ jbig2 ・ png ・ tiff のみ) 画像に適用 さ れる ICC プ ロ フ ァ イルの
ハン ド ル。 デ フ ォル ト : プ ロ フ ァ イルが画像内に存在 し 、 かつ honoriccprofile=true に し ている
と きは、 その埋め込まれた プ ロ フ ァ イル。
iconname
(ハイパーテキス ト 文字列。 inline=true にする と 無視 さ れます。 template=true を強制 し ます)
画像に名前を付けて、 JavaScript で参照で き る よ う に し ます。 た と えば、 画像を フ ォ ーム フ ィ ール
ド のア イ コ ン と し て使いたい と き に有用です。
ignoremask
(論理値。 PDF/X-1 ・ PDF/X-3 ・ PDF/A モー ド の場合、 アル フ ァ チ ャ ン ネルを持つ画像に対 し ては
true に設定する必要があ り ます) 画像内の透過情報 と アルフ ァ チ ャ ン ネルを無視 し ます。 デ フ ォ
ル ト : false
ignoreorientation
(論理値。 imagetype=tiff のみ) 画像内の orientation タ グ をすべて無視 し ます。 これは、 誤 っ た向
き情報を補正 し たい と き に有用です。 デ フ ォル ト : false
imagehandle (画像ハン ド ル。 imagetype=jbig2 のみ) 同 じ JBIG2 ス ト リ ームから作成 さ れた別の画像に付け ら
れた既存のグ ローバルセグ メ ン ト への参照を追加 し ます。 こ の画像は、 以前に copyglobals=all
オプ シ ョ ン で読み込まれている必要があ り ます。 カ レ ン ト JBIG2 ス ト リ ーム以外のフ ァ イルか ら
作成 さ れている画像を参照する こ と はエ ラ ーです。 指定 し た画像ハン ド ルは、 閉 じ られていては
いけません。 デ フ ォル ト : 画像ハン ド ルな し 、 すなわち、 新規 PDF オブ ジ ェ ク ト が、 カ レ ン ト
ページのみに対するすべての必要なグローバルセグ メ ン ト を持っ て生成 さ れます
inline
(論理値。 imagetype=ccitt ・ jpeg ・ raw のみ) true にする と 、 画像は直接、 ページ ・ パ タ ーン ・
テ ン プ レー ト ・ グ リ フ のいずれかの記述の内容ス ト リ ーム内へ書き込まれます。 こ のオプ シ ョ ン
は暗黙的に、 fit_image( ) と close _image( ) を呼び出 し ます (PDFlib チ ュ ー ト リ アル参照)。 こ のオプ
シ ョ ン を用いる こ と は、 Type 3 フ ォ ン ト のビ ッ ト マ ッ プグ リ フ に対 し てのみ推奨 さ れます。 デ
フ ォ ル ト : false
interpolate
(論理値。 PDF/A では false にする必要があ り ます) 画像の内挿を有効に し て、 画面や紙の上での
見ばえ を向上 さ せます。 これは、 Type 3 フ ォ ン ト 内のグ リ フ記述のためのビ ッ ト マ ッ プ画像の場
合に有用です。 デ フ ォ ル ト : false
invert
(論理値。 imagetype=jpeg2000 では mask=true に し ていなければ不可) 画像を反転 さ せます (明る
い色 と 暗い色を入れ換え)。 これを使 う と 、 ア プ リ ケーシ ョ ンに よ っ て異な っ て解釈 さ れる画像
を、 適切に扱 う こ と がで き ます。 デ フ ォル ト : false
K
(整数。 imagetype=ccitt のみ) 圧縮方式選択のための CCITT のパラ メ タ 。 デ フ ォ ル ト : 0
layer
-1
G4 圧縮
0
一次元 G3 圧縮 (G3-1D)
1
一 ・ 二次元混合圧縮 (G3, 2-D)
(レ イ ヤーハン ド ル。 PDF 1.5) 画像を属 さ せたい レ イ ヤー。 ただ し 、 こ の画像を配置する前に
begin_layer( ) で別のレ イ ヤーが有効に さ れていない場合にかぎ り ます。 こ の画像を配置する前に
begin_layer( ) を呼び出 し て レ イ ヤーを有効に さ せる と 、 こ の画像の layer オプ シ ョ ンは上書き さ れ
ます。 こ の画像の layer オプ シ ョ ンが上書き さ れないよ う にするには、 この画像を配置する前に
end_layer( ) を呼び出 し て く だ さ い。
9.1 画像
157
表 9.3 load_image( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
mask
(論理値。 イ ンデ ッ ク ス カ ラ ーを含め、 色要素が 1 個の画像のみ) 画像はマス ク と し て使われま
す。 こ れは 1 ビ ッ ト のマス ク では必須ですが、 ピ ク セルあた り のビ ッ ト 数が 1 よ り 大き いマス ク
では必須ではあ り ません。 ただ し 、 ビ ッ ト 数が 1 よ り 大き いマ ス ク を使 う には PDF 1.4 が必要で
す。 デ フ ォル ト : false。 マ ス ク には 2 通 り の使い方があ り ます :
> 他の画像を マス ク : 返 さ れた画像ハン ド ルは、 以後の呼び出 し で他の画像を開 く と き に使 う こ と
がで き、 masked オプ シ ョ ンに与え る こ と がで き ます。
> 着色 さ れた透過画像を配置 : 画像内の、 0 のビ ッ ト のピ ク セルを透過 と し て扱い、 1 のビ ッ ト のピ
ク セルを カ レ ン ト 塗 り 色で着色 し ます。
こ のオプ シ ョ ンは ignoremask=true を強制 し ます。 なぜな ら、 マス ク と し て用い ら れる画像は、
それ自身が内部マス ク を持つ こ と はで き ないか ら です。
masked
(画像ハン ド ル) カ レ ン ト 画像に対 し て マス ク と し て適用 し たい画像の画像ハン ド ル。 この画像ハ
ン ド ルは、 あ らか じ め load_image( ) を呼び出 し て返 さ れ、 まだ閉 じ ていない も のです。 PDF 1.3 互
換モー ド では、 マス クハン ド ルは 1 ビ ッ ト 画像を参照 し ている必要があ り 、 かつ、 mask オプ シ ョ
ン を指定 し て読み込んであ る必要があ り ます。 PDF/A ・ PDF/X-1/3 モー ド では、 こ のオプ シ ョ ン
は 1 ビ ッ ト マス クの場合のみ許 さ れます。
metadata
(オプ シ ョ ン リ ス ト 。 PDF 1.4) 画像に対する メ タ デー タ を与え ます (225 ページ 「14.2 XMP メ タ
デー タ 」 参照)。
OPI-1.3
(オプ シ ョ ン リ ス ト 。 PDF/A ・ PDF/X では不可) OPI 1.3 の PostScript コ メ ン ト を オプ シ ョ ン名 と し
て入れたオプ シ ョ ン リ ス ト 。 以下の項目は必須です : ALDImageFilename (文字列1) ・
ALDImageDimensions (整数の リ ス ト ) ・ ALDImageCropRect (整数に よ る矩形) ・ ALDImagePosition
(float の リ ス ト )
以下の項目は必須ではあ り ません :
ALDImageID (文字列) ・ ALDObjectComments (文字列) ・ ALDImageCropFixed (矩形) ・
ALDImageResolution (float の リ ス ト ) ・ ALDImageColorType (キーワー ド 。 Process ・ Spot ・
Separation の う ちのいずれか。 デ フ ォル ト : Spot) ・ ALDImageColorType (範囲 0 ~ 1 の色値 4 個
と 色名 1 個の リ ス ト ) ・ ALDImageTint (float) ・ ALDImageOverprint (論理値) ・ ALDImageType (整数
の リ ス ト ) ・ ALDImageGrayMap (整数の リ ス ト ) ・ ALDImageTransparency (論理値) ・
ALDImageAsciiTag (整数 と 文字列 と の対の リ ス ト )
normalizefilename サブオプ シ ョ ンは、 フ ァ イル名の処理を制御 し ます。 true にする と 、 フ ァ イ
ル名は PDF リ フ ァ レ ン スが義務付けている よ う に正規化 さ れます。 false にする と 、 フ ァ イル名
は何も 変更 さ れずに出力へ コ ピー さ れます。 後者は、 正規化 さ れた フ ァ イル名を適切に処理 し な
いい く つかの OPI サーバを扱 う 際に有用かも し れません。 デ フ ォ ル ト : false
OPI-2.0
(オプ シ ョ ン リ ス ト 。 PDF/A ・ PDF/X では不可) OPI 2.0 の PostScript コ メ ン ト を オプ シ ョ ン名 と し
て入れたオプ シ ョ ン リ ス ト 。 以下の項目は必須です : ImageFilename (文字列 1)
以下の項目は、 両方入れるか、 またはど ち ら も 入れない必要があ り ます :
ImageCropRect (矩形) ・ ImageDimensions (float の リ ス ト )
以下の項目は必須ではあ り ません :
MainImage (文字列) ・ TIFFASCIITag (整数 と 文字列 と の対の リ ス ト ) ・ ImageOverprint (論理値) ・
ImageInks (文字列 full_color か、 または文字列 registration か、 または文字列 monochrome と
イ ンキ名 ・ 濃度を それぞれ指定 し た文字列 ・ float 対 (複数可) と を入れた リ ス ト ) ・
IncludedImageDimensions (整数の リ ス ト ) ・ IncludedImageQuality (整数で値 1 ・ 2 ・ 3 のいずれ
か)
normalizefilename も使え ます (OPI-1.3 参照)。
page
158
(整数。 imagetype=gif ・ jbig2 ・ tiff のみ。 それ以外の形式で使 う と きは 1 にする必要があ り ま
す) 複数ページ画像 フ ァ イルから 、 指定番号の画像を取 り 出 し ます。 最初の画像の番号は 1 です。
要求 し たページが画像フ ァ イル内に見つから ない と きは、 その呼び出 し は失敗 し ます。 デ フ ォ ル
ト :1
第 9 章 : 画像 ・ テ ン プ レー ト 関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 9.3 load_image( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
passthrough
(論理値。 imagetype=tiff ・ jpeg のみ) TIFF ・ JPEG 画像デー タ の処理を制御 し ます。
tiff
(デ フ ォ ル ト : true) true にする と 、 圧縮 さ れた TIFF 画像デー タ は、 可能な ら ば PDF
出力へ直接パススルー さ れます。 こ のオプ シ ョ ン を false に設定する と 、 TIFF 画像が
損傷 し たデー タ や不完全なデー タ を含む と き に役立つ場合があ り ます。
jpeg
(デ フ ォ ル ト : false) false にする と 、 PDFlib は JPEG 画像デー タ を変換 し て、 Acrobat
と の互換性のためのデー タ を ク リ ーン ア ッ プ し ます。 true にする と 、 JPEG 画像デー タ
は PDF 出力へ直接コ ピー さ れます。 マルチスキ ャ ンおよびあ る種の CMYK JPEG 画像に
対 し ては、 こ のオプ シ ョ ンは無視 さ れます。 このオプ シ ョ ン を true に設定する と 、 処
理は若干速 く な る こ と があ り ますが、 ある種のまれな種類の JPEG 画像が Acrobat 上で
正 し く 表示 さ れな く な り ます。
renderingintent
(キーワー ド ) 画像に対する レ ン ダ リ ング イ ン テ ン ト 。 と り う るキーワー ド と その意味については
表 9.1 参照。 デ フ ォ ル ト : グローバルな renderingintent パラ メ タ の値
template
(論理値) true にする と 、 プ レーン な Image XObject ではな く 、 Form XObject (PDFlib ではテ ン プ
レー ト と 呼びます) の中に埋め込んで PDF Image XObject を生成 し ます。 こ れは、 1 つの画像だけ
でで き た フ ォ ーム フ ィ ール ド ア イ コ ンのためのテ ン プ レー ト を作成するのに有用で し ょ う 。 こ れ
はまた、 OPI-1.3 か OPI-2.0 オプ シ ョ ン を使っ ている と きは、 あ る種の OPI サーバ と の互換性のた
めに必要です。 デ フ ォ ル ト : false。 ス コ ープ : 文書
width
(整数。 imagetype=raw ・ ccitt のみ。 その場合は必須) 画像の幅を、 ピ ク セル単位で指定 し ます
1. Windows ユーザーは、 オプ シ ョ ン リ ス ト 内で結果的にパスの中に 1 個のバ ッ ク ス ラ ッ シ ュ を作成する には、 2 個のバ ッ ク ス
ラ ッ シ ュ キ ャ ラ ク タ を並べる必要があ る こ と に留意 し て く だ さ い (9 ページ 「よ く あ る落 と し 穴」 参照)。
VB RB Sub close_image(image As Long)
C# void close_image(int image)
画像を閉 じ ます。
image
詳細
load_image( ) で取得 し た有効な画像ハン ド ル。
こ の関数は、 PDFlib 内部の関連す る 画像構造に対 し てのみ効力を持ち ます。 画像を フ ァ イ
ルか ら 開いていた と し て も 、 画像フ ァ イ ル本体は、 その load_image( ) への呼び出 し が完
了 し た時点ですでに閉 じ ら れてい る ため、 こ の呼び出 し には影響 さ れません。 画像ハン ド
ルは、 こ の関数で閉 じ た後は も う 使え ません。 なぜな ら こ の関数は、 画像 と の PDFlib 内
部の関連を切 る か ら です。
スコープ 文書 ・ ページ ・ フ ォ ン ト 。inline オプシ ョ ン を使っ ていない と き は、対応す る load_image( )
と 必ず対に し て呼び出す必要があ り ます。
VB RB Sub fit_image(image As Long, x As Double, y As Double, optlist As String)
C# void fit_image(int image, double x, double y, String optlist)
画像ま たはテ ンプ レー ト をページ上に、 さ ま ざ ま なオプシ ョ ンに従っ て配置 し ます。
image load_image( ) ま たは begin_template_ext( ) 関数で取得 し た有効な画像ま たはテ ン
プ レー ト ハン ド ル。
x ・ y 画像ま たはテ ンプ レー ト を、さ ま ざ ま なオプシ ョ ンに従っ て貼 り たい参照点の座標
を、 ユーザー座標系で指定 し ます。
9.1 画像
159
optlist 画像はめ込み ・ 処理オプシ ョ ン群を指定 し たプシ ョ ン リ ス ト 。 以下のオプシ ョ ン
が使え ます :
> 表 6.1 に従っ たはめ込みオプシ ョ ン群 :
boxsize・blind・dpi・fitmethod・matchbox・orientate・position・rotate・scale・showborder
> 表 9.4 に従っ た画像処理のためのオプシ ョ ン群 :
adjustpage ・ gstate ・ ignoreclippingpath ・ ignoreorientation
詳細 画像ま たはテ ンプ レー ト (以下、 ま と めてオブジ ェ ク ト と いい ます) は、 参照点 (x, y) に
合わせて配置 さ れ ま す。 デフ ォ ル ト では、 オブジ ェ ク ト の左下隅が参照点に配置 さ れ ま
す。 し か し こ の動作は、 orientate ・ boxsize ・ position ・ fitmethod オプシ ョ ンで変え る こ と
も で き ま す。 デ フ ォ ル ト では、 画像はその解像度の値に従っ て拡縮 さ れ ま す。 こ の動作
は、 dpi ・ scale ・ fitmethod オプシ ョ ン で変え る こ と も で き ます。
スコープ ページ ・ パ タ ーン (パ タ ーンの painttype が 1 か、 ま たは画像がマ ス ク の場合のみ) ・ テ ン
プ レー ト ・ グ リ フ (Type 3 フ ォ ン ト の colorized オプシ ョ ンが true であ る か、 ま たは画像
がマ ス ク の場合のみ)。 こ の関数は、 画像ハン ド ルを close_image( ) で閉 じ ない限 り 、 任意
のページ上で任意の回数呼び出す こ と がで き ます。 .
表 9.4 fit_image( ) ・ fit_pdi_page( ) ・ fill_*block( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
adjustpage
(論理値。 ページス コ ープ でのみ効力を持ち ます。 begin_page_ext( ) で topdown オプ シ ョ ン を与え て
いる と きは不可) カ レ ン ト ページの寸法を、 オブ ジ ェ ク ト に合わせて調整 し 、 ページの右上隅が
オブ ジ ェ ク ト の右上隅プ ラ ス (x, y) と 一致する よ う に し ます。 こ こ で x ・ y は関数の引数です。
MediaBox が調整 さ れ、 それ以外のボ ッ ク ス項目はすべてデ フ ォル ト に リ セ ッ ト さ れます。
position オプ シ ョ ン を値 0 に し て、 以下のよ う な使い方がで き ます :
x ≧ 0 かつ y ≧ 0
オブ ジ ェ ク ト は余白で囲まれます。 こ の余白は、 横方向の厚 さ が y、 縦方向の厚 さ が x
にな り ます。
x < 0 かつ y < 0
画像から 水平 と 垂直の帯が切 り 取 られます。
デ フ ォ ル ト : false
gstate
(グ ラ フ ィ ッ ク状態ハン ド ル) create_gstate( ) で取得 し たグ ラ フ ィ ッ ク状態のハン ド ル。 こ のグ ラ
フ ィ ッ ク状態は、 こ の関数で作成 さ れるすべてのグ ラ フ ィ ッ ク要素に対 し て効力を持ち ます。 デ
フ ォル ト : グ ラ フ ィ ッ ク状態な し (すなわち、 カ レ ン ト 状態が用い られます)
ignoreclippingpath
(論理値。 TIFF ・ JPEG 画像のみ) 画像 フ ァ イルの中に ク リ ッ ピ ン グパスがあ っ て も無視 さ れます。
デ フ ォ ル ト : false、 すなわち ク リ ッ ピ ングパスは適用 さ れます
ignoreorientation
(論理値。 TIFF 画像のみ) 画像内の orientation タ グ をすべて無視 し ます。 こ れは、 誤っ た向き情報
を補正 し たい と き に有用です。 デ フ ォル ト : load_image( ) の ignoreorientation オプ シ ョ ンの値
VB RB Function info_image(image As Long, keyword as String, optlist As String) As Double
C# double info_image(int image, String keyword, String optlist)
画像を組版す る 際の、 寸法な ど の画像特性群を取得 し ます。
image 関数 load_image( )・begin_template_ext( ) のいずれかで取得 し た画像・テ ンプ レー
ト いずれかの有効なハン ド ル。
keyword
160
求め る 情報を表 9.5 に従っ て指定 し た キーワー ド 。
第 9 章 : 画像 ・ テ ン プ レー ト 関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
optlist fit_image( ) に対す る オプシ ョ ン群を指定 し たオプシ ョ ン リ ス ト 。求め ら れた キー
ワー ド の値を決定す る のに関係のないオプシ ョ ンは無視 さ れます。
戻り値
キー ワー ド で要求 し た何 ら かの画像特性の値。要求 し た特性が画像フ ァ イ ル内で得 ら れな
い と き は、こ の関数は 0 を返 し ます。オブジ ェ ク ト ハン ド ルを要求 し た と き は(clippingpath
等) 、 こ の関数はそのオブジ ェ ク ト のハン ド ルを返すか、 あ る いはそのオブジ ェ ク ト が得
ら れない と き は -1 を返 し ます。
詳細
こ の関数は、与えたオプシ ョ ン群に従っ て画像を配置す る ために必要なすべての計算を実
行 し ますが、 ページ上には実際の出力を一切生成 し ません。 画像の参照点は {0 0} と 見な
さ れます。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ ・ 文書 ・ パス
表 9.5 info_image( ) のキーワー ド 一覧
キーワー ド
説明
boundingbox
画像の外接枠のパスハン ド ル
clippingpath
画像の ク リ ッ ピ ングパスのパスハン ド ルか、 あ るいは ク リ ッ ピ ングパスが存在 し ない と き
は -1
filename
画像フ ァ イルの名前 (あてはま る場合は searchpath デ ィ レ ク ト リ を含む)
fitscalex ・ fitscaley
与えたオプ シ ョ ン群に従っ て画像を枠にはめ込んだ結果の拡縮倍率
height
与えたオプ シ ョ ン群に従っ た画像の高 さ をユーザー座標で表 し た も の
iccprofile
画像内に埋め込まれている ICC プ ロ フ ァ イルのハン ド ルか、 あ るいはプ ロ フ ァ イルが全然
存在 し ない と きは -1
imageheight
画像の高 さ を ピ ク セル単位で表 し た もの
imagemask
画像に関連付け られたマス クの画像ハン ド ルか、 あ るいはマス クが付け ら れていないな ら
-1
imagetype
画像の種別 (形式) の文字列番号 :
bmp ・ ccitt ・ gif ・ jbig2 ・ jpeg ・ jpeg2000 ・ png ・ raw ・ tiff
imagewidth
画像の幅を ピ ク セル単位で表 し た もの
mirroringx ・
mirroringy
指定 し たオプ シ ョ ン群に従 っ た画像の横反転 ・ 縦反転 (1 か -1 かで表 さ れます)
orientation
画像の向きの値。 orientation タ グ を含む TIFF 画像については この タ グの値が返 さ れ、 それ
以外の場合にはすべて -1 が返 さ れます。 PDFlib は、 1 以外の向きの値を自動的に補償 し ま
す。
resx ・ resy
画像の横解像度 ・ 縦解像度。 正の値は、 画像の解像度を イ ン チあた り ピ ク セル数 (dpi) で
表 し ます。 値 0 は、 解像度が未知である こ と を意味 し ます。 負の値は、 非正方ピ ク セルの
縦横比を決定する ために縦横相伴 っ て用い られる こ と があ り ますが、 絶対的な意味は一切
持ち ません。
strips
画像ページの数 (あ る種の複数ページ TIFF 画像の場合のみ 1 以外にな り ます)
9.1 画像
161
表 9.5 info_image( ) のキーワー ド 一覧
キーワー ド
説明
targetbox
(open_pdi_page( ) に reference オプ シ ョ ン を与えている と きのみ) タ ーゲ ッ ト ページの外接
枠のパスハン ド ル (targetx1 等を参照)
targetx1 ・ targety1 ・
targetx2 ・ targety2 ・
targetx3 ・ targety3 ・
targetx4 ・ targety4
(begin_template_ext( ) に reference オプ シ ョ ン を与え ている と きのみ) タ ーゲ ッ ト ページの
外接枠矩形の i 番目の隅 (i=1, 2, 3, 4) の位置をユーザー座標で表 し た もの。 こ れ らの値は、
reference オプ シ ョ ンの pdiusebox オプ シ ョ ン で選択 さ れたページ枠に従っ て算出 さ れま
す。
width
与えたオプ シ ョ ン群に従 っ た画像の幅をユーザー座標で表 し た も の
x1 ・ y1 ・ x2 ・ y2 ・
x3 ・ y3 ・ x4 ・ y4
与えたオプ シ ョ ン群に従 っ た画像外接枠矩形の i 番目の隅 (i=1, 2, 3, 4) の位置をユーザー
座標で表 し た もの
162
第 9 章 : 画像 ・ テ ン プ レー ト 関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
9.2 テ ン プ レ ー ト
注 こ の節で解説する テ ン プ レー ト 関数は、PDFlib ブ ロ ッ ク によ る可変デー タ 処理 と は無関係
です。 PDFlib Block Plugin で作成 し たブ ロ ッ クへの流 し 込みを行 う には、 fill_textblock( ) ・
fill_imageblock( ) ・ fill_pdfblock( ) を使い ま す (179 ページ 「11 章 ブ ロ ッ ク 流 し 込み関数
(PPS)」 参照)。
VB RB Function begin_template_ext(width As Double, height As Double, optlist As String) As Long
C# int begin_template_ext(double width, double height, String optlist)
テ ンプ レー ト 定義を開始 し ます。
width ・ height テ ンプ レー ト の外接枠の寸法を、ポ イ ン ト 単位で指定 し ます。こ の width・
height 引数は 0 にす る こ と も で き ます。 こ の場合、 それ ら は end_template_ext( ) で与え る
必要があ り ます。 topdown オプシ ョ ン を true に設定 し た と き は、 height は 0 以外にす る
必要があ り ます。
optlist >テ ンプ レー ト 関連の特性群を指定 し たオプシ ョ ン リ ス ト 。 load_image( ) の以下
のオプシ ョ ンが使え ます (表 9.3 参照) :
iconname ・ layer ・ metadata ・ OPI-1.3 ・ OPI-2.0
> begin_page_ext( ) の以下のオプシ ョ ンが使え ます (表 3.7 参照) :
topdown ・ transparencygroup
> reference オプシ ョ ン (表 9.6 参照)。
戻り値
テ ンプ レー ト ハン ド ル。 以後の画像関連の呼び出 し (特に fit_image( )) で使え ます。 エ
ラ ー発生時には -1 を返 し ます。
詳細
こ の関数は、 テ キ ス ト ・ グ ラ フ ィ ッ ク ・ 色状態パ ラ メ タ をすべてデフ ォ ル ト に リ セ ッ ト し
て、 グ ロ ーバルな topdown パ ラ メ タ に従っ て座標系を定義 し ます。 テ ンプ レー ト 定義の
最中は、 ハ イ パーテ キ ス ト 関数 と 、 画像を開 く 関数は使っ てはいけ ませんが、 テ キ ス ト ・
グ ラ フ ィ ッ ク ・ 色関数はすべて使え ます。
スコープ 文書・ページ。こ の関数はテ ン プ レー ト ス コ ープ を開始 さ せます。対応す る end_template( )
と 必ず対に し て呼び出す必要があ り ます。
VB RB Sub end_template_ext(width As Double, height As Double)
C# void end_template_ext(double width, double height)
テ ンプ レー ト 定義を完了 し ます。
width ・ height テ ン プ レ ー ト の外接枠の寸法 を ポ イ ン ト 単位で指定 し ま す。 width か
height を 0 にす る と 、 begin_template_ext( ) で与えた値が用い ら れます。 そ う でない と き
は、 begin_template_ext( ) で与えた値は上書 き さ れます。
スコープ
テ ン プ レー ト 。 こ の関数はテ ン プ レー ト ス コ ープを終了 さ せます。 対応す る
template_ext( ) と 必ず対に し て呼び出す必要があ り ます。
begin_
9.2 テ ン プ レー ト
163
表 9.6 begin_template_ext( ) のオプ シ ョ ン一覧
キー
説明
reference
(オプ シ ョ ン リ ス ト 。 PDFlib ソ ース コ ー ド パ ッ ケージ では入手不可。 PDF 1.4、 ただ し 適切なページ
表示には Acrobat 9 以上が必須。 PDF/X-1/2/3/4 ・ PDF/A-1 モー ド では不可) 外部 PDF (「 タ ー
ゲ ッ ト 」 文書) 内のページへの参照を指定 し ます。 ページ またはテ ン プ レー ト は、 この参照に対
する代理 と し て用い られます。 ビ ュ ーアの設定によ っ て、 かつ タ ーゲ ッ ト PDF が得られるかど う
かによ っ て、 内部の代理か、 外部の タ ーゲ ッ ト のいずれかが表示 ・ 印刷 さ れます。 使え るサブオ
プ シ ョ ンは表 9.7 を参照 し て く だ さ い。
タ ーゲ ッ ト はロー カルで得 られる必要があ り 、 かつ、 pagelabel または pagenumber サブオプ シ ョ
ン で指定 さ れたページ を含んでいる必要があ り ます。 タ ーゲ ッ ト は、 ユーザーパスワー ド ま たは
マ ス タ ーパスワー ド を必要 と する ものではいけません。 参照ページの寸法は、 reference オプ シ ョ
ンの pdiusebox サブオプ シ ョ ンに従 っ て決定 さ れます。 こ の寸法は、 info_image( ) ・ info_pdi_page( )
の targetx1 ・ targety1 等のキーワー ド で取得する こ と がで き、 代理テ ン プ レー ト を構築する際、
または代理 PDF ページ を配置する際には、 これに従 う 必要があ り ます。
PDF/X-5g ・ PDF/X-5pg モー ド では、 タ ーゲ ッ ト は右記の規格のいずれかに準拠 し ている必要があ
り ます : PDF/X-1a:2003 ・ PDF/X-3:2003 ・ PDF/X-4 ・ PDF/X-4p ・ PDF/X-5g ・ PDF/X-5pg。 かつ、
同一の出力イ ン テ ン ト に対 し て用意 さ れている必要があ り ます。
表 9.7 begin_template_ext( ) ・ open_pdi_page( ) の reference オプ シ ョ ンのサブオプ シ ョ ン一覧
キー
説明
filename
(名前文字列。 必須) タ ーゲ ッ ト PDF を内容 と し て持つ フ ァ イルの名前。 この名前は PDF 内に格
納 さ れ、 ビ ュ ーアに よ っ て使われます。 こ れは、 target オプ シ ョ ン を指定 し ない と きは、 タ ー
ゲ ッ ト PDF を ロー カルで見つける ために も使われます (すなわち、 その PDF が存在 し ている必要
があ り ます)。 デ ィ レ ク ト リ を一切付けない素のベース名を用いる こ と を推奨 し ます。
pagelabel
(ハイパーテキス ト 文字列。 pagenumber と 同時に指定 し てはいけません) 参照 し たいページのペー
ジ ラ ベル
pagenumber (整数) 参照 し たいページの番号。 先頭ページの番号は 1 です。 デ フ ォ ル ト : 1 (ただ し こ れは
pagelabel によ っ て上書き さ れる可能性があ り ます)
pdiusebox
strongref
164
(キーワー ド 。 PDF/X-5g ・ PDF/X-5pg モー ド では media を強制 さ れます) タ ーゲ ッ ト ページの寸
法を決定する ためにどの枠寸法を用いるかを指定 し ます。 デ フ ォル ト : PDF/X-5g ・ PDF/X-5pg
モー ド では media、 それ以外では crop。
media
MediaBox を用います ( これは必ず存在 し ます)
crop
CropBox がある な ら それを、 ないな ら MediaBox を用います
bleed
BleedBox があ る な ら それを、 ないな ら CropBox を用います
trim
TrimBox があ る な ら それを、 ないな ら CropBox を用います
art
ArtBox がある な ら それを、 ないな ら CropBox を用います
(論理値。 PDF/X-5g ・ PDF/X-5pg モー ド では true を強制 さ れます) true にする と 、 PDFlib は、
タ ーゲ ッ ト の ID 項目を用いて、 その タ ーゲ ッ ト への強い参照を作成 し ます。 タ ーゲ ッ ト が別の文
書で置き換え られる と 、 こ の参照は切れます (すなわち、 ビ ュ ーアは代理を用います)。 タ ーゲ ッ
ト を柔軟に取 り 替え る運用を し たい と きは、 こ のオプ シ ョ ンは false に設定する必要があ り 、 そ
の場合、 ロー カルの タ ーゲ ッ ト と 、 文書が最終的に表示 さ れる際に用い ら れる タ ーゲ ッ ト と は、
等 し いページ枠 と 回転項目を持つ必要があ り ます。 デ フ ォル ト : true
第 9 章 : 画像 ・ テ ン プ レー ト 関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 9.7 begin_template_ext( ) ・ open_pdi_page( ) の reference オプ シ ョ ンのサブオプ シ ョ ン一覧
キー
説明
target
(PDF 文書ハン ド ル) open_pdi_document( ) で取得 し た タ ーゲ ッ ト 文書のハン ド ル。 こ の タ ーゲ ッ ト
PDF は、 repair=none オプ シ ョ ン を付けて、 かつ password オプ シ ョ ン を付けずに開いた ものであ
る必要があ り ます。 文書ハン ド ルを フ ァ イル名に加えて与え る こ と は、 2 つの場合に有用で し ょ
う:
> 多数の生成文書が同 じ タ ーゲ ッ ト PDF を参照する と き、その タ ーゲ ッ ト は 1 回だけ開 く 必要があ
り 、 その結果は内部的にキ ャ ッ シ ュ さ れる こ と がで き ます。
> ロー カルの タ ーゲ ッ ト のフ ァ イル名が、 PDF 内に格納 し たい タ ーゲ ッ ト フ ァ イル名 と 異な る と
き。
VB RB Sub end_template( )
C# void end_template( )
非推奨。 end_template_ext( ) を使っ て く だ さ い。
テ ンプ レー ト 定義を完了 し ます。
スコープ
テ ン プ レー ト 。 こ の関数はテ ン プ レー ト ス コ ープを終了 さ せます。 対応す る
template_ext( ) と 必ず対に し て呼び出す必要があ り ます。
begin_
VB RB Function begin_template(width As Double, height As Double) As Long
C# int begin_template(double width, double height)
非推奨。 begin_template_ext( ) を使っ て く だ さ い。
9.2 テ ン プ レー ト
165
9.3 サムネール
VB RB Sub add_thumbnail(image As Long)
C# void add_thumbnail(int image)
画像を、 カ レ ン ト ページに対す る サム ネール と し て追加 し ます。
image
詳細
load_image( ) で取得 さ れた有効な画像ハン ド ル。
こ の関数は、 指定す る 画像を、 カ レ ン ト ページに対す る サ ム ネール画像 と し て追加 し ま
す。 サム ネール画像は以下の制限を守 る 必要があ り ます。
> 画像は、 106 × 106 ピ ク セル よ り 大 き く てはいけ ません。
> 画像は、 グ レース ケール ・ RGB ・ イ ンデ ッ ク ス RGB のいずれかの色空間を使っ てい る
必要があ り ます。
> 複数ページ TIFF 画像は、 サム ネール と し て使え ません。 なぜな ら サム ネールは、 ただ
1 つの PDF 画像オブジ ェ ク ト か ら 構成 さ れ る 必要があ る ためです。
こ の関数は、 ページに対 し てサ ム ネール画像を生成す る のではな く 、 既存の画像を サ ム
ネール と し て追加す る 手段を提供 し てい る だけです。 サム ネール画像自体は、 ク ラ イ ア ン
ト 側で生成す る 必要があ り ます。 ク ラ イ ア ン ト は、 サム ネールの色 ・ 縦横比 ・ 内容を、 実
際のページ内容 と 一致 さ せ る 必要があ り ます。
Acrobat と Adobe Reader では、 サム ネールはページ表示時に生成 さ れます し 、 ま たサ
ム ネールは生成 PDF 全体の フ ァ イ ルサ イ ズ を増大 さ せますので、 サム ネールを追加せず
に、 ク ラ イ ア ン ト 側でのサム ネール生成に任せる こ と を推奨 し ます。
スコープ ページ。 ページ ご と に一度 し か呼び出 し てはいけ ません。 サム ネールは、 すべてのページ
に付けなければな ら ないわけではあ り ません。
166
第 9 章 : 画像 ・ テ ン プ レー ト 関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
10 PDF 取 り 込み (PDI) ・ pCOS 関数
注 こ の章で説明する関数はすべて、 PDF 取 り 込み ラ イ ブ ラ リ (PDI) を必要 と し ます。 PDI
は、 PDFlib+PDI と PDFlib Personalization Server (PPS) には含まれていますが、 基本 PDFlib
製品には含まれていません。 PDI の入手についての詳 し い情報を得る には私達のウ ェ ブサ
イ ト においで く だ さ い。
10.1 文書関数
ク ッ ク ブ ッ ク 完全な コ ー ド サン プルが ク ッ ク ブ ッ クの pdf_import/starter_pdfmerge ト ピ ッ ク にあ り ま
す。
こ の節に関連す る パ ラ メ タ のキー名を表 3.1 ・ 表 3.2 に示 し ます (157 ページ 「2.1 パ ラ メ
タ 処理」 参照)。
表 10.1 get/set_parameter( ) の PDI 関連キー一覧
キー
pdi
1
説明
背後のラ イ ブ ラ リ を ビル ド する際に PDI がイ ン クルー ド さ れている場合は文字列 true を返 し ま
す。 これは、 PDFlib GmbH によ っ て頒布 さ れているすべての結合 さ れた PDFlib ・ PDFlib+PDI ・ PPS
のバイ ナ リ について、 ラ イ セ ン スキーにかかわ ら ずあてはま り ます。 そ う でないな ら false を返
し ます。 ス コ ープ : 任意 ・ null
1. get_parameter( ) のみ
VB RB Function open_pdi_document(filename As String, optlist As String) As Long
C# int open_pdi_document(String filename, String optlist)
デ ィ ス ク ベース か仮想の PDF 文書を開 き 、 以後の使用に備え ます。
filename (名前文字列。グ ロ ーバルな filenamehandlingオプシ ョ ン ま たはパ ラ メ タ に従っ
て解釈 さ れます。 表 2.2 参照) PDF フ ァ イ ルの名前。
optlist PDF の開 く オプシ ョ ン群を指定 し たオプシ ョ ン リ ス ト :
> 一般オプシ ョ ン : errorpolicy (28 ページ 「2.5 例外処理」 参照)
> 表 10.2 に従っ た PDF 文書オプシ ョ ン群 : ignorepdfversion ・ infomode ・ inmemory ・
password ・ repair ・ requiredmode
戻り値 PDI 文書ハン ド ル。 文書の個々のページの処理や、 文書のプ ロ パテ ィ の取得に使え ます。
戻 り 値 -1 は、 PDF 文書を開 く こ と がで き なかっ た こ と を示 し ます。 任意の数の PDF 文書
を同時に開いてお く こ と がで き ます。 戻 り 値は、 カ レ ン ト の文書ス コ ープ を終え る ま で使
え ます。 関数の呼び出 し が失敗 し た と き は、 その失敗の理由を get_errmsg( ) で取得す る こ
と がで き ます。
エ ラ ー動作は、 errorpolicy パ ラ メ タ ま たはオプシ ョ ンで変更する こ と がで き ます。
詳細 デフ ォ ル ト では、 以下の条件の う ち 1 つで も 真の と き は、 その文書は拒否 さ れます :
> 文書が破損 し てお り 、 かつ修復で き なか っ た (ま たは repair=none が指定 さ れていた)。
> 文書が、カ レ ン ト PDF 文書 と 非互換な PDF バージ ョ ン を用いてい る 。PDF 1.6 以下の各
PDF バージ ョ ンに対 し ては、 それ以下のすべてのバージ ョ ンが互換です。 PDF 1.7 ・ 1.7
10.1 文書関数
167
拡張レベル 3 に対 し ては、 PDF 1.7 ・ PDF 1.7 拡張レベル 3 (Acrobat 9) ・ PDF 1.7 拡張
レベル 8 (Acrobat X) 以下のすべてのバージ ョ ンが互換です (なお、 Acrobat X の暗号
化には未対応です)。 ただ し 、 PDF/A モー ド では、 PDF バージ ョ ンヘ ッ ダ群は PDF 内
で無視 さ れなければな ら ないので、 入力 PDF バージ ョ ン番号は無視 さ れます。
> 文書が暗号化 さ れてい る のに、 そのパ ス ワー ド が password オプシ ョ ンで与え ら れてい
ない。
> 文書がカ レ ン ト の PDF/X ま たは PDF/A 出力準拠レベルに互換でないか、ま たは非互換
な出力 イ ン テ ン ト を使っ てい る 。
> 文書が タ グ付 き PDF であ り 、 begin_document( ) の tagged オプシ ョ ンが true であ る 。
1 番目の原因以外の と き は、 infomode オプシ ョ ン を使っ て文書を開 く こ と も で き ます。 こ
れは、 pcos_get_*( ) 関数群を使っ て、 暗号化や PDF/X ・ PDF/A の状態、 文書情報フ ィ ール
ド な ど、 その PDF に関す る 情報を取得 し たい と き に有用で し ょ う 。
PDF の取 り 込みに関連 し た問題 (PDF フ ァ イ ル名の誤 り 、 対応 し ていない形式、 不適
切な PDF デー タ な ど) の性質について、 も っ と 詳 し い情報を得 る には、 get_errmsg( ) を
使っ て、 よ り 詳 し いエ ラ ー メ ッ セージ を取得 し ます。
PDF/A の場合:取 り 込む文書は、infomode=true に し ていない と き は、カ レ ン ト の PDF/
A 出力準拠レベル と 出力 イ ン テ ン ト に互換であ る 必要があ り ます。
PDF/X の場合:取 り 込む文書は、infomode=true に し ていない と き は、カ レ ン ト の PDF/
X 出力準拠レベルに互換であ る 必要があ り 、 かつ、 生成す る 文書 と 同 じ 出力 イ ン テ ン ト を
使っ てい る 必要があ り ます。
スコープ 任意。オブ ジ ェ ク ト ス コ ープでは、PDI文書ハン ド ルは pcos_get_*( )関数群でだけ使え ます。
表 10.2 open_pdi_document( ) のオプ シ ョ ン一覧
キー
説明
infomode
(論理値) true にする と 、 pCOS イ ン タ フ ェ ースで情報は取得で き るけれど も、 ページ を カ レ ン ト
出力文書へ取 り 込む こ と はで き ないよ う に文書が開き ます。 特に、 以下の類の文書を、
infomode=true では開 く こ と がで き ます :
> カ レ ン ト の PDF/X ま たは PDF/A 準拠レ ベル と 互換でない PDF
> カ レ ン ト 文書よ り 高い PDF バージ ョ ン を持つ PDF
> パスワー ド がわから ない暗号化 さ れた PDF (例外 : Distiller の設定 「オブ ジ ェ ク ト レ ベルの圧縮 :
最高」 を使っ て作成 さ れた PDF 1.6 文書)
> begin_document( ) で tagged オプ シ ョ ン を true に し た と きの タ グ付き PDF
デ フ ォ ル ト : requiredmode=full に し ている と きは false、 そ う でなければ true
inmemory
(論理値) true にする と 、 PDI はフ ァ イル全体を メ モ リ 内に読み込んで、 そ こ から それを処理 し ま
す。 こ れはシ ス テムによ っ ては非常な速度向上につなが り ますが (特に MVS)、 そのかわ り メ モ リ
使用が増え ます。 false にする と 、 文書の個々の部分が必要に応 じ てそのつどデ ィ ス クか ら読み込
まれます。 デ フ ォル ト : false
password
(文字列で最大長 32 文字) 保護 さ れた PDF 文書を開いて取 り 込むために必要なマス タ ーパスワー
ド 。 infomode=true に し ている と きは、 文書情報を取得するにはユーザーパスワー ド (空で もかま
いません) で充分です。 暗号化 さ れた文書に対 し てパスワー ド を一切与えない と 、 その文書ハン
ド ルは、 その暗号化状態を取得する ためだけに使え ます。
168
第 10 章 : PDF 取 り 込み (PDI) ・ pCOS 関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 10.2 open_pdi_document( ) のオプ シ ョ ン一覧
キー
説明
repair
(キーワー ド ) 破損 し た PDF 入力文書の扱い方を指定 し ます。 文書を修復する と 、 通常の処理よ り
も 時間がかか り ますが、 あ る種の破損 PDF の処理が可能にな るかも し れません。 ただ し 文書に
よ っ ては、 修復不能なほど破損 し ている こ と も あ り ます。 と り う るキーワー ド (デ フ ォ ル ト :
auto) :
requiredmode
auto
PDF を開き つつあ る と き に問題を検出 し た と き だけ文書を修復 し ます。
force
文書に問題があ るかないかにかかわ ら ず、 無条件に修復を試みます。
none
文書の修復を一切試みません。 PDF に問題がある と きは関数の呼び出 し は失敗 し ます。
(キーワー ド ) 文書を開 く と き に受け入れる こ と ので き る最小の pcos モー ド (minimum/
restricted/full)。 要求 し ている モー ド よ り も結果の pcos モー ド のほ う が低い と きは、 呼び出 し
は失敗 し ます。 呼び出 し が成功 し た と きは、 結果の pcos モー ド は最低で も こ のオプ シ ョ ン で指定
し ている ものである こ と が保証 さ れます。 ただ し 、 それよ り 高い こ と も あ り ます。 た と えば
requiredmode=minimum に し ていて も、 暗号化 さ れていない文書に対 し ては結果は full モー ド にな
り ます。 デ フ ォ ル ト : full
VB RB Sub close_pdi_document(doc As Long)
C# void close_pdi_document(int doc)
開いてい る PDI ページハン ド ルをすべて閉 じ てか ら 、 入力 PDF 文書を閉 じ ます。
doc
詳細
open_pdi_document( ) で取得 し た有効な PDF 文書ハン ド ル。
こ の関数は、 PDF 取 り 込み文書を閉 じ て、 その文書に関連 し たすべての リ ソ ース を解放 し
ます。 文書のページ を開いていたな ら 、 すべて自動的に閉 じ ら れます。 その文書ハン ド ル
は、 こ の呼び出 し の後は使っ てはいけ ません。 さ ら に取 り 込みたいページがあ る と き は、
その PDF 文書は閉 じ る べ き ではあ り ません。 PDF 取 り 込み文書は、 任意の回数開いた り
閉 じ た り で き ますが、 そ う す る と PDF 出力フ ァ イ ルが不必要に大 き く な る こ と があ り ま
す。
スコープ 任意
10.1 文書関数
169
10.2 ページ関数
VB RB Function open_pdi_page(doc As Long, pagenumber As Long, optlist As String) As Long
C# int open_pdi_page(int doc, int pagenumber, String optlist)
ページ を、 以後の fit_pdi_page( ) での使用のために準備 し ます。
doc
open_pdi_document( ) で取得 し た有効な PDF 文書ハン ド ル。
pagenumber
開 き たいページの番号。 先頭ページの番号は 1 です。
optlist ページ関連オプシ ョ ン群を指定 し たオプシ ョ ン リ ス ト :
> 一般オプシ ョ ン : errorpolicy (表 2.6 参照)
> 表 10.3 に従っ たページオプシ ョ ン群 :
boxexpand ・ clippingarea ・ cloneboxes ・ forcebox ・ iconname ・ layer ・ metadata ・
pdiusebox ・ reference
> begin_page_ext( ) の右記オプシ ョ ン (表 3.7 参照) : transparencygroup
戻り値 ページハン ド ル。 fit_pdi_page( ) でページ を配置する ために使え ます。 戻 り 値 -1 は、 その
ページが開けなかっ た こ と を示 し ます。 関数の呼び出 し が失敗 し た と き は、 その失敗の原
因を get_errmsg( ) で取得す る こ と がで き ます。 返 さ れたハン ド ルは、 カ レ ン ト の文書ス
コ ープを終え る ま で使え ます。文書を open_pdi_document( ) で開 く 際に infomode オプシ ョ
ン を true に し ていた と き は、 そのハン ド ルは fit_pdi_page( ) では使え ません。
エ ラ ー動作は、 errorpolicy パ ラ メ タ ま たはオプシ ョ ンで変更す る こ と がで き ます。
詳細
こ の関数は、 取 り 込んだページ を構成す る すべてのデー タ を出力文書へ コ ピー し ますが、
出力上にいかな る 視覚効果を も 与え ません。 取 り 込んだページ を、 生成す る 出力文書の ど
こ かに実際に配置す る には、 fit_pdi_page( ) を使 う 必要があ り ます。
取 り 込む文書の PDF バージ ョ ン番号が、 生成する PDF 出力文書の PDF バージ ョ ン番
号 よ り も 高い と き は、 こ の関数は失敗 し ます。 PDF 取 り 込みに関連 し た問題 (未対応の形
式、 PDF デー タ の破損な ど) に関す る 情報を よ り 詳 し く 知 り たい と き は、 get_errmsg( ) を
呼び出す こ と がで き ます。
取 り 込むページの中に参照 XObject があ る と き は、 open_pdi_page( ) は、 代理 と 参照の
両方を タ ーゲ ッ ト へ複製 し ます。
任意の数のページ を同時に開 く こ と がで き ます。 同 じ ページ を複数回開 く と 、 別々の
ハン ド ルが返 さ れ、 そ し て各ハン ド ルを 1 回ずつ閉 じ る 必要があ り ます。
PDF/A ・ PDF/X : こ の呼び出 し は、 取 り 込むページ を含む文書が生成文書 と 非互換な
出力 イ ン テ ン ト を用いてい る と き は、 失敗する 可能性があ り ます。
スコープ 文書 ・ ページ
表 10.3 open_pdi_page( ) のオプ シ ョ ン一覧
キー
説明
boxexpand
(float または float4 個の リ ス ト ) pdiusebox オプ シ ョ ン で選んだページ枠を、 4 辺すべて を同 じ 値
だけ (値 1 個を与えた場合)、 または左 / 下 / 右 / 上辺を個別に (値 4 個を与えた場合) 拡張 し ま
す。 負の値でページサイ ズを小 さ く する こ と も で き ます。 こ のオプ シ ョ ン を利用すれば、 取 り 込
んだページのすべてのページ枠の外に位置する内容を配置 し た り 、 余白を加えた り する こ と がで
き ます。 デ フ ォ ル ト : 0
170
第 10 章 : PDF 取 り 込み (PDI) ・ pCOS 関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 10.3 open_pdi_page( ) のオプ シ ョ ン一覧
キー
説明
clippingarea
(キーワー ド ) 取 り 込んだページのページ枠群の う ちのどれを切 り 抜き に用いるかを指定 し ます。
指定 し た領域の外側の内容は、 この取 り 込んだページ を新 し いページ上に配置 し た後、 見え ませ
ん。 使え るキーワー ド (デ フ ォル ト : pdiusebox) :
art
ArtBox が存在する な ら それを、 ないな ら CropBox を用います
bleed
BleedBox が存在する な ら それを、 ないな ら CropBox を用います
crop
CropBox が存在する な ら それを、 ないな ら MediaBox を用います
media
MediaBox を用います ( こ れは必ず存在 し ます)
pdiusebox pdiusebox オプ シ ョ ン で指定 し た枠を用います
trim
TrimBox が存在する な ら それを、 ないな ら CropBox を用います
cloneboxes
(論理値。 boxexpand ・ forcebox ・ pdiusebox のいずれかを与えた と きは不可。 fit_pdi_page( ) の
cloneboxes オプ シ ョ ン と 整合 さ せる必要があ り ます) にする と 、 ページは、 fit_pdi_page( ) の
cloneboxes オプ シ ョ ンによ る枠複製のために用意 さ れます。 デ フ ォ ル ト : false
forcebox
(矩形) ページ枠を強制的に、 指定 し た値に し ます。 こ のオプ シ ョ ンは pdiusebox ・ boxexpand オ
プ シ ョ ン を上書き し ます。 こ れを利用すれば、 取 り 込んだページのすべてのページ枠の外に位置
する内容を配置する こ と がで き ます。 この値は、 取 り 込んだページが /Rotate キーを含んでいる
場合には、 注意深 く 選ぶ必要があ り ます。 boxexpand オプ シ ョ ンのほ う が、 /Rotate キーの有無に
かかわら ず う ま く 働き ますので、 望ま し いで し ょ う 。 デ フ ォ ル ト : pdiusebox オプ シ ョ ン で選ばれ
た枠
iconname
(ハイパーテキス ト 文字列) 取 り 込むページに名前を付けて、 JavaScript で参照で き る よ う に し ま
す。 た と えば、 ページ を フ ォ ーム フ ィ ール ド のア イ コ ン と し て使いたい と き に有用です。
layer
(レ イ ヤーハン ド ル。 PDF 1.5) ページ を属 さ せたい レ イ ヤー。 ただ し 、 こ のページ を配置する前に
begin_layer( ) で別のレ イ ヤーが有効に さ れていない場合にかぎ り ます。 こ のページ を配置する前に
begin_layer( ) を呼び出 し て レ イ ヤーを有効に さ せる と 、 こ のページの layer オプ シ ョ ンは上書き さ
れます。 こ のページの layer オプ シ ョ ンが上書き さ れないよ う にするには、 こ のページ を配置す
る前に end_layer( ) を呼び出 し て く だ さ い。
metadata
(オプ シ ョ ン リ ス ト 。 PDF 1.4) 取 り 込んだページに対する メ タ デー タ を与え ます (225 ページ
「14.2 XMP メ タ デー タ 」 参照)
pdiusebox
(キーワー ド 。 cloneboxes を与えた と きは不可) 取 り 込んだページの寸法を決定する ためにどの枠
寸法を用いるかを指定 し ます。 この枠寸法は、 fit_pdi_page( ) での拡縮操作のために用い られます。
こ の枠は、 ページの見え る内容も、 clippingarea オプ シ ョ ン で変更 さ れない限 り 、 決定 し ます。
デ フ ォル ト : crop。
reference
art
ArtBox があればそれを、 なければ CropBox を用います
bleed
BleedBox があればそれを、 なければ CropBox を用います
crop
CropBox があればそれを、 なければ MediaBox を用います
media
MediaBox を用います ( こ れは必ず存在 し ます)
trim
TrimBox があればそれを、 なければ CropBox を用います
(オプ シ ョ ン リ ス ト 。 PDF 1.4、 ただ し 適切なページ表示には Acrobat 9 以上が必須) ページ を、 外
部 PDF 文書内のページ ( タ ーゲ ッ ト ページ) への参照を保持する代理 と し て定義 し ます。 今回の
呼び出 し で開かれたページが、 参照 さ れる タ ーゲ ッ ト ページに対する代理 と し て用い ら れます
(詳 し く は表 9.6 を参照)。 代理ページ と タ ーゲ ッ ト ページは、 互換なページ寸法を持 っ ている必要
があ り ます。 すなわち、 pdiusebox オプ シ ョ ン で選択するページ枠が、 ど ち ら のページ も ページ上
の同 じ 位置に配置 さ れる よ う 、 同等であ る必要があ り ます。
10.2 ページ関数
171
VB RB Sub close_pdi_page(page As Long)
C# void close_pdi_page(int page)
ページハン ド ルを閉 じ て、 ページ関連の リ ソ ース をすべて解放 し ます。
page open_pdi_page( ) で取得 し た有効な PDF ページハン ド ル(ページ番号ではあ り ませ
ん!)。
詳細
こ の関数は、 page で指定す る ページハン ド ルに結びついたページ を閉 じ て、 関連す る リ
ソ ース をすべて解放 し ます。 こ の呼び出 し の後に page を使っ てはいけ ません。
スコープ 文書 ・ ページ
VB RB Sub fit_pdi_page(page As Long, x As Double, y As Double, optlist As String)
C# void fit_pdi_page(int page, double x, double y, String optlist)
取 り 込んだ PDF ページ を、 ページ上に、 さ ま ざ ま なオプシ ョ ンに従っ て配置 し ます。
page open_pdi_page( ) で取得 し た有効な PDF ページハン ド ル(ページ番号ではあ り ませ
ん!)。 文書を開 く 際に、 infomode オプシ ョ ン を false に し てお く 必要があ り ます。 ペー
ジハン ド ルは閉 じ て あ っ てはいけ ません。
x ・ y ページ を さ ま ざ ま なオプシ ョ ンに従っ て置き たい参照点の座標を、ユーザー座標系
で指定 し ます。
optlist ページオプシ ョ ン群を指定 し たオプシ ョ ン リ ス ト :
> 表 6.1 に従っ たはめ込みオプシ ョ ン群 :
blind ・ boxsize ・ fitmethod ・ matchbox ・ orientate ・ position ・ rotate ・ scale ・ showborder
> 表 9.4 に従っ たページ処理のためのオプシ ョ ン群 : adjustpage ・ gstate
> 表 10.4 に従っ た cloneboxes オプシ ョ ン。
詳細
こ の関数は fit_image( ) に似てい ますが、取 り 込み PDF ページに対 し て働 く 点が違い ます。
取 り 込んだページの中に ExtGState オブジ ェ ク ト があ る と き は、 出力品質を向上 さ せ る た
めに、 begin/end_page_ext( ) に下記のオプシ ョ ン を付け る こ と を推奨 し ます :
transparencygroup={colorspace=DeviceRGB}。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ
表 10.4 fit_pdi_page( ) の追加オプ シ ョ ン
キー
説明
cloneboxes
(論理値。 begin_page_ext( ) で topdown オプ シ ョ ン を与え ている と きは不可。 open_pdi_page( ) の
cloneboxes オプ シ ョ ン と 整合 さ せる必要があ り ます。 ページ ス コ ープ内のみ)。
こ のオプ シ ョ ン を true に設定する と 、 以下の結果にな り ます (デ フ ォ ル ト : false) :
> 取 り 込んだページの中に存在する Rotate ・ MediaBox ・ TrimBox ・ ArtBox ・ BleedBox ・ CropBox 項目
がすべて、 カ レ ン ト 出力ページへ複製 さ れます。
> ページ内容が、 入力ページが二重化 さ れる よ う に配置 さ れます。 ユーザーが、 配置 さ れるページ
の位置や寸法を変え る こ と はで き ません。 よ っ て、 引数 x ・ y と 右記オプ シ ョ ンは無視 さ れま
す : adjustpage ・ boxsize ・ fitmethod ・ orientate ・ position ・ rotate ・ scale。 入力ページの二
重化は、 fit_pdi_page( ) の呼び出 し の際にデ フ ォル ト 座標系が有効な場合にのみ可能です。
> cloneboxes オプ シ ョ ンに よ っ て作成 さ れるページ枠が、 begin_page_ext( ) の artbox ・ bleedbox ・
cropbox ・ trimbox ・ mediabox ・ rotate オプ シ ョ ン と width ・ height 引数を上書き し ます。
172
第 10 章 : PDF 取 り 込み (PDI) ・ pCOS 関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
VB RB Function info_pdi_page(page As Long, keyword as String, optlist As String) As Double
C# double info_pdi_page(int page, String keyword, String optlist)
PDI ページに対する 組版計算を実行 し 、 結果の メ ト リ ッ ク を取得 し ます。
page
open_pdi_page( ) で取得 し た有効なページハン ド ル。
keyword
求め る 情報を表 10.5 に従っ て指定 し た キーワー ド 。
optlist 拡縮 と 配置の詳細を指定 し たオプシ ョ ン リ ス ト :
> 一般オプシ ョ ン : errorpolicy (28 ページ 「2.5 例外処理」 参照)
> 表 6.1 に従っ たはめ込みオプシ ョ ン群(PDF ページ を、open_pdi_page( ) の cloneboxes オ
プシ ョ ンで開いていた と き には、 こ れ ら のオプシ ョ ンは無視 さ れます) :
boxsize ・ fitmethod ・ matchbox ・ orientate ・ position ・ rotate ・ scale
> 表 9.4 に従っ たページ処理のためのオプシ ョ ン群は意味を持ち ません。 それ ら は、 fit_
pdi_page( ) と info_pdi_page( ) に対 し て統一的なオプシ ョ ン リ ス ト を実現す る ために無
視 さ れます : adjustpage ・ gstate
戻り値 keyword で要求 し た何 ら かのページ メ ト リ ッ ク の値。 errorpolicy=return にする と 、 こ の関
数はエ ラ ー発生時に 0 を返 し ます。 errorpolicy=exception にす る と 、 こ の関数はエ ラ ー発
生時に例外を発生 さ せます。
詳細
こ の関数は、指定 し たオプシ ョ ン群に従っ て取 り 込みページ を配置す る ために必要なすべ
ての計算を実行 し ますが、 ページ上には実際の出力を一切生成 し ません。 ページ を配置す
る ための参照点は {0 0} であ る と 見な さ れます。 open_pdi_page( ) の cloneboxes オプシ ョ
ン を与え てい る と き は、 ページは元のページ と 同 じ 位置に (ページ枠に対 し て相対的に)
配置 さ れます。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ ・ 文書 ・ パス
表 10.5 info_pdi_page( ) のキーワー ド 一覧
キーワー ド
説明
boundingbox
ページの外接枠のパスハン ド ル
fitscalex ・ fitscaley
与えたオプ シ ョ ン群に従っ てページ を枠にはめ込んだ結果の拡縮倍率
height
与えたオプ シ ョ ン群 と 、 open_pdi_page( ) で用い られたオプ シ ョ ン群に従 っ たページの高 さ
を、 ユーザー座標系で表 し た もの
mirroringx ・
mirroringy
与えたオプ シ ョ ン群に従っ たページの横反転 ・ 縦反転 (1 か -1 かで表 さ れます)
pageheight
元のページの高 さ をポ イ ン ト 単位で表 し た もの
pagewidth
元のページの幅をポ イ ン ト 単位で表 し た もの
rotate
cloneboxes=true の と き : 取 り 込んだページの回転角を度単位で表 し た もの、 すなわち、
そのページの Rotate キの値。 と り う る値は 0 ・ 90 ・ 180 ・ 270。
cloneboxes=false の と き : つねに 0
10.2 ページ関数
173
表 10.5 info_pdi_page( ) のキーワー ド 一覧
キーワー ド
説明
width
与えたオプ シ ョ ン群 と 、 open_pdi_page( ) で用い ら れたオプ シ ョ ン群に従っ たページの幅を、
ユーザー座標系で表 し た もの
x1 ・ y1 ・ x2 ・ y2 ・
x3 ・ y3 ・ x4 ・ y4
与えたオプ シ ョ ン群に従 っ たページ外接枠矩形の i 番目の隅の位置 (i=1, 2, 3, 4) をユー
ザー座標で表 し た もの。
cloneboxes=true にする と 、 見え る枠が用い られます (すなわち、 CropBox が存在する な ら
それが、 ないな ら MediaBox が)。
174
第 10 章 : PDF 取 り 込み (PDI) ・ pCOS 関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
10.3 その他の PDI 処理
VB RB Function process_pdi(doc As Long, page As Long, optlist As String) As Long
C# int process_pdi(int doc, int page, String optlist)
取 り 込んだ PDF 文書の、 あ る 種の要素を処理 し ます。
doc
open_pdi_document( ) で取得 し た有効な PDF 文書ハン ド ル。
page optlist でページハン ド ルを必要 と し てい る と き は (表 10.6 参照)、 page は、 open_
pdi_page( ) で取得 し た有効な PDF ページハン ド ルにす る 必要があ り ます (ページ番号で
はあ り ません!)。 ページハン ド ルは閉 じ て あ っ てはいけ ません。 optlist でページハン ド
ルを必要 と し ていない と き は、 page は -1 にす る 必要があ り ます。
optlist PDI 処理オプシ ョ ン群を指定 し たオプシ ョ ン リ ス ト :
> 一般オプシ ョ ン : errorpolicy (28 ページ 「2.5 例外処理」 参照)
> 表 10.6 に従っ た PDI 処理オプシ ョ ン群。 右記のオプシ ョ ンが使え ます : action
戻り値 関数が成功 し た と き は値 1、関数が失敗 し た と き はエ ラ ー コ ー ド -1。errorpolicy=exception
にす る と 、 こ の関数はエ ラ ー時に例外を発生 さ せます。
詳細 PDF/X : 出力 イ ン テ ン ト は、 こ の関数で copyoutputintent オプシ ョ ン を指定する か、 ま た
は load_iccprofile( ) を使っ て設定す る 必要があ り ます。
PDF/A : 出力 イ ン テ ン ト は、 こ の関数で copyoutputintent オプシ ョ ン を指定する か、 ま
たは load_iccprofile( ) を使っ て設定す る こ と がで き ます。 ただ し 、 デバ イ ス独立な色 し か
文書で使っ ていない と き は、 出力 イ ン テ ン ト は必要あ り ません。
スコープ 文書
表 10.6 process_pdi( ) のオプ シ ョ ン
キー
説明
action
(キーワー ド 。 必須) PDF 処理の種類を指定 し ます :
copyoutputintent
(出力文書が PDF/X に も PDF/A に も準拠 し ていない場合には何も し ません) 取 り 込ん
だ文書の PDF/X か PDF/A の出力イ ン テ ン ト ICC プ ロ フ ァ イルを、 出力文書へ複製 し ま
す。 出力イ ン テ ン ト を複製 し よ う と する 2 回目およびそれ以降の試みは無視 さ れます。
文書に複数の出力イ ン テ ン ト が入っ ている と きは、 最初のものが使われます。 標準出力
イ ン テ ン ト (ICC プ ロ フ ァ イルが埋め込まれていない) を こ の方式で複製する こ と はで
き ません。
入力文書 と 出力文書が PDF/X-4p か PDF/X-5pg に準拠 し ている と きは、 外部出力イ ン
テ ン ト ICC プ ロ フ ァ イルへの参照が複製 さ れます。 こ のオプ シ ョ ン
action=copyoutputintent は、 入力が PDF/X-4p か PDF/X-5pg に準拠 し ているのに出力
が し ていない と き には許 さ れません。
10.3 その他の PDI 処理
175
10.4 pCOS 関数
pCOS 関数はすべて、 PDF 文書内の目指すオブジ ェ ク ト を指 し 示すパ ス に よ っ て動作 し ま
す。 pCOS パス について詳 し く は pCOS パ ス リ フ ァ レ ン ス で説明 し てい ます。
ク ッ ク ブ ッ ク PDFlib+PDI または PPS の中で pCOS を利用する ための完全な コ ー ド サン プルがク ッ ク ブ ッ
クの pdf_import/starter_pcos ト ピ ッ ク にあ り ます。 pCOS ク ッ ク ブ ッ ク には pCOS プ ログ
ラ ミ ングサン プルが多数あ り ます。
注 評価モー ド では、 pCOS は最大 1 MB または 10 ページの入力文書を受け付けます。 ただ し 、
次の要素はそれよ り 大き い文書か ら も 評価モー ド で取得で き ます : ページ数 ・ ページ寸
法 ・ ブ ロ ッ ク詳細 ・ すべての汎用擬似オブ ジ ェ ク ト 。
VB RB Function pcos_get_number(doc as Long, path As String) As Double
C# double pcos_get_number(int doc, String path)
数値ま たは論理値型の pCOS パ ス の値を得ます。
doc
path
open_pdi_document( ) で取得 し た有効な文書ハン ド ル。
数値ま たは論理値オブジ ェ ク ト への完全な pCOS パス。
戻り値 pCOS パス で同定 さ れたオブジ ェ ク ト の数値。 論理値の場合は、 true な ら 1、 そ う でなけ
れば 0 が返 さ れます。
スコープ 任意
VB RB Function pcos_get_string(doc as Long, path As String) As String
C# String pcos_get_string(int doc, String path)
名前ま たは文字列ま たは論理値の pCOS パ ス の値を得ます。
doc
path
open_pdi_document( ) で取得 し た有効な文書ハン ド ル。
名前ま たは文字列ま たは論理値オブジ ェ ク ト への完全な pCOS パス。
戻り値 pCOS パス で同定 さ れたオブジ ェ ク ト の値の文字列。論理値の場合は、文字列 true か false
が返 さ れます。
詳細
こ の関数は、 pCOS が完全モー ド で動作 し ていない と き 、 オブジ ェ ク ト が文字列型だ と 例
外 を 発生 さ せ ま す。 た だ し 例外 と し て、 オ ブ ジ ェ ク ト 群 /Info/* (文書情報 キ ー) は、
nocopy=false か plainmetadata=true に し ていれば、制限 pCOS モー ド で も 取得す る こ と が
で き 、 ま た、 bookmarks[…]/Title と annots[…]/contents は、 nocopy=false に し ていれば、
制限 pCOS モー ド で取得で き ます。
こ の関数は、 PDF 文書か ら 取得す る 文字列がテ キ ス ト 文字列であ る こ と を前提に し て
い ます。 バ イ ナ リ デー タ の入っ た文字列オブジ ェ ク ト は、 デー タ を一切変更 し ない pcos_
get_stream( ) で取得す る 必要があ り ます。
スコープ 任意
バインディング COM : 結果は UTF-16 形式の Unicode 文字列 と し て与え ら れます。 テ キ ス ト がそれ以上得
ら れない と き は空文字列が返 さ れます。
176
第 10 章 : PDF 取 り 込み (PDI) ・ pCOS 関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
.NET : 結果は Unicode 文字列 と し て与え ら れます。 テ キ ス ト がそれ以上得 ら れない と き は
null オブジ ェ ク ト が返 さ れます。
VB RB Function pcos_get_stream(doc as Long, optlist As String, path As String)
C# final byte[ ] pcos_get_stream(int doc, String optlist, String path)
stream ま たは fstream ま たは文字列型の pCOS パス の内容を得ます。
doc
open_pdi_document( ) で取得 し た有効な文書ハン ド ル。
optlist
path
表 10.7 に従っ た ス ト リ ーム取得オプシ ョ ン群を指定 し たオプシ ョ ン リ ス ト 。
ス ト リ ーム ま たは文字列オブジ ェ ク ト への完全な pCOS パ ス。
戻り値
ス ト リ ーム ま たは文字列に入っ ていたデー タ を復号 し た も の。 ス ト リ ームか文字列が空の
と き は、 返 さ れ る デー タ は空にな り ます。
オブジ ェ ク ト が stream 型の と き は、 keepfilter=true でなければ、 すべての フ ィ ル タ が
ス ト リ ームの内容か ら 除去 さ れます (すなわち、 生デー タ 本体が返 さ れます) 。 オブジ ェ
ク ト が fstream ま たは文字列型の と き は、デー タ は PDF フ ァ イ ル内で見つか っ たその ま ま
で返 さ れますが、 ただ し 例外 と し て ASCII85 ・ ASCIIHex フ ィ ル タ は除去 さ れます。
詳細
こ の関数は、 pCOS が完全モー ド で動作 し ていない と き は、 例外を発生 さ せます。 ただ し
例外 と し て、 オブジ ェ ク ト /Root/Metadata は、 nocopy=false か plainmetadata=true に し
ていれば、 制限 pCOS モー ド で も 取得で き ます。 ま た、 path が stream か fstream か文字
列型のオブジ ェ ク ト を指 し 示 し ていない と き も 、 例外が発生 し ます。
こ の関数は、 その名に合わず、 文字列型のオブジ ェ ク ト を取得す る ために も 使え ます。
pcos_get_string( ) では、 オブジ ェ ク ト を テ キ ス ト 文字列 と し て扱い ますが、 それ と 違っ て
こ の関数は、返 さ れ る デー タ にいかな る 変更 も 加え ません。バ イ ナ リ 文字列デー タ は、PDF
内で使われ る こ と は まれで、 自動的に正 し く 検出する こ と はで き ません。 ですので、 文字
列オブジ ェ ク ト をバ イ ナ リ デー タ と テ キ ス ト の ど ち ら と し て取得す る か、適切な関数を選
ぶのはユーザー側の役割です。
スコープ 任意
バインディング COM : 多 く の ク ラ イ ア ン ト プ ロ グ ラ ム では、 ス ト リ ーム内容を格納す る ために、 バ リ ア
ン ト 型を使い ます。 JavaScript で COM を使 う 場合は、 返 さ れ る バ リ ア ン ト 配列の長 さ を
取得す る こ と が許 さ れません ( し か し 他の言語 と COM ではそれは動作 し ます)
注 こ の関数を使 う と 、 PDF から 、 埋め込まれている フ ォ ン ト デー タ を取得する こ と がで き ま
す。 ユーザーに注意を喚起 し たいのは、 フ ォ ン ト は各フ ォ ン ト ベン ダーのラ イ セ ン ス契約
に従属 し てい るので、各知的所有権者の明示的許諾な し に再利用する こ と はで き ない と い
う こ と です。 お使いのフ ォ ン ト のベン ダーに連絡を と り 、 関連する ラ イ セ ン ス契約を話 し
合っ て く だ さ い。
10.4 pCOS 関数
177
表 10.7 pcos_get_stream( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
convert
(キーワー ド 。 非サポー ト のフ ィ ル タ で圧縮 さ れている ス ト リ ームに対 し ては無視 さ れま
す) 文字列またはス ト リ ーム内容が変換 さ れるかど う かを制御 し ます (デ フ ォル ト :
none) :
keepfilter
178
none
内容をバイ ナ リ デー タ と し て扱い、 何の変換も 行いません。
unicode
内容を テキス ト デー タ と し て (すなわち、 pcos_get_string( ) の場合 と 全 く 同様に)
扱い、 こ れを Unicode に正規化 し ます。 Unicode 非対応言語バイ ンデ ィ ングで
は、 これは、 デー タ が BOM な し の UTF-8 形式へ変換 さ れる こ と を意味 し ます。
こ のオプ シ ョ ンは、 PDF 内のまれに し か用い られないデー タ 型 「テキス ト ス ト
リ ーム」 (た と えば、 これは JavaScript のために用い ら れる場合があ り ます。 し
か し JavaScript の多数は、 文字列オブ ジ ェ ク ト 内に格納 さ れ、 ス ト リ ームオブ
ジ ェ ク ト には格納 さ れません) のために必要です。
(論理値。 画像デー タ ス ト リ ームに対 し てのみ推奨。 非サポー ト のフ ィ ル タ で圧縮 さ れてい
る ス ト リ ームに対 し ては無視 さ れます) true にする と 、 ス ト リ ームデー タ は、 画像の
filterinfo 擬似オブ ジ ェ ク ト 内で指定 さ れている フ ィ ル タ で圧縮 さ れます。 デ フ ォル ト :
すべての非サポー ト フ ィ ル タ に対 し ては true、 そ う でないな ら false
第 10 章 : PDF 取 り 込み (PDI) ・ pCOS 関数 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
11 ブ ロ ッ ク流 し 込み関数 (PPS)
PDFlib Personalization Server (PPS) は、 テキス ト ・ イ メ ージ ・ PDF 型の可変ブ ロ ッ ク を処
理す る ための関数を提供 し ます。 こ れ ら の PDFlib ブ ロ ッ ク は、 取 り 込む PDF ページに入
れてお く 必要があ り ますが、 生成す る 出力には残 り ません。 取 り 込んだページは、 ブ ロ ッ
ク 流 し 込み関数を使 う 前に、出力ページに fit_pdi_page( ) で配置 し てお く 必要があ り ます。
ブ ロ ッ ク 関数は、ページ上でのブ ロ ッ ク の位置を算出する 際、取 り 込んだページが fit_pdi_
page( ) で配置 さ れた時に効いていた拡縮オプシ ョ ン を考慮 し ます。
注 こ の章で解説する ブ ロ ッ ク処理関数は、 PDFlib Personalization Server (PPS) が必要です。
PDF テ ン プ レー ト に PDFlib ブ ロ ッ ク を作成するには、Adobe Acrobat 用 PDFlib Block Plugin
が必要です。
ク ッ ク ブ ッ ク 完全な コ ー ド サン プルが ク ッ ク ブ ッ クの blocks/starter_block ト ピ ッ ク にあ り ます。
11.1 ブ ロ ッ ク 流 し 込み関数の矩形オ プ シ ョ ン
表 11.1 に、 fill_textblock( ) ・ image_block( ) ・ fill_pdfblock( ) の矩形オプシ ョ ン を挙げます。
各ブ ロ ッ ク 種別 (テ キ ス ト ・ イ メ ージ ・ PDF ブ ロ ッ ク ) に特有のオプシ ョ ンは次節以降に
挙げ ま す。 ほ と ん どすべてのブ ロ ッ ク プ ロ パテ ィ は同名のオプシ ョ ン で上書 き で き ま す
が、 ただ し 以下のプ ロ パテ ィ だけはオプシ ョ ンで上書 き で き ません :
Name, Description, Subtype, Type
defaulttext, defaultimage, defaultpdf, defaultpdfpage
表 11.1 fill_*block( ) 関数の矩形オプ シ ョ ン一覧
キー
説明
Rect
(矩形) ブ ロ ッ クの座標を ブ ロ ッ ク PDF の座標系で指定 し ます。 ブ ロ ッ ク矩形は refpoint ・
boxsize オプ シ ョ ン で指定で き ます (ユーザー座標系で)。
Status
(キーワー ド ) ブ ロ ッ クがどのよ う に処理 さ れるかを記述 し ます (デ フ ォ ル ト : active) :
active
ブ ロ ッ ク はそのプ ロパテ ィ 群に従っ て完全に処理 さ れます。
ignore
ブ ロ ッ ク は無視 さ れます。
ignoredefault
active と 同様ですが、 ただ し 、 defaulttext/image/pdf プ ロパテ ィ は無視 さ れます。 す
なわち、 ブ ロ ッ ク内容が与え られていなければブ ロ ッ ク は空のま まにな り ます。 こ れ
は、 ブ ロ ッ クがた と え Block Plugin でのプ レ ビ ュ ーのためのデ フ ォ ル ト 内容を持 っ てい
た と し て も、 そのブ ロ ッ クのデ フ ォ ル ト 内容がサーバ側で ブ ロ ッ クへの流 し 込みに使わ
れないよ う にする ために有用で し ょ う 。 また、 こ れを利用すれば、 デ フ ォル ト 内容を表
示 さ せずにブ ロ ッ ク を プ レ ビ ュ ー し たい場合に、 それを ブ ロ ッ クのプ ロパテ ィ から 削除
し な く て も済みます。
static
可変内容が一切配置 さ れません。 ブ ロ ッ ク のデ フ ォ ル ト テキス ト ・ イ メ ージ ・ PDF 内容
が も し あればそれが用い られます。
background- (色) ブ ロ ッ クの塗 り 色。 こ の色は、 ブ ロ ッ クへの流 し 込みよ り 前に適用 さ れます。 こ れは、 既存
color
のページ内容を覆い隠すのに有用で し ょ う 。 デ フ ォル ト : none
bordercolor
(色) ブ ロ ッ クの境界色。 こ の色は、 ブ ロ ッ クへの流 し 込みよ り 前に適用 さ れます。 デ フ ォ ル ト :
none
linewidth
(float。 0 よ り 大き く する必要があ り ます) ブ ロ ッ ク 矩形を描 く のに用いる線の描線幅。
bordercolor を設定 し ている と き にのみ用い ら れます。 デ フ ォル ト : 1
11.1 ブ ロ ッ ク 流 し 込み関数の矩形オプ シ ョ ン
179
11.2 テキス ト 行 ・ テキス ト フ ロ ーブ ロ ッ ク
VB RB Function fill_textblock(
page As Long, blockname As String, text As String, optlist As String) As Long
C# int fill_textblock(int page, String blockname, String text, String optlist)
テ キ ス ト 行ま たはテ キ ス ト フ ロ ーブ ロ ッ ク へ、 そのプ ロ パテ ィ に従っ て、 可変デー タ を流
し 込みます。
page PDFlib ブ ロ ッ ク を入れて あ る ページに対する 有効な PDF ページハン ド ル。 こ れ よ
り 前に、 ブ ロ ッ ク を持っ た入力 PDF ページ を、 fit_pdi_page( ) で直接、 ま たは fit_table( )
で表セル内へ間接的に、 あ る いは fill_pdfblock( ) で PDF ブ ロ ッ ク の内容 と し て、 ページ上
に配置 し てお く 必要があ り ます。
blockname
(名前文字列) ブ ロ ッ ク の名前。
text (内容文字列) ブ ロ ッ ク へ流 し 込みたいテ キ ス ト 。 空文字列にす る と 、 デフ ォ ル ト
テ キ ス ト (ブ ロ ッ ク のプ ロ パテ ィ で定義 し て あ る ) を使え ます。 textflowhandle オプシ ョ
ン を与え てい る と き は、 その中身が有効なテ キ ス ト フ ロ ーハン ド ルな ら ば、 こ の引数は無
視 さ れます。
optlist テ キ ス ト ブ ロ ッ ク 流 し 込みオプシ ョ ン群を指定 し たオプシ ョ ン リ ス ト 。 以下のオ
プシ ョ ンが使え ます :
> 一般オプシ ョ ン : errorpolicy (28 ページ 「2.5 例外処理」 参照)
> 表 11.1 に従っ たブ ロ ッ ク 流 し 込み関数のための矩形オプシ ョ ン群 :
Rect ・ Status ・ backgroundcolor ・ bordercolor ・ linewidth
> はめ込みオプシ ョ ン群 (111 ページ 「6.1 オブジ ェ ク ト のはめ込み」 参照)
> テ キ ス ト 行ブ ロ ッ ク 、 すなわち textflow プ ロ パテ ィ ま たはオプシ ョ ンが false :
すべてのテ キ ス ト 行オプシ ョ ン(80 ページ「5.2 テ キ ス ト 行に よ る 一行テ キ ス ト 」参照)。
> テ キ ス ト フ ロ ーブ ロ ッ ク 、 すなわち textflow プ ロ パテ ィ ま たはオプシ ョ ンが true :
add/create_textflow( ) のすべてのオプシ ョ ン (85 ページ 「5.3 テ キ ス ト フ ロ ーに よ る 複
数行テ キ ス ト 」 参照) と fit_textflow( ) のすべてのオプシ ョ ン (表 5.14 参照)
> 表 11.2 に従っ たテ キ ス ト ブ ロ ッ ク オプシ ョ ン群 : textflow ・ textflowhandle
戻り値 指定 し た名前のブ ロ ッ ク がページ上にないか、 ま たはブ ロ ッ ク へ流 し 込めないか (フ ォ ン
ト の問題な ど に よ り )、 ま たはブ ロ ッ ク が も っ と 新 し い PDFlib バージ ョ ン を必要 と す る と
き は -1。 ブ ロ ッ ク の処理が成功 し た と き は 1。 textflowhandle オプシ ョ ン を与え てい る と
き は、 有効なテ キ ス ト フ ロ ーハン ド ルが返 さ れ る ので、 以後の呼び出 し で使え ます。
PDF 文書が破損 し てい る こ と がわか っ た と き は、 こ の関数は errorpolicy パ ラ メ タ ま た
はオプシ ョ ンに従っ て、 例外を発生 さ せ る か、 -1 を返 し ます。
詳細 与え たテ キ ス ト が、 ブ ロ ッ ク のプ ロ パテ ィ に従っ て、 ブ ロ ッ ク の中に組版 さ れます。 text
を 空 に す る と 、 こ の 関 数 は、 ブ ロ ッ ク の デ フ ォ ル ト テ キ ス ト が あ れ ば そ れ を 使 い
(Status=ignoredefault でなければ)、 それ以外の場合は警告を出 さ ずに返 り ます。 こ れは、
塗 り 色や描線色な ど、 他のブ ロ ッ ク プ ロ パテ ィ を活用する う えで有用です。
フ ォ ン ト 選択 : font オプシ ョ ン を与え てお ら ず、 オプシ ョ ンに基づ く 暗黙的フ ォ ン ト
読み込み も 用い ら れていない と き は、 フ ォ ン ト はブ ロ ッ ク のプ ロ パテ ィ 群に基づいて暗黙
的に読み込まれます。
180
第 11 章 : ブ ロ ッ ク 流 し 込み関数 (PPS) (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
フ ォ ン ト に対する エン コ ーデ ィ ン グは、オプシ ョ ン と し てのみ指定す る こ と がで き 、ブ
ロ ッ ク プ ロ パテ ィ と し ては指定で き ませんので、デフ ォ ル ト では下記の よ う に設定 さ れま
す:
> フ ォ ン ト が記号フ ォ ン ト であ り 、 かつ charref=false な ら ば builtin
> それ以外の場合は unicode。
defaulttext を用い る 場合には、 encoding ・ charref ・ textformat オプシ ョ ン を避け る こ と を
推奨 し ます。
embedding オプシ ョ ンについては特に注意を払 う 必要があ り ます : フ ォ ン ト がブ ロ ッ
ク のプ ロ パテ ィ に基づいて暗黙的に読み込まれた場合には、それは自動的に埋め込まれ る
わけではあ り ません。 フ ォ ン ト を埋め込ませたい と き は、 embedding オプシ ョ ン を指定す
る 必要があ り ます。
テ キ ス ト フ ロ ーブ ロ ッ ク の連結 : テ キ ス ト フ ロ ーがブ ロ ッ ク に収ま り き ら ない と き は、
textflowhandle オプシ ョ ン を使っ て、 複数のブ ロ ッ ク を連結 し 、 同 じ テ キ ス ト フ ロ ーの各
部分を それぞれに入れ る こ と も で き ます。
> 最初の呼び出 し では、 値 -1 を与え る 必要があ り ます。 内部的に作成 さ れた テ キ ス ト フ
ロ ーハン ド ルが fill_textblock( ) に よ っ て返 さ れ る ので、 ユーザー側でそれを保管す る
必要があ り ます。
> 次の呼び出 し では、前の段階で返 さ れたテ キ ス ト フ ロ ーハン ド ルを、textflowhandle オ
プシ ョ ンに与え る こ と がで き ます (text 引数で与え る テ キ ス ト は こ の場合無視 さ れ る
ので、 空にす る べき です)。 ブ ロ ッ ク へはテ キ ス ト フ ロ ーの残 り が流 し 込まれます。
> こ の処理を、 他のテ キ ス ト フ ロ ーブ ロ ッ ク について も 繰 り 返す こ と がで き ます。
> 返 さ れたテ キ ス ト フ ロ ーハン ド ルは、 info_textflow( ) に与え て、 テ キ ス ト の終了位置
等、 ブ ロ ッ ク 流 し 込みの結果を知 る こ と がで き ます。
こ の処理 を、 任意の回数繰 り 返す こ と が で き ま す。 テ キ ス ト フ ロ ーハ ン ド ル を 最後に
delete_textflow( ) で削除す る のはユーザー側の役割です。
スコープ ページ ・ テ ン プ レー ト
表 11.2 fill_textblock( ) の追加オプ シ ョ ン一覧
キー
説明
textflow
(論理値) 一行処理か複数行処理かを制御 し ます。 こ のプ ロパテ ィ を使 う と 、 テキス ト 行ブ ロ ッ ク
と テキス ト フ ローブ ロ ッ ク を切 り 替え る こ と がで き ます :
false
テキス ト は一行にわた り 、 fit_textline( ) で処理 さ れます。
true
テキス ト は複数行にわた り 、 fit_textflow( ) で処理 さ れます。
デ フ ォル ト はブ ロ ッ ク の種別に依存 し ます : テキス ト フ ローブ ロ ッ クの場合は true、 テキス ト 行
ブ ロ ッ ク の場合は false
textflowhandle
(テキス ト フ ローハン ド ル。 fill_textblock( ) で textflow=true の場合のみ) こ のオプ シ ョ ン を利用す
る と 、 テキス ト フ ローブ ロ ッ ク を連結する こ と がで き ます。 連結ブ ロ ッ ク 群の最初のブ ロ ッ ク に
対 し ては値 -1 を与え る必要があ り ます。 この関数に よ っ て返 さ れた値を、 それ以後の連結 さ れる
他のブ ロ ッ ク群に対する呼び出 し で テキス ト フ ローハン ド ル と し て与え る こ と がで き ます。 こ の
オプ シ ョ ンは fitmethod のデ フ ォル ト を clip に変更 し ます。
11.2 テキス ト 行 ・ テキス ト フ ローブ ロ ッ ク
181
11.3 イ メ ージ ブ ロ ッ ク
VB RB Function fill_imageblock(
page As Long, blockname As String, image As Long, optlist As String) As Long
C# int fill_imageblock(int page, String blockname, int image, String optlist)
イ メ ージブ ロ ッ ク へ、 そのプ ロ パテ ィ に従っ て、 可変デー タ を流 し 込みます。
page PDFlib ブ ロ ッ ク を入れて あ る ページに対する 有効な PDF ページハン ド ル。 こ れ よ
り 前に、 ブ ロ ッ ク を持っ た入力 PDF ページ を、 fit_pdi_page( ) で直接、 ま たは fit_table( )
で表セル内へ間接的に、 あ る いは fill_pdfblock( ) で PDF ブ ロ ッ ク の内容 と し て、 ページ上
に配置 し てお く 必要があ り ます。
blockname
(名前文字列) ブ ロ ッ ク の名前。
image ブ ロ ッ ク へ流 し 込みたい画像に対す る 有効な画像ハン ド ル。 -1 にする と 、 デフ ォ
ル ト 画像 (ブ ロ ッ ク のプ ロ パテ ィ で定義 し て あ る ) を使え ます。
optlist イ メ ージブ ロ ッ ク 流 し 込みオプシ ョ ン群を指定 し たオプシ ョ ン リ ス ト 。 以下のオ
プシ ョ ンが使え ます :
> 一般オプシ ョ ン : errorpolicy (28 ページ 「2.5 例外処理」 参照)
> 表 11.1 に従っ たブ ロ ッ ク 流 し 込み関数のための矩形オプシ ョ ン群 :
Rect ・ Status ・ backgroundcolor ・ bordercolor ・ linewidth
> 流 し 込みオプシ ョ ン群 (111 ページ 「6.1 オブジ ェ ク ト のはめ込み」 参照)
> 表 9.4 に従っ た画像処理のためのオプシ ョ ン群。
戻り値 指定 し た名前のブ ロ ッ ク がページ上にないか、 ま たはブ ロ ッ ク へ流 し 込めないか、 ま たは
ブ ロ ッ ク が も っ と 新 し い PDFlib バージ ョ ン を必要 と する と き は -1。 ブ ロ ッ ク の処理が成
功 し た と き は1。問題の性質に関す る 情報を も っ と 得たい と き は、get_errmsg( ) を使い ます。
詳細 与え た画像ハン ド ルが参照す る 画像が、 ブ ロ ッ ク のプ ロ パテ ィ に従っ て、 ブ ロ ッ ク の中に
配置 さ れます。 image を -1 にす る と 、 こ の関数は、 ブ ロ ッ ク のデフ ォ ル ト 画像があれば
それを使い (Status=ignoredefault でなければ)、 それ以外の場合は警告を出 さ ずに返 り ま
す。
PDF 文書が破損 し てい る こ と がわか っ た と き は、 こ の関数は errorpolicy パ ラ メ タ ま た
はオプシ ョ ンに従っ て、 例外を発生 さ せ る か、 -1 を返 し ます。
スコープ ページ ・ テ ン プ レー ト
182
第 11 章 : ブ ロ ッ ク 流 し 込み関数 (PPS) (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
11.4 PDF ブ ロ ッ ク
VB RB Function fill_pdfblock(
page As Long, blockname As String, contents As Long, optlist As String) As Long
C# int fill_pdfblock(int page, String blockname, int contents, String optlist)
PDF ブ ロ ッ ク へ、 そのプ ロ パテ ィ に従っ て、 可変デー タ を流 し 込みます。
page PDFlib ブ ロ ッ ク を入れて あ る ページに対す る 有効な PDF ページハン ド ル。 こ れ よ
り 前に、 ブ ロ ッ ク を持っ た入力 PDF ページ を、 fit_pdi_page( ) で直接、 ま たは fit_table( )
で表セル内へ間接的に、 あ る いは fill_pdfblock( ) で PDF ブ ロ ッ ク の内容 と し て、 ページ上
に配置 し てお く 必要があ り ます。
blockname
(名前文字列) ブ ロ ッ ク の名前。
contents ブ ロ ッ ク へ流 し 込みたい PDF ページに対す る 有効な PDF ページハン ド ル。 -1
にす る と 、 デフ ォ ル ト PDF ページ (ブ ロ ッ ク のプ ロ パテ ィ で定義 し て あ る ) を使え ます。
optlist PDF ブ ロ ッ ク 流 し 込みオプシ ョ ン群を指定 し たオプシ ョ ン リ ス ト 。 以下のオプ
シ ョ ンが使え ます :
> 一般オプシ ョ ン : errorpolicy (28 ページ 「2.5 例外処理」 参照)
> 表 11.1 に従っ たブ ロ ッ ク 流 し 込み関数のための矩形オプシ ョ ン群 :
Rect ・ Status ・ backgroundcolor ・ bordercolor ・ linewidth
> 流 し 込みオプシ ョ ン群 (111 ページ 「6.1 オブジ ェ ク ト のはめ込み」 参照)
> 表 9.4 に従っ たページ処理のためのオプシ ョ ン群。
戻り値 指定 し た名前のブ ロ ッ ク がページ上にないか、 ま たはブ ロ ッ ク へ流 し 込めないか、 ま たは
ブ ロ ッ ク が も っ と 新 し い PDFlib バージ ョ ン を必要 と す る と き は -1。 ブ ロ ッ ク の処理が成
功 し た と き は1。問題の性質に関す る 情報を も っ と 得たい と き は、get_errmsg( )を使い ます。
詳細 与えたページハン ド ル contents が参照す る PDF ページが、 ブ ロ ッ ク のプ ロ パテ ィ に従っ
て、 ブ ロ ッ ク の中に配置 さ れます。 contents を -1 にす る と 、 こ の関数は、 ブ ロ ッ ク のデ
フ ォ ル ト PDF ページがあればそれを使い (Status=ignoredefault でなければ)、 それ以外の
場合は警告を出 さ ずに返 り ます。
PDF 文書が破損 し てい る こ と がわか っ た と き は、 こ の関数は errorpolicy パ ラ メ タ ま た
はオプシ ョ ンに従っ て、 例外を発生 さ せ る か、 -1 を返 し ます。
スコープ ページ ・ テ ン プ レー ト
11.4 PDF ブ ロ ッ ク
183
184
第 11 章 : ブ ロ ッ ク 流 し 込み関数 (PPS) (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
12 イ ン タ ラ ク テ ィ ブ機能
12.1 イ ン タ ラ ク テ ィ ブ要素のパ ラ メ タ
イ ン タ ラ ク テ ィ ブ要素に関連す る パ ラ メ タ のキー名を表 12.1 に示 し ます (21 ページ 「2.2
パ ラ メ タ ・ オプシ ョ ン処理」 参照)。 こ れ ら のパ ラ メ タ は、 Unicode 対応の言語バ イ ンデ ィ
ン グでは得 ら れません。
表 12.1 get/set_parameter( ) の文字列関連キー一覧
キー
説明
usercoordinates
false な ら 、 ハイパーテキス ト 矩形の座標はデ フ ォ ル ト 座標系で与え られる と 見な さ れま
す。 そ う でなければカ レ ン ト ユーザー座標系が使われます。 デ フ ォ ル ト : false。 ス コ ー
プ : 任意
12.2 ア ク シ ョ ン
VB RB Function create_action(type As String, optlist As String) As Long
C# int create_action(String type, String optlist)
ア ク シ ョ ン を作成 し ます。 ア ク シ ョ ンは、 さ ま ざ ま なオブジ ェ ク ト や イ ベン ト に適用す る
こ と がで き ます。
type
表 12.2 に従っ た ア ク シ ョ ン種別。
表 12.2 ア ク シ ョ ン種別一覧
種別
説明 : こ の種別に関連する オプ シ ョ ン (一般オプ シ ョ ンに加えて)
GoTo
カ レ ン ト 文書の中の移動先へ行き ます : destination ・ destname
GoTo3DView
(PDF 1.6) 3D アニ メ ーシ ョ ンのカ レ ン ト ビ ュ ーを設定 し ます : 3Dview ・ target
GoToE
(PDF 1.6) 埋め込まれた文書の中の移動先へ行き ます : targetpath
GoToR
別の ( リ モー ト ) 文書の中の移動先へ行き ます : destination ・ destname ・ filename ・ newwindow
Hide
(PDF/A では不可) 注釈または フ ォ ーム フ ィ ール ド を、 隠すか、 または表示 さ せます : hide ・
namelist
ImportData
(PDF/A では不可) フ ォ ーム フ ィ ール ド 群の値を フ ァ イルから 取 り 込みます。
JavaScript
(PDF/A では不可) JavaScript コ ー ド によ る ス ク リ プ ト を実行 し ます : script ・ scriptname
Launch
(PDF/A では不可) ア プ リ ケーシ ョ ン または文書を起動 し ます : defaultdir ・ filename ・
newwindow ・ operation ・ parameters
Movie
(PDF/A では不可) 外部のサウ ン ド フ ァ イルかムービー フ ァ イルを、 フ ローテ ィ ン グウ ィ ン ド ウ内
で、 ま たはムービー注釈の矩形内で再生 し ます : operation ・ target
Named
Acrobat の メ ニ ュ ー項目を、 その名前で同定 し て実行 し ます : menuname
ResetForm
(PDF/A では不可) 文書内のフ ィ ール ド をい く つか、 ない し すべて、 デ フ ォ ル ト 値に設定 し ます。
SetOCGState (PDF 1.5) レ イ ヤーを隠すか、 または表示 さ せます : layerstate ・ preserveradio
12.1 イ ン タ ラ ク テ ィ ブ要素のパラ メ タ
185
表 12.2 ア ク シ ョ ン種別一覧
種別
説明 : こ の種別に関連する オプ シ ョ ン (一般オプ シ ョ ンに加え て)
SubmitForm
デー タ を URL (uniform resource locator) へ、 すなわち イ ン タ ーネ ッ ト のア ド レ スへ送信 し ます
(ただ し 、 ベーシ ッ ク認証を要する送信は Acrobat では動作 し ません) : canonicaldate ・ exclude ・
exportmethod ・ submitemptyfields ・ url
Trans
(PDF 1.5) 表示を何らかの視覚効果を使っ て更新 し ます。 こ れは、 連続する複数のア ク シ ョ ンの最
中に表示を制御する ために有用で し ょ う : duration ・ transition
URI
URI (uniform resource identifier) を解決 し ます。 すなわち、 イ ン タ ーネ ッ ト のア ド レ スへ飛びま
す : ismap ・ url
optlist ア ク シ ョ ンの特性群を指定 し たオプシ ョ ン リ ス ト :
> 一般オプシ ョ ン : errorpolicy (表 2.6 参照)
> 表 12.3 に従っ た ア ク シ ョ ンプ ロ パテ ィ オプシ ョ ン群。
戻り値
ア ク シ ョ ンハン ド ル。 文書の中のオブジ ェ ク ト にア ク シ ョ ン を関連づけ る のに使え ます。
ア ク シ ョ ンハン ド ルは、 カ レ ン ト の文書ス コ ープを終え る ま で使え ます。
詳細
こ の関数は、 ただ 1 つのア ク シ ョ ン を作成 し ます。 さ ま ざ ま なオブジ ェ ク ト には (ペー
ジ、 フ ォーム フ ィ ール ド の イ ベン ト 、 し お り 等) 、 複数のア ク シ ョ ン も 与え る こ と がで き
ますが、 ア ク シ ョ ンは 1 つずつ、 個々に create_action( ) を呼び出 し て生成す る 必要があ り
ます。 1 つのア ク シ ョ ン を、 複数のオブジ ェ ク ト に使 う こ と も 可能です。 同 じ オプシ ョ ン
群を持っ た ア ク シ ョ ン を それま でにすでに作成 し てい る 場合は、既存のハン ド ルを再利用
す る こ と を推奨 し ます。
PDF/X : PDF/X ではア ク シ ョ ンは禁 じ ら れてい ます。
PDF/A : PDF/A ではい く つかのア ク シ ョ ンは禁 じ ら れてい ます (表 12.2 参照)。
スコープ ページ ・ 文書。 返 さ れたハン ド ルは、 次に end_document( ) を呼び出すま で使え ます。
表 12.3 create_action( ) のア ク シ ョ ン プ ロパテ ィ オプ シ ョ ン一覧
オプ シ ョ ン
説明
3Dview
(キーワー ド ま たは 3D ビ ュ ーハン ド ル。 GoTo3DView。 必須) 対象 と する 3D 注釈のビ ュ ーを選びま
す。 キーワー ド first ・ last ・ next ・ previous (注釈の views オプ シ ョ ンの中の各項目を参照す
る) ・ default (注釈の defaultview オプ シ ョ ン を参照する) のいずれか、 ま たは create_3dview( )
で作成 し た 3D ビ ュ ーハン ド ル。
canonicaldate
(論理値。 SubmitForm) true にする と 、 日付を表す フ ィ ール ド の送信 さ れる値は、 すべて標準形式
に変換 さ れます。 フ ィ ール ド を日付 と し て解釈する こ と は、 フ ィ ール ド 自体の中ではな く 、 それ
を処理する JavaScript コ ー ド の中でだけ明示的に指定する こ と がで き ます。 デ フ ォ ル ト : false
defaultdir
(文字列。 Launch) 起動する ア プ リ ケーシ ョ ンのためのデ フ ォル ト デ ィ レ ク ト リ を設定 し ます。 こ
れは、 Windows 版の Acrobat でだけ使え ます。 デ フ ォ ル ト : な し
destination
(オプ シ ョ ン リ ス ト 。 GoTo ・ GoToE ・ GoToR。 destname を与えていない と きは必須) 飛ば し たい移動
先を表 12.5 に従っ て指定 し たオプ シ ョ ン リ ス ト 。
destname
(ハイパーテキス ト 文字列)
GoTo (destination を与えていない と きは必須) : add_nameddest( ) で定義 し ておいた移動先の名
前。 こ の移動先は、 それを参照する前に作る こ と も、 後に作る こ と も で き ます。
GoToR ・ GoToE (destination を与えていない と きは必須) : 別の文書の、 ま たは埋め込まれている
文書の中の移動先の名前。
duration
186
(float。 Trans) カ レ ン ト ページの表示遷移効果の継続時間を秒単位で設定 し ます. デ フ ォル ト : 1
第 12 章 : イ ン タ ラ ク テ ィ ブ機能 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 12.3 create_action( ) のア ク シ ョ ン プ ロパテ ィ オプ シ ョ ン一覧
オプ シ ョ ン
説明
exclude
(論理値。 SubmitForm) true にする と 、 namelist オプ シ ョ ンは、 どのフ ィ ール ド を除外 し たいか
を指定 し ます。 文書の中のフ ィ ール ド は、 namelist 配列に挙げてあ る もの と 、 exportable オプ
シ ョ ン を false に し てある も の以外がすべて送信 さ れます。 false にする と 、 namelist オプ シ ョ
ンは、 どのフ ィ ール ド を送信に含めたいかを指定 し ます。 フ ィ ール ド グループ を指定 し ている と
きは、 その メ ンバー も すべて送信 さ れます。 デ フ ォル ト : false
(ResetForm) true にする と 、 namelist オプ シ ョ ンは、 どのフ ィ ール ド を除外 し たいかを指定 し ま
す。 文書内のフ ィ ール ド は、 namelist 配列に挙げてあ る もの以外がすべて リ セ ッ ト さ れます。
false にする と 、 namelist オプ シ ョ ンは、 どのフ ィ ール ド を リ セ ッ ト に含めたいかを指定 し ます。
フ ィ ール ド グループ を指定 し ている と きは、 その メ ンバー も すべて リ セ ッ ト さ れます。 デ フ ォ ル
ト : false
exportmethod
(キーワー ド の リ ス ト 。 SubmitForm) フ ィ ール ド の名前 と 値の送信方法を制御 し ます。 デ フ ォ ル
ト : fdf。
html ・ fdf ・ xfdf ・ pdf
それぞれ、 HTML ・ FDF ・ XFDF ・ PDF 形式で
annotfields(fdf のみ) 注釈 と フ ィ ール ド をすべて含めます。
coordinate (html のみ) submitform ア ク シ ョ ン を引き起 こ し たマウス ク リ ッ クの座標を、 フ ォ ーム
デー タ に含めて送信 し ます。 座標の値は、 フ ィ ール ド の矩形の左上隅から測 っ た も ので
す。
exclurl
(fdf のみ) 送信する FDF か ら url 文字列を除外 し ます。
getrequest (html ・ pdf のみ) HTTP GET を使っ て送信。 指定 し ない と HTTP POST
onlyuser
(fdf ・ annotfields のみ) リ モー ト サーバによ っ て決定 さ れる カ レ ン ト ユーザー名に一
致する名前の注釈だけを送信に含めます。
updates
(fdf のみ) その PDF 文書に入っ ている増分ア ッ プデー ト をすべて含めます
オプ シ ョ ンの組み合わせ例 : exportmethod {fdf updates onlyuser}
filename
(ハイパーテキス ト 文字列) GoToR ・ Launch (必須) : ア ク シ ョ ンが ト リ ガ さ れた時に開かれる、 外
部 (PDF で も それ以外で も) フ ァ イルまたはア プ リ ケーシ ョ ンの名前。 UNC フ ァ イル名は、
\\server\volume と 書 く 必要があ り ます。 Acrobat 8 では、 完全修飾 フ ァ イル名 (パス を含む) を
Launch ア ク シ ョ ン で指定 し て も動き ませんので、 デ ィ レ ク ト リ 名は defaultdir オプ シ ョ ン で与
え、 filename オプ シ ョ ンには単純な フ ァ イル名のみ (デ ィ レ ク ト リ 要素な し の) を与え る こ と を
推奨 し ます。
ImportData (必須) : フ ォ ームデー タ の入 っ ている外部 フ ァ イルの名前。
GoToE : 移動先のルー ト 文書の名前を、 移動元のルー ト 文書から相対的に指定 し ます。 こ の項目を
与え ない と きは、 移動元 と 移動先は同 じ ルー ト 文書を共有 し ます。
hide
(論理値。 Hide) 注釈を隠すか (true)、 それ と も 表示するか (false) を指定 し ます。 デ フ ォル
ト : true
ismap
(論理値。 URI) true にする と 、 url が解決 さ れた時に、 マウス位置の座標が移動先 URI に追加 さ
れます。 デ フ ォ ル ト : false
layerstate
(オプ シ ョ ン リ ス ト 。 SetOCGState。 必須) キーワー ド と レ イ ヤーハン ド ルか ら成る対の リ ス ト 。
使え るキーワー ド :
on
レ イ ヤーを表示 し ます
off
レ イ ヤーを隠 し ます
toggle
レ イ ヤーの状態を反転 さ せます。 こ れを使 う と きは、 preserveradio オプ シ ョ ン を
false に設定 し ている必要があ り ます。
12.2 ア ク シ ョ ン
187
表 12.3 create_action( ) のア ク シ ョ ン プ ロパテ ィ オプ シ ョ ン一覧
オプ シ ョ ン
説明
menuname
(文字列。 Named。 必須) 実行 し たい メ ニ ュ ー項目の名前。 PDF/A モー ド では、 よ く 知 られている
名前 nextpage ・ prevpage ・ firstpage ・ lastpage だけが許 さ れます。 それ以外の場合は、 他の名
前も受け付けます。 他の メ ニ ュ ー項目の名前を見つける ための完全な コ ー ド サン プルが ク ッ ク
ブ ッ ク の interactive/acrobat_menu_items ト ピ ッ ク にあ り ます。
namelist
(文字列の リ ス ト 。 Hide。 必須) 隠 し たいか、 あるいは表示 さ せたい注釈群またはフ ィ ール ド 群の
名前 (グループ名を含む)。
(SubmitForm) exclude オプ シ ョ ンの設定に よ っ て、 送信に含めたいか、 あ るいは除外 し たい
フ ォ ーム フ ィ ール ド 群の名前 (グループ名を含む)。 デ フ ォル ト : exportable オプ シ ョ ン を false
に し てある フ ィ ール ド 以外がすべて送信 さ れます。
(ResetForm) exclude オプ シ ョ ンの設定によ っ て、 リ セ ッ ト に含めたいか、 あ るいは除外 し たい
フ ォ ーム フ ィ ール ド 群の名前 (グループ名を含む)。 デ フ ォル ト : すべてのフ ィ ール ド が リ セ ッ ト
さ れます。
newwindow
(論理値。 GoToE ・ GoToR) 移動先の文書を新 し いウ ィ ン ド ウで開 く かど う かを指定する フ ラ グ。 こ
のフ ラ グ を false にする と 、 移動先の文書はカ レ ン ト 文書か ら同 じ ウ ィ ン ド ウの中で切 り 換わ り
ます。
Launch : こ の項目は、 フ ァ イルが PDF 文書で ない と きは無視 さ れます。 デ フ ォル ト : Acrobat は、
カ レ ン ト の環境設定に従っ て動作 し ます。
operation
こ のオプ シ ョ ンは type=Launch と type=Movie で使い方が異な り ます :
(キーワー ド 。 Launch) filename オプ シ ョ ン で指定 し ている文書に適用 し たい操作を指定するキー
ワー ド 。 これは、 Windows 版の Acrobat でだけ使え ます。 filename オプ シ ョ ンが文書で な く ア プ リ
ケーシ ョ ン を指 し ている と きは、 こ のオプ シ ョ ンは無視 さ れて、 ア プ リ ケーシ ョ ンが起動 さ れま
す。 と り う るキーワー ド (デ フ ォ ル ト : open) :
open
文書を開き ます
print
文書を印刷 し ます
(キーワー ド 。 Movie) ムービーま たはサウ ン ド に適用 し たい操作を指定するキーワー ド 。 と り う
るキーワー ド (デ フ ォ ル ト : play) :
play
ムービーの再生を開始 し ます。 その際、 そのムービー注釈の playmode オプ シ ョ ン で指
定 さ れている モー ド を使用 し ます。 その時点でそのムービーが一時停止 さ れている と き
は、 再生位置を先頭へ戻 し てから 再生 さ れます。
stop
ムービーの再生を停止 し ます。
pause
ムービーの再生を一時停止 し ます。
resume
一時停止 さ れているムービーを再開 し ます。
parameters
(文字列。 Launch) filename オプ シ ョ ン で指定 し ている ア プ リ ケーシ ョ ンに渡 し たい引数文字列。
こ れは、 Windows 版の Acrobat でだけ使え ます。 複数の引数はスペースキ ャ ラ ク タ で区切る こ と が
で き ますが、 個々の引数には一切スペースキ ャ ラ ク タ を入れてはいけません。 filename が文書を
指 し ている と きは、 こ のオプ シ ョ ンは指定するべき ではあ り ません。 デ フ ォル ト : な し
preserveradio
(論理値。 SetOCGState) true にする と 、 レ イ ヤー間のラ ジオボ タ ン状態関係を保持 し ます。 デ
フ ォル ト : true
script
(ハイパーテキス ト 文字列。 JavaScript。 必須) 実行 さ せたい JavaScript コ ー ド を入れた文字列。
scriptname
(ハイパーテキス ト 文字列。 JavaScript) 指定する と 、 script オプ シ ョ ン で与えている JavaScript
は、 文書レ ベルの指定名の JavaScript と し て挿入 さ れます。 文書内で同 じ scriptname を複数回与
え る と 、 最後のス ク リ プ ト だけが使われ、 他は無視 さ れます。 文書レ ベルの JavaScript は、
Acrobat で文書が読み込まれた後に実行 さ れます。 これは、 フ ォ ーム フ ィ ール ド で使いたいス ク リ
プ ト で有用で し ょ う 。
188
第 12 章 : イ ン タ ラ ク テ ィ ブ機能 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 12.3 create_action( ) のア ク シ ョ ン プ ロパテ ィ オプ シ ョ ン一覧
オプ シ ョ ン
説明
submitemptyfields
(論理値。 SubmitForm。 PDF 1.4) true にする と 、 namelist ・ exclude オプ シ ョ ン で決ま るすべての
フ ィ ール ド が、 値を持つかど う かにかかわ ら ず、 送信 さ れます。 値のない フ ィ ール ド については、
フ ィ ール ド 名だけが送信 さ れます。 false にする と 、 値のない フ ィ ール ド は送信 さ れません。 デ
フ ォ ル ト : false
target
(文字列。 GoTo3DView ・ Movie。 必須) create_annotation( ) の name オプ シ ョ ン で指定するの と 同 じ 、
対象 と し たい 3D 注釈またはムービー注釈の名前。
targetpath
(オプ シ ョ ン リ ス ト 。 GoToE。 filename を指定 し ていなければ必須) 移動先文書のパス情報を指定
し た移動先オプ シ ョ ン リ ス ト (表 12.4 参照)。 各移動先オプ シ ョ ン リ ス ト は、 移動先へのフ ルパス
の中の 1 個の要素を指定 し 、 追加の要素群を持 っ た入れ子の移動先オプ シ ョ ン リ ス ト 群を持つ こ
と も で き ます。
transition
(キーワー ド 。 Trans) 表示遷移効果を設定 し ます。 キーワー ド の一覧は表 3.7 を参照。 デ フ ォ ル
ト : replace
url
(文字列。 URI ・ SubmitForm。 必須) リ ン ク先を指定する (type=URI の場合)、 ま たは送信内容を処
理 さ せたい Web サーバ上のス ク リ プ ト のア ド レ ス を指定する (type=SubmitForm の場合) URL
(Uniform Resource Locator) を、 7 ビ ッ ト ASCII または EBCDIC (ただ し ASCII 文字だけを含む) で
エ ン コ ー ド し た もの。 任意の リ ソ ース (Web で も ロー カルで も) を指 し 示す こ と がで き、 先頭に
プ ロ ト コ ル識別子 (http:// な ど) が必要です。 textx/texty ・ currentx/currenty ・ imagewidth/
imageheight パラ メ タ は、 リ ン ク の矩形の寸法を算出する ための位置情報を取得するのに有用かも
し れません。
表 12.4 create_action( ) の targetpath オプ シ ョ ンのサブオプ シ ョ ン一覧
オプ シ ョ ン
説明
annotation
(ハイパーテキス ト 文字列。 relation=child かつ移動先がフ ァ イル添付注釈に関連づけ られている
場合は必須) pagenumber か destname で指定 し たページ上の移動先のフ ァ イル添付注釈の名前を指
定 し ます。
destname
(ハイパーテキス ト 文字列。 pagenumber を与えていて、 かつ relation=child で、 し か も移動先が
フ ァ イル添付注釈に関連づけ られている場合以外は必須) 移動先の フ ァ イル添付注釈を内容 と し
て持つ カ レ ン ト 文書内のページに対する名前付き移動先を指定 し ます。 こ のオプ シ ョ ンは、
pagenumber を指定する と 無視 さ れます。
name
(ハイパーテキス ト 文字列。 relation=child かつ移動先が添付 リ ス ト 内に置かれている場合は必
須。 それ以外の場合は指定 し てはいけません。 annotation を指定する と 無視 さ れます) begin/end_
document( ) の添付 リ ス ト 内の移動先の名前。
pagenumber (整数。 destname を与えていて、 かつ relation=child で、 し かも 移動先がフ ァ イル添付注釈に関
連づけ ら れている場合以外は必須。 destname を指定する と 無視 さ れます) 移動先のフ ァ イル添付
注釈を内容 と し て持つ カ レ ン ト 文書内のページの番号を指定 し ます。
relation
targetpath
(キーワー ド 。 必須) カ レ ン ト 文書 と 移動先 (中間移動先で も可) の関係を指定 し ます。 使え る
キーワー ド :
parent
移動先はカ レ ン ト 文書の親です。
child
移動先はカ レ ン ト 文書の子です。
(オプ シ ョ ン リ ス ト ) 追加の移動先文書のパス情報を表 12.4 に従 っ て指定 し た移動先オプ シ ョ ン リ
ス ト 。 こ のオプ シ ョ ン を指定 し ない と 、 カ レ ン ト 文書が、 移動先を含む移動先フ ァ イル と な り ま
す。
12.2 ア ク シ ョ ン
189
12.3 名前付 き移動先
VB RB Sub add_nameddest(name As String, optlist As String)
C# void add_nameddest(String name, String optlist)
名前付 き 移動先を、 文書のページ上に作成 し ます。
name (ハ イ パーテ キ ス ト 文字列) 移動先の名前。 リ ン ク 、 し お り 、 その他の ト リ ガの対
象 と し て使え ます。 移動先名は、 文書内で一意にす る 必要があ り ます。 文書内で同 じ 名前
を複数回与え る と 、 最後の定義だけが使われて、 他は無警告で無視 さ れます。
optlist 移 動 先 を 指 定 し た オ プ シ ョ ン リ ス ト 。 空 リ ス ト に す る と 、 {type=fitwindow
page=0} と 同義にな り ます。 以下のオプシ ョ ンが使え ます :
> 一般オプシ ョ ン : errorpolicy (表 2.6 参照)
> 表 12.5 に従っ た移動先制御オプシ ョ ン群 :
bottom ・ group ・ left ・ page ・ right ・ top ・ type ・ zoom
詳細 optlist で移動先の詳細を指定す る 必要があ り ます。 移動先は、 カ レ ン ト 文書の ど のページ
にあ っ て も か ま い ません。 与え る name は、 create_action( ) ・ create_annotation( ) ・ create_
bookmark( ) ・ begin/end_document( ) の destname オプシ ョ ンで使え ます。 こ のや り 方で
は、 移動先の定義 と 利用 と を、 2 つの別々の ス テ ッ プに分け る こ と がで き ます。
あ る いは、 移動先が利用の時にわか る 場合は、 こ れ ら の関数で destination オプシ ョ ン
を使っ て、 名前付 き 移動先の定義 と 利用を一度に行 う こ と も で き ま すので、 その場合は
add_nameddest( ) は必要あ り ません。
スコープ 文書 ・ ページ
表 12.5 add_nameddest( ) の移動先オプ シ ョ ン一覧。 create_action( ) ・ create_annotation( ) ・ create_bookmark( ) ・
begin/end_document( ) の destination オプ シ ョ ン で も使え ます。
オプ シ ョ ン
説明
bottom
(float。 type=fitrect のみ) ウ ィ ン ド ウの下端に合わせたい、 ページの y 座標。 デ フ ォル ト : 0
group
(文字列。 page オプ シ ョ ン を指定 し ている と き、 文書がページグループ を使 っ ている な ら 必須。 そ
れ以外な ら禁止) 移動先のページが属するページグループの名前。
left
(float。 type=fixed ・ fitheight ・ fitrect ・ fitvisibleheight のみ) ウ ィ ン ド ウの左端に合わせた
い、 ページの x 座標。 デ フ ォ ル ト : 0
page
(整数) 移動先ページのページ番号 (先頭ページは 1)。 ページは、 移動先 PDF に存在 し ている必
要があ り ます。 page 0 にする と 、 ページ ス コ ープの中ではカ レ ン ト ページ を、 文書ス コ ープの中
では page 1 を意味 し ます。 デ フ ォル ト : 0
right
(float。 type=fitrect のみ) ウ ィ ン ド ウの右端に合わせたい、 ページの x 座標。 デ フ ォ ル ト : 1000
top
(float。 type=fixed ・ fitwidth ・ fitrect ・ fitvisiblewidth のみ) ウ ィ ン ド ウの上端に合わせた
い、 ページの y 座標。 デ フ ォ ル ト : 1000
190
第 12 章 : イ ン タ ラ ク テ ィ ブ機能 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 12.5 add_nameddest( ) の移動先オプ シ ョ ン一覧。 create_action( ) ・ create_annotation( ) ・ create_bookmark( ) ・
begin/end_document( ) の destination オプ シ ョ ン で も使え ます。
オプ シ ョ ン
説明
type
(キーワー ド ) 対象ページ上でのウ ィ ン ド ウの位置を指定 し ます。 と り う るキーワー ド (デ フ ォル
ト : fitwindow) :
fitheight
ページの高 さ を ウ ィ ン ド ウに収めて、 x 座標 left を ウ ィ ン ド ウの左端に合わせます。
fitrect
left ・ bottom ・ right ・ top で指定 し ている矩形をウ ィ ン ド ウに収めます。
fitvisible
ページの描画領域 (ArtBox) を ウ ィ ン ド ウに収めます。
fitvisibleheight
ページの描画領域をウ ィ ン ド ウに収めて、 x 座標 left を ウ ィ ン ド ウの左端に合わせま
す。
fitvisiblewidth
ページの描画領域をウ ィ ン ド ウに収めて、 y 座標 top を ウ ィ ン ド ウの上端に合わせま
す。
fitwidth ページの幅をウ ィ ン ド ウに収めて、 y 座標 top を ウ ィ ン ド ウの上端に合わせます。
fitwindow ページ全体をウ ィ ン ド ウに収めます。
fixed
zoom
left ・ top ・ zoom オプ シ ョ ン で指定 し ている、 固定 し た移動先表示を使います。 こ れら
のいずれかを指定 し ない と 、 そのカ レ ン ト 値が保たれます。
(float またはパーセ ン ト 値。 type=fixed のみ) ページ内容の表示に使いたい倍率 (1 が 100% を意
味 し ます)。 こ のオプ シ ョ ン を指定 し ないか、 または 0 にする と 、 リ ン クが押 さ れた時に適用 さ れ
ていた表示倍率が保たれます。
12.3 名前付き移動先
191
12.4 注釈
VB RB Sub create_annotation(llx As Double, lly As Double, urx As Double, ury As Double,
type As String, optlist As String)
C# void create_annotation(double llx, double lly, double urx, double ury, String type, String optlist)
注釈を、 カ レ ン ト ページ上に作成 し ます。
llx ・ lly ・ urx ・ ury 注釈の矩形の左下隅 と 右上隅の x ・ y 座標 を、 デ フ ォ ル ト 座標で
(usercoordinates パ ラ メ タ ま たはオプシ ョ ン を false に し た と き )、 ま たはユーザー座標で
(true に し た と き ) 指定 し ます。 Acrobat は、 注釈の左上隅を、 指定矩形の左上隅に合わせ
ます。
注 釈 の 座 標 は、 rect( )
関 数 の 引 数 と は 違 う こ と に 注 意 し て く だ さ い。 create_
annotation( ) では引数が 2 個の隅を直接 と る のに対 し 、 rect( ) では、 1 個の隅の座標に幅
と 高 さ の値を あわせて指定 し ます。
usematchbox オプシ ョ ン を指定 し てい る と き は、 引数 llx/lly/urx/ury は無視 さ れます。
type 表 12.6 に従っ た注釈種別。 マー ク ア ッ プ注釈は表内で特記 し てい ます。 オプシ ョ
ンのなかにはマー ク ア ッ プ注釈にのみ適用 さ れ る も のがあ る か ら です。
表 12.6 注釈種別一覧
種別
説明 : こ の種別に関連する オプ シ ョ ン (一般オプ シ ョ ンに加え て)
3D
(PDF 1.6) ア ニ メ ーシ ョ ン 3D モデル : 3Dactivate ・ 3Ddata ・ 3Dinteractive ・ 3Dshared ・
3Dinitialview
Circle1
楕円形 : cloudy ・ createrichtext ・ inreplyto ・ interiorcolor ・ replyto
File-
(PDF/A では不可) フ ァ イル添付 : calloutline ・ createrichtext ・ filename ・ iconname ・
inreplyto ・ mimetype ・ replyto
Attachment1
FreeText1
テキス ト ボ ッ ク ス : alignment ・ calloutline ・ cloudy ・ createrichtext ・ endingstyles ・
fillcolor ・ font ・ fontsize ・ inreplyto ・ orientate ・ replyto
Highlight1
ハイ ラ イ ト : createrichtext ・ inreplyto ・ polylinelist ・ replyto
Ink1
鉛筆 : createrichtext ・ inreplyto ・ polylinelist ・ replyto
Line1
線 : captionoffset ・ captionposition ・ createrichtext ・ endingstyles ・ interiorcolor ・
inreplyto ・ leaderlength ・ leaderoffset ・ line ・ showcaption ・ replyto
Link
リ ン ク : destination ・ destname ・ highlight
Movie
ムービーま たはサウ ン ド 注釈 : filename ・ movieposter ・ playmode ・ showcontrols ・ soundvolume ・
windowposition ・ windowscale
Polygon1
(PDF 1.5) 多角形。 頂点群を直線で結んだ も のです : cloudy ・ createrichtext ・ inreplyto ・
polylinelist ・ replyto
PolyLine1
(PDF 1.5) 折れ線。 多角形に似ていますが、 最初 と 最後の頂点が結ばれない こ と が違います :
createrichtext ・ endingstyles ・ inreplyto ・ interiorcolor ・ polylinelist ・ replyto
Popup
ポ ッ プ ア ッ プ : open ・ parentname
Square1
長方形 : cloudy ・ createrichtext ・ inreplyto ・ interiorcolor ・ replyto
192
第 12 章 : イ ン タ ラ ク テ ィ ブ機能 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 12.6 注釈種別一覧
種別
説明 : こ の種別に関連する オプ シ ョ ン (一般オプ シ ョ ンに加えて)
Squiggly
1
(PDF 1.4) 波線。 波型の下線注釈です : createrichtext ・ inreplyto ・ polylinelist ・ replyto
Stamp1
ス タ ン プ : createrichtext ・ iconname ・ inreplyto ・ orientate ・ replyto
StrikeOut1
取 り 消 し 線 : createrichtext ・ inreplyto ・ polylinelist ・ replyto
Text1
Acrobat では、 こ の種別は ノ ー ト 注釈 と 呼ばれます : createrichtext ・ iconname ・ inreplyto ・
open ・ replyto ・ state ・ statemodel
Underline1
下線 : createrichtext ・ inreplyto ・ polylinelist ・ replyto
1. マー ク ア ッ プ注釈。 こ れは createrichtext オ プ シ ョ ン で意味を持ち ます。
optlist 注釈のプ ロ パテ ィ 群を指定 し た オプ シ ョ ン リ ス ト 。 以下のオプ シ ョ ン が使え ま
す:ٛ
> 表 12.7 に従っ た以下の共通オプシ ョ ン群がすべての注釈種別で使え ます :
action ・ annotcolor ・ borderstyle ・ cloudy ・ contents ・ createdate ・ custom ・ dasharray ・
displaylayer ・ linewidth ・ locked ・ lockedcontents ・ name ・ opacity ・ popup ・ readonly ・
rotate ・ subject ・ template ・ title ・ usematchbox ・ usercoordinates ・ zoom
> 表 12.7 に従っ た以下の種別特有オプシ ョ ン群が、表 12.6 に従っ た何 ら かの注釈種別で
使え ます :
3Dactivate ・ 3Dbox ・ 3Ddata ・ 3Dicon ・ 3Dinteractive ・ 3Dshared ・ 3Dinitialview ・
alignment ・ calloutline ・ captionoffset ・ captionposition ・ createrichtext ・ destname ・
endingstyles ・ filename ・ fillcolor ・ font ・ fontsize ・ highlight ・ iconname ・
interiorcolor ・ inreplyto ・ leaderlength ・ leaderoffset ・ line ・ mimetype ・ movieposter ・
open ・ orientate ・ parentname ・ playmode ・ polylinelist ・ replyto ・ showcaption ・
showcontrols ・ soundvolume ・ windowposition ・ windowscale
詳細 PDF/X : 注釈は、 完全に BleedBox (BleedBox がない と き は TrimBox/ArtBox) の外に置 く
場合のみ許 さ れます。
PDF/A : い く つかの注釈種別 と オプシ ョ ンが制約 さ れます。 表 12.6 ・ 表 12.7 を参照。
タ グ付 き PDF : カ レ ン ト のア ク テ ィ ブな ア イ テ ムがあ る と き は、 注釈はカ レ ン ト ア イ
テ ムの子 と し て挿入 さ れます。
スコープ ページ
表 12.7 create_annotation( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
3Dactivate
(オプ シ ョ ン リ ス ト 。 type=3D のみ) 3D 注釈を ア ク テ ィ ブにする タ イ ミ ング と 、 ア ク テ ィ ブ ・ 非ア
ク テ ィ ブに し た と きの状態を指定 し ます。 表 12.8 に挙げる オプ シ ョ ンが使え ます :
3Ddata
(オプ シ ョ ン リ ス ト 。 type=3D のみ。 必須) load_3ddata( ) で作成 し た 3D ハン ド ル。
3Dinteractive
(論理値。 type=3D のみ) true にする と 、 3D モデルはイ ン タ ラ ク テ ィ ブ な用途を想定 し ます。
false にする と 、 JavaScript で動か さ れる こ と を想定 し ます。 デ フ ォル ト : true
3Dshared
(論理値。 type=3D のみ) true にする と 、 3Ddata オプ シ ョ ン で指定 し ている 3D デー タ は、 間接的
に参照 さ れます。 同 じ デー タ を間接的に参照する複数の 3D 注釈は、 そのモデルのただ 1 つの動作
時実体を共有 し ます。 こ れはすなわち、 変更はそのよ う な注釈すべてにおいて同時に見え る こ と
を意味 し ます。 デ フ ォ ル ト : false
12.4 注釈
193
表 12.7 create_annotation( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
3Dinitialview
(キーワー ド ま たは 3D ビ ュ ーハン ド ル) 3D モデルの初期ビ ュ ーを指定 し ます。 キーワー ド
first ・ last ・ (モデルの views オプ シ ョ ンの中の各項目を参照する) ・ default (モデルの
defaultview オプ シ ョ ン を参照する) のいずれか、 または load_3ddata( ) で作成 し た 3D ビ ュ ーハン
ド ル。 デ フ ォ ル ト : default
action
(ア ク シ ョ ン リ ス ト ) 以下のイ ベン ト に対する注釈ア ク シ ョ ンの リ ス ト (デ フ ォル ト : 空 リ ス ト )。
あ ら ゆる種類のア ク シ ョ ンが使え ます :
activate
(type=Link のみ) その注釈がア ク テ ィ ブに さ れた時に実行 さ せたいア ク シ ョ ン。
close
(PDF 1.5) その注釈を含むページが閉 じ られた時に実行 さ せたいア ク シ ョ ン。
open
(PDF 1.5) その注釈を含むページが開かれた時に実行 さ せたいア ク シ ョ ン。
invisible
(PDF 1.5) その注釈を含むページがも う 見えな く な っ た時に実行 さ せたいア ク シ ョ ン。
visible
(PDF 1.5) その注釈を含むページが見えた時に実行 さ せたいア ク シ ョ ン。
alignment
(キーワー ド 。 type=FreeText のみ) 注釈の中のテキス ト の整列 : left ・ center ・ right。 デ フ ォ ル
ト : left
annotcolor
(色) 注釈のア イ コ ンが閉 じ ている時の背景 と 、 注釈のポ ッ プ ア ッ プウ ィ ン ド ウの タ イ ト ルバー
と 、 リ ン ク注釈の枠の色。 使え る色空間 : none (type=Square ・ Circle では不可) ・ gray ・ rgb ・
(PDF 1.6 で) cmyk。
PDF/A モー ド では こ のオプ シ ョ ンは、 RGB の出力イ ン テ ン ト を指定 し ている と きのみ使 う こ と が
で き、 かつ gray または rgb カ ラ ーを使 う 必要があ り ます。
デ フ ォ ル ト : type=Square ・ Circle な ら white、 それ以外な ら none
borderstyle
(キーワー ド ) 注釈の枠か、 または種別 Polygon ・ PolyLine ・ Line ・ Square ・ Circle ・ Ink の注釈
の線のス タ イル : solid ・ beveled ・ dashed ・ inset ・ underline。 ただ し 、 beveled ・ inset ・
underline ス タ イルは Acrobat で正 し く 働き ません。 デ フ ォ ル ト : solid
calloutline
(float 4 個か 6 個の リ ス ト 。 PDF 1.6。 type=FreeText のみ) テキス ト ボ ッ ク ス注釈に付ける引き出
し 線を指定 し た 4 個か 6 個の float 値。 6 個の数値 {x1 y1 x2 y2 x3 y3} は、 線の開始 ・ 折れ点 ・ 終
了座標を表 し ます。 4 個の数値 {x1 y1 x2 y2} は、 線の開始 ・ 終了座標を表 し ます。 座標は、 デ
フ ォル ト 座標で (usercoordinates オプ シ ョ ン を false に し た と き)、 またはユーザー座標で
(true に し た と き) 解釈 さ れます。
開始点は、 endingstyles オプ シ ョ ンの 1 番目のキーワー ド で指定 し た記号で修飾 さ れます。
captionoffset
(float 2 個。 type=Line のみ。 PDF 1.7) キ ャ プ シ ョ ン テキス ト の通常位置から の変位。 1 番目の値
は、 注釈線の中点か らの、 線に沿 っ た横変位を指定 し 、 正の値は右への変位を、 負の値は左への
変位を表 し ます。 2 番目の値は、 注釈線に垂直な縦変位を指定 し 、 正の値は上への変位を、 負の値
は下への変位を表 し ます。 デ フ ォ ル ト : {0, 0}、 すなわち通常位置からの変位な し
captionposition
(キーワー ド 。 type=Line のみ。 PDF 1.7) 注釈のキ ャ プ シ ョ ン位置。 こ のオプ シ ョ ンは、
showcaption=false にする と 無視 さ れます。 使え るキーワー ド (デ フ ォル ト : Inline) :
cloudy
194
Inline
キ ャ プ シ ョ ンは線の内側で中央揃え さ れます。
Top
キ ャ プ シ ョ ンは線の上方に置かれます。
(float。 type=Circle ・ FreeText ・ Polygon ・ Square のみ。 PDF 1.5) 多角形の変形に用い られる
「雲型」 効果の強度を指定 し ます。 と り う る値は 0 (効果な し ) ・ 1 ・ 2。 このオプ シ ョ ン を用いる
と 、 borderstyle オプ シ ョ ンは無視 さ れます。 デ フ ォ ル ト : 0
第 12 章 : イ ン タ ラ ク テ ィ ブ機能 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 12.7 create_annotation( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
contents
(type=FreeText の場合は文字列、 それ以外の場合は最大長 65535 バイ ト のハイパーテキス ト 文字
列) 注釈で表示 さ せたいテキス ト か、 ま たは (テキス ト を表示 し ない注釈の場合) 注釈の内容の
人間が読める形での代替説明。 キ ャ リ ッ ジ リ タ ーン ま たはラ イ ン フ ィ ー ド キ ャ ラ ク タ を使 う と 、
段落替え を強制する こ と がで き ます。
PDF/A-1a モー ド では、 こ のオプ シ ョ ンは必須であ り 、 かつ、 空で ない文字列を入れる必要があ り
ます。
createdate
(論理値。 PDF 1.5 以上) true にする と 、 注釈に対 し て日付 ・ 時刻項目が作成 さ れます。 デ フ ォル
ト : false
createrichtext
(オプ シ ョ ン リ ス ト 。 マー ク ア ッ プ註釈のみ。 contents オプ シ ョ ン を空にする必要があ り ます。
PDF 1.5) テキス ト フ ローから リ ッ チ テキス ト 内容を作成 し ます。 こ れは、 組版 さ れた テキス ト を
注釈のために生成するのに有用で し ょ う 。 使え るサブオプ シ ョ ン :
textflow
(テキス ト フ ローハン ド ル) 注釈に リ ッ チ テキス ト と し て付ける テキス ト フ ロー。 この
テキス ト フ ローハン ド ルを、 create_annotation( ) への呼び出 し の前に fit_textflow/table( )
に与え ていた場合は、 残 り のテキス ト だけが注釈に用い られます。 テキス ト がそれ以上
得 られない と きは、 テキス ト フ ローが先頭から再開 さ れます。 テキス ト フ ローを注釈に
用いて も 、 その後の fit_textflow/table( ) への呼び出 し には影響を与え ません。
userunit
(キーワー ド ) ス カ ラ ー値 (firstlinedist ・ fontsize 等) に対する長 さ 単位 : cm (セ
ン チ メ ー ト ル) ・ in (イ ン チ) ・ mm ( ミ リ メ ー ト ル) ・ pt (ポ イ ン ト )。 デ フ ォ ル ト : pt
リ ッ チ テキス ト を作成する際には、 以下のテキス ト フ ローオプ シ ョ ン群が効力を持ち、 こ れ以外
はすべて無視 さ れます :
nextline ・ alignment ・ fillcolor ・ underline ・ strikeout ・ font ・ fontsize ・ textrise ・ テキス
ト 組版オプ シ ョ ン群
注意 : font と alignment を設定 し て も、 Acrobat では期待 し た通 り に動作 し ません。
custom
(オプ シ ョ ン リ ス ト の リ ス ト 。 高度なユーザーのみ) こ のオプ シ ョ ン を使 う と 、 注釈辞書の中に任
意の数のプ ラ イ ベー ト 項目を挿入する こ と がで き ます。 こ れは、 デジ タ ル出力機のための処理命
令を挿入する な ど、 専門的な応用において有用で し ょ う 。 こ のオプ シ ョ ン を使 う には、 PDF フ ァ
イル形式 と 対象応用分野に関する知識が必要です。 不適切な値を与え る と 、 破損 し た PDF 出力が
生成 さ れる こ と があ り ます。 使え るサブオプ シ ョ ン :
key
(文字列。 必須) 辞書キーの名前 (キ ャ ラ ク タ / を除いた も の)。 あ ら ゆる非標準の PDF
キーのほか、 右記の標準キー も指定で き ます : Contents ・ Name (iconname オプ シ ョ
ン) ・ NM (name オプ シ ョ ン) ・ Open。 それぞれオプ シ ョ ンは この場合無視 さ れます。
type
(キーワー ド 。 必須) その値の型。 boolean ・ name ・ string のいずれかにする必要があ
り ます。
value
(type=string に し ている と きはハイパーテキス ト 文字列、 そ う で なければ文字列。 必
須) PDF 出力内に現れる と お り の値。 PDFlib は、 文字列 と 名前に必要な修飾をすべて自
動的に行います。
dasharray
(float の リ ス ト 。 borderstyle=dashed のみ) 破線枠の短線 と 間隙の長 さ を、 デ フ ォ ル ト 単位で指定
し ます (setdash( ) 参照)。 デ フ ォル ト : 3 3
destination
(オプ シ ョ ン リ ス ト 。 type=Link のみ。 activate ア ク シ ョ ン を指定 し ている と 無視 さ れます) 飛ば
し たい移動先を表 12.5 に従っ て定義 し たオプ シ ョ ン リ ス ト
destname
(ハイパーテキス ト 文字列。 type=Link のみ。 destination オプ シ ョ ン を指定 し ている と 無視 さ れ
ます) add_nameddest( ) で定義 し ておいた移動先の名前。 create_action( ) の destination または
destname オプ シ ョ ン で作成 し たア ク シ ョ ンは、 こ のオプ シ ョ ン よ り も優先 さ れます。
display
(キーワー ド ) 画面 と 紙の上での表示 ・ 非表示。 visible ・ hidden ・ noview ・ noprint。 デ フ ォ ル
ト : visible
12.4 注釈
195
表 12.7 create_annotation( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
endingstyles
(キーワー ド の リ ス ト 。 type=FreeText ・ Line ・ PolyLine のみ) 線端ス タ イルを指定 し たキーワー
ド 2 個の リ ス ト 。 type=FreeText の場合は、 2 番目のキーワー ド は無視 さ れます (デ フ ォ ル ト :
{none none}) :
none ・ square ・ circle ・ diamond ・ openarrow ・ closedarrow
こ れに加えて PDF 1.5 では : butt ・ ropenarrow ・ rclosedarrow
こ れに加えて PDF 1.6 では : slash
filename
(文字列。 type=FileAttachment ・ Movie のみ。 必須) こ のフ ァ イル名は、 グローバルな
filenamehandling オプ シ ョ ン またはパラ メ タ に従 っ て解釈 さ れます。 表 2.2 参照。
type=FileAttachment の場合 : 注釈に関連づけたい フ ァ イルの名前。
type=Movie の場合 : 右記のいずれかの形式の メ デ ィ ア フ ァ イルの名前 : AVI ・ QuickTime ムー
ビー、 WAV ・ AIFF サウ ン ド
fillcolor
(色。 type=FreeText のみ) テキス ト の塗 り 色。 使え る色空間 : gray ・ rgb ・ cmyk。 PDF/A モー ド
では こ のオプ シ ョ ンは、 RGB か CMYK の出力イ ン テ ン ト を指定 し ている と きのみ使 う こ と がで き、
かつそれぞれ rgb か cmyk の色空間を使 う 必要があ り ます。 デ フ ォ ル ト : {gray 0} (=黒)
font
(フ ォ ン ト ハン ド ル。 type=FreeText のみ。 必須) 注釈で使いたい フ ォ ン ト を指定 し ます。
fontsize
(文字サイ ズ。 type=FreeText のみ。 必須) 文字サイ ズを、 usercoordinates オプ シ ョ ン またはパ
ラ メ タ に応 じ て、 デ フ ォル ト かユーザー座標かで指定 し ます。 値 0 またはキーワー ド auto を指定
する と 、 Acrobat が文字サイ ズを矩形に合わせて調節 し ます。
highlight
(キーワー ド 。 type=Link のみ) ユーザーが注釈を ク リ ッ ク し た時の、 その注釈のハイ ラ イ ト モー
ド : none ・ invert ・ outline ・ push。 デ フ ォ ル ト : invert
iconname
(文字列。 type=Text ・ Stamp ・ FileAttachment のみ) 注釈の表示に使いたいア イ コ ンの名前 (目に
見え る ア イ コ ン を一切持たない注釈を作成するには、 opacity=0 と 設定 し ます) :
type=Text の場合 (デ フ ォ ル ト : note) :
comment
・ key
・ note
・ help
・ newparagraph
・ paragraph
・ insert
type=Stamp の場合 (デ フ ォ ル ト : draft) :
approved ・ experimental ・ notapproved ・ asis ・ expired ・ notforpublicrelease ・ confidential ・
final ・ sold ・ departmental ・ forcomment ・ topsecret ・ draft ・ forpublicrelease
type=FileAttachment の場合 (デ フ ォル ト : pushpin) :
graph
・ pushpin
・ paperclip
・ tag
template オプ シ ョ ン を使 う と カ ス タ ムア イ コ ン を作成する こ と がで き ます。
interiorcolor
(色。 type=Line ・ PolyLine ・ Square ・ Circle のみ) それぞれ、 注釈の線端 ・ 矩形 ・ 楕円の色。 使
え る色空間 : none ・ gray ・ rgb ・ (PDF 1.6 で) cmyk。 PDF/A モー ド では こ のオプ シ ョ ンは、 RGB
の出力イ ン テ ン ト を指定 し ている と きのみ使 う こ と がで き、 かつ gray または rgb カ ラ ーを使 う 必
要があ り ます。 デ フ ォ ル ト : none
inreplyto
(ハイパーテキス ト 文字列。 PDF 1.5。 マー ク ア ッ プ注釈のみ。 replyto オプ シ ョ ン を与えた と きは
必須) こ の注釈の返信先である注釈の名前 (name オプ シ ョ ン参照)。 両方の注釈が文書の同 じ ペー
ジ上にある必要があ り ます。 2 個の注釈の間の関係を replyto オプ シ ョ ン で指定する必要があ り ま
す。
layer
(レ イ ヤーハン ド ル。 PDF 1.5) 注釈を属 さ せたいレ イ ヤー。 注釈が可視にな るのは、 そのレ イヤー
を可視に し ている と き だけにな り ます。
196
第 12 章 : イ ン タ ラ ク テ ィ ブ機能 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 12.7 create_annotation( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
leaderlength (float 1 個か 2 個の リ ス ト 。 2 番目の float は負の値に し てはいけません。 type=Line のみ。 PDF
1.6) 補助線の長 さ を、 デ フ ォ ル ト 座標で (usercoordinates オプ シ ョ ン を false に し た と き)、 ま
たはユーザー座標で (true に し た と き) 指定 し ます。 こ の長 さ は 2 個の数値で指定 し ます (デ
フ ォ ル ト : {0 0}) :
1 番目の数値は、 線の両端から 、 線自身に垂直に引 く 線の長 さ です。 正の値は、 線を始点から終点
(line オプ シ ョ ン で指定 し ている) へた ど っ た と き に時計回 り である向き に補助線を引 く こ と を意
味 し 、 負の値はその反対の向き を表 し ます。
2 番目の値は、 省略する こ と も で き、 線から 、 補助線か ら ち ょ う ど 180°を成すよ う に引 く 補助線
の延長の長 さ を表 し ます。 1 番目の値を 0 にする と 、 正の値は無視 さ れます。
leaderoffset
(非負 float。 type=Line のみ。 PDF 1.7) 補助線のオ フ セ ッ ト の長 さ 、 すなわち、 注釈の端点 と 補助
線の始点 と の間の空隙の幅を、 デ フ ォル ト 座標で (usercoordinates オプ シ ョ ン を false に し た と
き)、 またはユーザー座標で (true に し た と き) 指定 し ます。 デ フ ォル ト : 0
line
(線。 type=Line のみ。 必須) 線の開始 ・ 終了座標を、 デ フ ォ ル ト 座標で (usercoordinates パ ラ
メ タ を false に し た と き)、 ま たはユーザー座標で (true に し た と き) 指定 し た 4 個の数値 x1 ・
y1 ・ x2 ・ y2 の リ ス ト 。
linewidth
(整数) 注釈種別 Line ・ PolyLine ・ Polygon ・ Square ・ Circle ・ Ink の注釈の枠ま たは線の幅を、
デ フ ォル ト 単位 (=ポ イ ン ト ) で指定 し ます。 linewidth=0 にする と 、 枠は見えな く な り ます。 デ
フ ォル ト : 1
locked
(論理値) true にする と 、 注釈のプ ロパテ ィ (位置 ・ 寸法等) を Acrobat で編集で き な く な り ま
す。 ただ し この場合で も、 その内容は変更で き ます。 デ フ ォ ル ト : false
lockedcontents
(論理値。 PDF 1.7) true にする と 、 注釈の内容を Acrobat で編集で き な く な り ます。 ただ し こ の場
合で も、 注釈を削除する こ と と 、 注釈のプ ロパテ ィ (位置 ・ 寸法等) を変更する こ と は可能です。
デ フ ォル ト : false
mimetype
(文字列。 type=FileAttachment のみ) フ ァ イルの MIME タ イ プ。 Acrobat は、 注釈がア ク テ ィ ブに
さ れた時に これを使っ て適切な ア プ リ ケーシ ョ ン を起動 し ます。
movieposter
(キーワー ド 。 type=Movie のみ) ページ上でムービーを代表するポス タ ー画像を指定するキーワー
ド 。 使え るキーワー ド : auto (ポス タ ー画像がムービー フ ァ イルから 抽出 さ れます) ・ none (ポス
タ ーが表示 さ れません)。 デ フ ォ ル ト : none
name
(ハイパーテキス ト 文字列) 注釈を一意に同定する名前。 こ の名前は、 い く つかのア ク シ ョ ン で必
要であ り 、 ページ上で一意でなければな り ません。 デ フ ォル ト : な し
opacity
(float またはパーセ ン ト 値。 PDF 1.4) 注釈を描 く 際に使わせたい、 固定 し た不透明度の値 (0 ~ 1
または 0% ~ 100%)。 デ フ ォ ル ト : 1
open
(論理値。 type=Text ・ Popup のみ) true にする と 、 注釈はは じ め開いた状態で表示 さ れます。 デ
フ ォ ル ト : false
orientate
(キーワー ド 。 type=FreeText ・ Stamp のみ) 注釈を その矩形の中で向けたい向き を指定 し ます。 使
え るキーワー ド : north (直立) ・ east (右倒 し ) ・ south (上下逆 さ ま) ・ west (左倒 し )。 デ フ ォ
ル ト : north
parentname
(文字列。 type=PopUp のみ) 注釈の親注釈の名前。
playmode
(キーワー ド 。 type=Movie のみ) ムービーま たはサウ ン ド を再生する モー ド 。 使え るキーワー ド :
once (1 回再生 し て停止 し ます) ・ open (再生 し てムービー コ ン ト ロー ラバーを開いた ま まに し ま
す) ・ repeat (最初から最後ま で繰 り 返 し 、 停止 さ れる ま で再生 し ます) ・ palindrome (順方向再
生 と 逆再生を連続 し て、 停止 さ れる ま で行います)。 デ フ ォ ル ト : once
12.4 注釈
197
表 12.7 create_annotation( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
polylinelist
(折れ線か四辺形の リ ス ト 。 type=Polygon ・ PolyLine ・ Ink ・ Highlight ・ Underline ・ Squiggly ・
Strikeout のみ) 座標は、 デ フ ォ ル ト 座標系で (usercoordinates オプ シ ョ ン を false に し た と
き)、 ま たはユーザー座標系で (true に し た と き) 解釈 さ れます。 デ フ ォル ト : 注釈矩形の頂点群
を結んだ折れ線。
type=Polygon ・ PolyLine ・ Ink
n 本の線分 (最小 : n=2) に よ る折れ線 1 個の リ ス ト 。
その他
リ ス ト に、 float 値を 8 個ずつ持 っ たサブ リ ス ト を n 個入れて、 n 個 (最小 : n=1) の四
辺形を指定 し ます。 四辺形はそれぞれ、 注釈の対象 と し たいテキス ト の単語、 ない し 連
続する複数の単語を囲みます。 四辺形はジグザグ順 (右上 ・ 左上 ・ 右下 ・ 左下) で与え
る必要があ り ます。
popup
(文字列) こ の注釈に関連づけた テキス ト の入力や編集のためのポ ッ プ ア ッ プ注釈の名前。 デ フ ォ
ルト : なし
readonly
(論理値) true にする と 、 注釈がユーザーの操作に反応する こ と を許 し ません。 注釈は、 表示 と 印
刷は許 さ れますが、 マウス ク リ ッ ク に反応 し た り 、 マウスの動き に反応 し て表示を変えた り する
こ と はで き ません。 デ フ ォ ル ト : false
replyto
(キーワー ド 。 PDF 1.6。 マー ク ア ッ プ註釈のみ) こ の注釈 と 、 inreplyto オプ シ ョ ン で指定 し た注
釈 と の間の関係 (返信種別) を指定 し ます。 使え るキーワー ド (デ フ ォル ト : reply) :
rotate
reply
注釈は、 inreplyto で指定 し た注釈に対する返信 と 見な さ れます。
group
注釈は、 inreplyto で指定 し た注釈 と グループ化 さ れる必要があ り ます。
(論理値。 テキス ト 注釈に対 し ては PDF/A モー ド では true に設定 し てはいけません) true にする
と 、 ページの回転に合わせて注釈を回転 さ せます。 そ う でなければ、 注釈の回転は固定 さ れたま
まにな り ます。 このオプ シ ョ ンは、 テキス ト 注釈のア イ コ ン では無視 さ れます。 デ フ ォ ル ト : テ
キス ト 注釈に対 し ては PDF/A モー ド では false、 それ以外では true
showcaption (論理値。 type=Line のみ。 PDF 1.6) true にする と 、 contents ま たは createrichtext オプ シ ョ ン
で指定 し た内容が、 線の体裁の中のキ ャ プ シ ョ ン と し て複製 さ れます。 デ フ ォル ト : false
showcontrols
(論理値。 type=Movie のみ) true にする と 、 ムービーまたはサウン ド の再生中に コ ン ト ロー ラ
バーが表示 さ れます。 デ フ ォ ル ト : false
soundvolume
(float。 type=Movie のみ) ムービーを再生する最初の音量を、 -1.0 ~ 1.0 の範囲で指定 し ます。
値を大き く するほど高い音量を示 し ます。 負の値にする と 消音 さ れます。 デ フ ォ ル ト : 1.0
subject
198
(ハイパーテキス ト 文字列。 PDF 1.5) 注釈が述べている主題の簡単な説明を表現 し たテキス ト 。 デ
フ ォル ト : な し
第 12 章 : イ ン タ ラ ク テ ィ ブ機能 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 12.7 create_annotation( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
template
(オプ シ ョ ン リ ス ト ) 注釈の各状態の体裁。 こ れはカ ス タ ムス タ ン プ等で有用で し ょ う 。 使え るサ
ブオプ シ ョ ン :
normal/rollover/down
(テ ン プ レー ト ハン ド ルまたはキーワー ド ) 注釈の通常 ・ マウス ロールオーバー ・ マウ
スボ タ ン押下時にそれぞれ用い られる テ ン プ レー ト 。 キーワー ド viewer は、 Acrobat に
対 し 、 ページ を表示する際に体裁を作成する よ う 指示 し ます。 normal のデ フ ォル ト :
viewer。 rollover ・ down のデ フ ォ ル ト : normal の値
fitmethod (キーワー ド ) テ ン プ レー ト を注釈矩形内にはめ込む方式。 fitmethod を entire 以外に
する と 、 注釈矩形はテ ン プ レー ト 枠に合わせて調節 さ れます (デ フ ォ ル ト : entire) :
position
nofit
テ ン プ レー ト を置 く だけです。 拡縮も 切 り 抜き も行われません。
meet
テ ン プ レー ト を position オプ シ ョ ンに従 っ て置き、 矩形内にま る ご と 収ま
る よ う 、 縦横比を保っ て拡縮 し ます。 一般に、 テ ン プ レー ト の少な く と も 2
つの辺が、 対応する矩形の辺 と 重な る こ と にな り ます。
entire
テ ン プ レー ト を position オプ シ ョ ンに従 っ て置き、 かつ、 矩形全体を覆 う
よ う に拡縮 し ます。 一般に、 こ の方式ではテ ン プ レー ト はつぶ さ れます。
(float かキーワー ド の リ ス ト ) テ ン プ レー ト 内の左下隅を {0 0}、 右上隅を {100 100}
と し た と きの、 参照点 (x, y) の位置を指定 し た 1 個か 2 個の値。 こ れらの値は、 テ ン
プ レ ー ト の幅 と 高 さ に対するパーセ ン ト 値 と し て表 し ます。 両方のパーセ ン ト 値が等 し
い と きは、 1 個の float 値だけを与えれば充分です。
キーワー ド left ・ center ・ right (x 方向で) または bottom ・ center ・ top (y 方向で)
を、 値 0 ・ 50 ・ 100 と 同等な もの と し て用いる こ と がで き ます。 キーワー ド を 1 個だけ
指定する と 、 も う 1 つの方向でそれに対応するキーワー ド が追加 さ れます。 デ フ ォ ル
ト : {left bottom}。
title
(ハイパーテキス ト 文字列。 ムービー注釈では推奨) 注釈のポ ッ プ ア ッ プウ ィ ン ド ウが開いていて
ア ク テ ィ ブ な時に タ イ ト ルバーに表示 さ せたいテキス ト ラ ベル。 こ の文字列は Acrobat の 「作成
者」 フ ィ ール ド に対応 し ます。 title の最大長は、 シ ングルバイ ト な ら 255 キ ャ ラ ク タ 、 Unicode
な ら 126 キ ャ ラ ク タ です。 ただ し title の実用上の上限 と し ては、 32 キ ャ ラ ク タ を推奨 し ます。
デ フ ォル ト : な し
usematchbox
(文字列の リ ス ト ) 引数 llx/lly/urx/ury を無視 し て、 かわ り に範囲枠を用います。 オプ シ ョ ン リ
ス ト の中の 1 番目の要素は、 範囲枠を指定する名前文字列です。 2 番目の要素は、 使いたい矩形の
番号を指定する整数か、 ま たはキーワー ド all で、 選んでいる範囲枠を参照するすべての矩形を
指定 し ます。 2 番目の要素を指定 し ない と きは、 デ フ ォル ト と し て all にな り ます。
範囲枠自体か、 または指定 し た矩形が、 カ レ ン ト ページに存在 し ない と きは、 関数は注釈を作成
せずに、 警告を出 さ ずに返 り ます。
usercoordinates
(論理値) false にする と 、 注釈の座標 と 文字サイ ズはデ フ ォ ル ト 座標系で表 さ れている と 見な さ
れます。 そ う でなければ、 カ レ ン ト ユーザー座標系が用い ら れます。 デ フ ォ ル ト : グローバルな
usercoordinates パラ メ タ の値
windowposition
(float 2 個かキーワー ド 2 個の リ ス ト 。 type=Movie のみ) フ ローテ ィ ングムービーウ ィ ン ド ウにつ
いて、 画面上における そのウ ィ ン ド ウの相対位置。 2 個の値で、 画面上における フ ローテ ィ ング
ウ ィ ン ド ウの位置を示 し ます。 {0 0} が画面の左下隅を、 {100 100} が右上隅を表 し ます。 キー
ワー ド left ・ center ・ right (画面横方向で)、 または bottom ・ center ・ top (画面縦方向で) を、
値 0 ・ 50 ・ 100 と 同 じ 意味で使 う こ と も で き ます。 デ フ ォル ト : {center center}
windowscale (float またはキーワー ド 。 type=Movie のみ) フ ローテ ィ ングウ ィ ン ド ウ内でムービーを再生する表
示倍率。 こ のオプ シ ョ ン を指定 し ない と 、 ムービーは注釈矩形内で再生 さ れます。 こ のオプ シ ョ
ンの値は、 ムービーの表示倍率か、 または以下のキーワー ド です (デ フ ォ ル ト : オプ シ ョ ン な し 、
すなわちムービーは注釈矩形内で再生 さ れます)。
fullscreen
ムービーは、 得ら れる画面領域を い っ ぱいに使っ て再生 さ れます。
12.4 注釈
199
表 12.7 create_annotation( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
zoom
(論理値。 テキス ト 注釈に対 し ては PDF/A モー ド では true に設定 し てはいけません) true にする
と 、 ページの表示倍率に合わせて注釈を拡縮 さ せます。 そ う で なければ、 注釈のサイ ズは固定 さ
れた ま まにな り ます。 このオプ シ ョ ンは、 テキス ト 注釈のア イ コ ン では無視 さ れます。 デ フ ォ ル
ト : テキス ト 注釈に対 し ては PDF/A モー ド では false、 それ以外では true
表 12.8 create_annotation( ) の 3Dactivate オプ シ ョ ンのサブオプ シ ョ ン一覧
オプ シ ョ ン
説明
enable
(キーワー ド ) 注釈をいつア ク テ ィ ブにするべきかを指定 し ます (デ フ ォル ト : click) :
open
enablestate
disable
ページ を開いた時にア ク テ ィ ブに し ます。
visible
ページが見えた時にア ク テ ィ ブに し ます。
click
注釈は、 ス ク リ プ ト かユーザーア ク シ ョ ン で明示的にア ク テ ィ ブにする必要があ り ま
す。
(キーワー ド ) 初期アニ メ ーシ ョ ン状態 (デ フ ォル ト : play) :
pause
3D モデルが実体化 さ れますが、 ス ク リ プ ト アニ メ ーシ ョ ンは無効にな り ます。
play
3D モデルが実体化 さ れます。 ス ク リ プ ト ア ニ メ ーシ ョ ンがあ る と きはそれが有効にな
り ます。
(キーワー ド ) 注釈をいつ非ア ク テ ィ ブにするべきかを指定 し ます (デ フ ォル ト : invisible) :
close
disablestate
ページ を閉 じ た時に非ア ク テ ィ ブに し ます。
invisible
ページが見えな く な っ た時に非ア ク テ ィ ブに し ます。
click
注釈は、 ス ク リ プ ト かユーザーア ク シ ョ ン で明示的に非ア ク テ ィ ブにする必要があ り ま
す。
(キーワー ド ) 注釈を非ア ク テ ィ ブに し た際の状態 (デ フ ォル ト : reset) :
pause
3D モデルはレ ン ダ リ ングで き ますが、 ア ニ メ ーシ ョ ンは無効にな り ます。
play
3D モデルはレ ン ダ リ ングで き、 ア ニ メ ーシ ョ ンは有効にな り ます。
reset
3D モデルを使 う 前の任意の初期状態。
modeltree
(論理値。 PDF 1.6) true にする と 、 注釈のア ク テ ィ ベーシ ョ ン時にモデルツ リ ーナ ビゲーシ ョ ン
タ ブが開かれます (デ フ ォ ル ト : false)
toolbar
(論理値。 PDF 1.6) true にする と 、 注釈のア ク テ ィ ベーシ ョ ン時に 3D ツールバー (注釈の上部
の) が表示 さ れます (デ フ ォ ル ト : true)
200
第 12 章 : イ ン タ ラ ク テ ィ ブ機能 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
12.5 フ ォ ーム フ ィ ール ド
ク ッ ク ブ ッ ク 完全な コ ー ド サン プルが ク ッ ク ブ ッ クの webserver/starter_webform ト ピ ッ ク にあ り ます。
VB RB Sub create_field(llx As Double, lly As Double, urx As Double, ury As Double,
name As String, type As String, optlist As String)
C# void create_field(double llx, double lly, double urx, double ury,
String name, String type, String optlist)
フ ォーム フ ィ ール ド を、カ レ ン ト ページ上に、さ ま ざ ま なオプシ ョ ンに従っ て作成 し ます。
llx ・ lly ・ urx ・ ury フ ィ ール ド の矩形の左下隅 と 右上隅の x ・ y 座標を、 デフ ォ ル ト 座標
で (usercoordinates パ ラ メ タ ま たはオプシ ョ ン を false に し た と き )、 ま たはユーザー座標
で (true に し た と き ) 指定 し ます。
フ ォ ー ム フ ィ ール ド の座標は、 rect( ) 関数の引数 と は違 う こ と に注意 し て く だ さ い。
create_field( ) では引数が 2 個の隅を直接 と る のに対 し 、 rect( ) では、 1 個の隅の座標に幅
と 高 さ の値を あわせて指定 し ます。
name (ハ イ パーテ キ ス ト 文字列) フ ォーム フ ィ ール ド の名前。 場合に よ っ ては、 create_
fieldgroup( ) で作成 し ておいた グループ (複数可) の名前を頭につけ ます。 グループ名ど
う し の間 と 、 グループ名 と フ ィ ール ド 名 と の間は、 ピ リ オ ド キ ャ ラ ク タ 「.」 で区切 る 必
要があ り ます。 フ ィ ール ド 名は、 ページ上で一意にする 必要があ り 、 ま た、 ピ リ オ ド キ ャ
ラ ク タ 「.」 で終わっ てはいけ ません。
type
フ ィ ール ド の種別を表 12.9 に従っ て指定 し ます。
表 12.9 フ ォ ーム フ ィ ール ド 種別一覧
種別
アイ
コン
こ の種別に関連する オプ シ ョ ン (一般オプ シ ョ ンに加え て)
pushbutton
buttonlayout ・ caption ・ captiondown ・ captionrollover ・ charspacing ・ fitmethod ・
icon ・ icondown ・ iconrollover ・ position ・ submitname
checkbox
currentvalue ・ itemname
radiobutton
buttonstyle ・ currentvalue ・ itemname ・ toggle ・ unisonselect
ラ ジオボ タ ンは、 必ずグループに属 さ せる必要があ るので、 名前の頭にグループ名をつけ
る必要があ り ます。 その他のすべてのフ ィ ール ド 種別では、 グループ所属は必須ではあ り
ません。
listbox
charspacing ・ currentvalue ・ itemnamelist ・ itemtextlist ・ multiselect ・ sorted ・
topindex
combobox
commitonselect ・ charspacing ・ currentvalue ・ editable ・ itemnamelist ・ itemtextlist ・
sorted ・ spellcheck
textfield
comb ・ charspacing ・ currentvalue ・ fileselect ・ maxchar ・ multiline ・ password ・
richtext ・ scrollable ・ spellcheck
テキス ト フ ィ ール ド はバー コ ー ド に も使われます : barcode
12.5 フ ォ ーム フ ィ ール ド
201
表 12.9 フ ォ ーム フ ィ ール ド 種別一覧
種別
アイ
コン
signature
こ の種別に関連するオプ シ ョ ン (一般オプ シ ョ ンに加えて)
charspacing ・ lockmode
optlist フ ィ ール ド のプ ロ パテ ィ 群を指定 し たオプシ ョ ン リ ス ト :
> 一般オプシ ョ ン : errorpolicy (表 2.6 参照)
> フ ィ ール ド のプ ロ パテ ィ 群を表 12.10 に従っ て指定 し たオプシ ョ ン リ ス ト 。 文字列オ
プシ ョ ンは、 表に示す と お り にハ イ パーテ キ ス ト 文字列か内容文字列 と し て解釈 さ れ
ます。 以下のオプシ ョ ンがすべての フ ィ ール ド 種別で使え ます ( こ れに加え て種別特
有のオプシ ョ ン群については表 12.9 を参照) :
action ・ alignment ・ backgroundcolor ・ barcode ・ bordercolor ・ borderstyle ・ calcorder ・
dasharray ・ defaultvalue ・ display ・ exportable ・ fieldtype ・ fillcolor ・ font ・ fontsize ・
highlight ・ layer ・ linewidth ・ locked ・ orientate ・ readonly ・ required ・ strokecolor ・
taborder ・ tooltip ・ usercoordinates
詳細 ページ上の フ ィ ール ド の タ ブ順序 ( タ ブキーが押 さ れた時に フ ォ ーカ ス を得 る 順序) は、
デフ ォ ル ト では create_field( ) を呼び出 し た順序で決ま り ますが、 taborder オプシ ョ ン を
使っ てそれ以外の順序を指定す る こ と も で き ます。 タ ブ順序は、 フ ィ ール ド を生成 し た後
に変え る こ と はで き ません。 ただ し こ の動作は、 begin/end_page_ext( ) の taborder オプ
シ ョ ンで上書 き す る こ と も で き ます。
Acrobat では、 テ キ ス ト フ ィ ール ド にフ ォーマ ッ ト (数値 ・ パーセ ン ト な ど) を割 り 当
て る こ と も 可能です。 し か し 、 こ れは PDF リ フ ァ レ ン ス には記載 さ れてお ら ず、 カ ス タ
ム JavaScript に よ っ て実装 さ れて い ま す。 こ れ と 同 じ 効果 を 得 る には、 フ ィ ール ド に、
Acrobat 内の定義済みの ( し か し 標準化 さ れていない) JavaScript 関数を参照する JavaScript
ア ク シ ョ ン を関連づければ よ いで し ょ う 。
PDF/A モー ド では、 こ の関数は呼び出 し てはいけ ません。
すべての PDF/X モー ド において、 フ ォーム フ ィ ール ド は、 完全に BleedBox (BleedBox
がない と き は TrimBox/ArtBox) の外に置 く 場合のみ許 さ れます。
タ グ付 き PDF の場合 : カ レ ン ト のア ク テ ィ ブな ア イ テ ムがあ る と き は、 フ ィ ール ド は
カ レ ン ト ア イ テ ムの子 と し て挿入 さ れます。
スコープ ページ
VB RB Sub create_fieldgroup(name As String, optlist As String)
C# void create_fieldgroup(String name, String optlist)
フ ォーム フ ィ ール ド グループを、 さ ま ざ ま なオプシ ョ ンに従っ て作成 し ます。
name (ハ イ パーテ キ ス ト 文字列) フ ォ ーム フ ィ ール ド グループの名前。 さ ら に別の グ
ループの名前を頭につけ る こ と も で き ます。フ ィ ール ド グループは任意の深 さ の入れ子に
す る こ と が可能です。 グループ名ど う し は ピ リ オ ド キ ャ ラ ク タ 「.」 で区切 る 必要があ り
ます。 グループ名は、 文書内で一意にす る 必要があ り 、 ま た、 ピ リ オ ド キ ャ ラ ク タ 「.」 で
終わっ てはいけ ません。
optlist
202
create_field( ) の フ ィ ール ド オプシ ョ ン群を持っ たオプシ ョ ン リ ス ト 。
第 12 章 : イ ン タ ラ ク テ ィ ブ機能 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
詳細
フ ィ ール ド グループは、 1 つの フ ィ ール ド の内容を他の フ ィ ール ド (複数可) へ ミ ラ ーす
る のに有用です。create_field( ) で フ ィ ール ド 名を作成す る 際に頭に フ ィ ール ド グループの
名前を付け る と 、 その新 し い フ ィ ール ド はそのグループの一部にな り ます。 グループに対
す る optlist で与えた フ ィ ール ド プ ロ パテ ィ オプシ ョ ンはすべて、 そのグループに属す る
全フ ィ ール ド に継承 さ れます。
スコープ ページ ・ 文書
表 12.10 create_field( ) ・ create_fieldgroup( ) によ る フ ィ ール ド プ ロパテ ィ オプ シ ョ ン一覧
オプ シ ョ ン
説明
action
(ア ク シ ョ ン リ ス ト ) 以下のイ ベン ト のいずれか (複数可) に対する フ ィ ール ド ア ク シ ョ ンの リ ス
ト 。 activate イ ベン ト はすべての フ ィ ール ド 種別で使え ますが、 それ以外のイ ベン ト は
type=pushbutton ・ checkbox ・ radiobutton では使え ません。 デ フ ォ ル ト : 空 リ ス ト
activate
フ ィ ール ド がア ク テ ィ ブに さ れた時に実行 さ せたいア ク シ ョ ン。
blur
フ ィ ール ド が入力フ ォ ー カ ス を失っ た時に実行 さ せたいア ク シ ョ ン。
calculate 他のフ ィ ール ド の値が変わっ た時に こ のフ ィ ール ド の値を再計算する ために実行 さ せた
い JavaScript ア ク シ ョ ン。
close
(PDF 1.5) フ ィ ール ド を含むページが閉 じ られた時に実行 さ せたいア ク シ ョ ン。
down
マウスボ タ ンが フ ィ ール ド の領域内で押 さ れた時に実行 さ せたいア ク シ ョ ン。
enter
マウスが フ ィ ール ド の範囲内に入っ た時に実行 さ せたいア ク シ ョ ン。
exit
マウスが フ ィ ール ド の範囲外に出た時に実行 さ せたいア ク シ ョ ン。
focus
フ ィ ール ド が入力フ ォ ー カ ス を得た時に実行 さ せたいア ク シ ョ ン。
format
フ ィ ール ド がその時点の値を表示する ために フ ォ ーマ ッ ト さ れる前に実行 さ せたい
JavaScript ア ク シ ョ ン。 これを使 う と 、 フ ィ ール ド の値を フ ォ ーマ ッ ト さ れる前に変更
する こ と がで き ます。
invisible
(PDF 1.5) フ ィ ール ド を含むページがも う 見えな く な っ た時に実行 さ せたいア ク シ ョ
ン。
keystroke ユーザーがテキス ト フ ィ ール ド か コ ンボボ ッ ク スにキー入力 し た時か、 ま たはス ク ロー
ル可能な リ ス ト ボ ッ ク スの選択を変更 し た時に実行 さ せたい JavaScript ア ク シ ョ ン。
alignment
open
(PDF 1.5) フ ィ ール ド を含むページが開かれた時に実行 さ せたいア ク シ ョ ン。
up
マウスボ タ ンが フ ィ ール ド の領域内で放 さ れた時に実行 さ せたいア ク シ ョ ン ( フ ィ ール
ド を ア ク テ ィ ブにする には こ れが通常使われます)。
validate
フ ィ ール ド の値が変更 さ れた時に実行 さ せたい JavaScript ア ク シ ョ ン。 こ れを使 う と 、
新 し い値の有効性を検証する こ と がで き ます。
visible
(PDF 1.5) フ ィ ール ド を含むページが見えた時に実行 さ せたいア ク シ ョ ン。
(キーワー ド ) フ ィ ール ド 内のテキス ト の整列 : left ・ center ・ right。 デ フ ォ ル ト : left
background- (色) フ ィ ール ド の背景か枠の色。 使え る色空間 : none ・ gray ・ rgb ・ cmyk。 デ フ ォル ト : none
color
bordercolor
barcode
(オプ シ ョ ン リ ス ト 。 type=textfield のみ。 readonly を暗示。 PDF 1.7ext3) 表 12.11 のオプ シ ョ ン
群に従っ てバー コ ー ド フ ィ ール ド を生成 し ます。 こ の フ ィ ール ド は、 他の フ ィ ール ド 群の内容に
基づいてバー コ ー ド 内容を決定するか固定値を与え る calculate イ ベン ト ス ク リ プ ト を持つ
action オプ シ ョ ン を持っ ている必要があ り ます :
action={calculate=...}.
こ のバー コ ー ド は、 Acrobat 9 以上で表示 さ れますが、 Adobe Reader ではどのバージ ョ ン で も 表示
さ れません。 Acrobat 9 と X は、 1 つのページの最初の フ ィ ール ド がバー コ ー ド フ ィ ール ド だ と ク
ラ ッ シ ュ し ます。 この問題を回避するには、 バー コ ー ド フ ィ ール ド を追加する前に別の フ ィ ール
ド を作る必要があ り ます。 こ の最初のフ ィ ール ド は、 こ のク ラ ッ シ ュ を避けるには、 幅 ・ 高 さ ゼ
ロのダ ミ ーのテキス ト フ ィ ール ド であれば充分です。
12.5 フ ォ ーム フ ィ ール ド
203
表 12.10 create_field( ) ・ create_fieldgroup( ) によ る フ ィ ール ド プ ロパテ ィ オプ シ ョ ン一覧
オプ シ ョ ン
説明
borderstyle
(キーワー ド ) フ ィ ール ド の枠のス タ イル。 solid ・ beveled ・ dashed ・ inset ・ underline のいずれ
か。 デ フ ォル ト : solid
buttonlayout
(キーワー ド 。 type=pushbutton のみ) ボ タ ンのラ ベルの、 ボ タ ンのア イ コ ンに対する位置を、 両
方 と も 指定 し ている と き に限 り 指定 し ます : below ・ above ・ right ・ left ・ overlaid。 デ フ ォル
ト : right
buttonstyle
(キーワー ド 。 type=radiobutton ・ checkbox のみ) フ ィ ール ド で使いたい記号を指定 し ます :
check ・ cross ・ diamond ・ circle ・ star ・ square。 デ フ ォ ル ト : check
calcorder
(整数。 フ ィ ール ド が calculate イ ベン ト に対する JavaScript ア ク シ ョ ン を持つ と きのみ) フ ィ ール
ド の、 他のフ ィ ール ド 群に対する計算順序を指定 し ます。 小 さ い数を持つ フ ィ ール ド は、 大き い
数を持つ フ ィ ール ド よ り 先に計算 さ れます。 デ フ ォル ト : 10 +カ レ ン ト ページ で使われている最
大の calcorder (は じ めは 10)
caption
(内容文字列。 type=pushbutton のみ。 押 し ボ タ ン では、 caption と icon オプ シ ョ ンのど ち らか一
方を与え る必要があ り ます) ボ タ ンが入力フ ォ ー カ ス を持たない時に表示 さ せたい ラ ベルテキス
ト 。 font オプ シ ョ ン で指定 し た フ ォ ン ト で表示 さ れます。 テキス ト も ア イ コ ン も表示 さ せた く な
い と きは、 空文字列 (すなわち caption { }) を使います。 デ フ ォ ル ト : な し
captiondown
(内容文字列。 type=pushbutton のみ) ボ タ ンがア ク テ ィ ブに さ れた時に表示 さ せたい ラ ベルテキ
ス ト 。 font オプ シ ョ ン で指定 し た フ ォ ン ト で表示 さ れます。 デ フ ォル ト : な し
captionrollover
(内容文字列、 type=pushbutton のみ) ボ タ ンが入力フ ォ ー カ ス を持つ時に表示 さ せたい ラ ベルテ
キス ト 。 font オプ シ ョ ン で指定 し た フ ォ ン ト で表示 さ れます。 デ フ ォル ト : な し
charspacing
(float。 type=radiobutton ・ checkbox 以外のみ) フ ィ ール ド 内のテキス ト の字間を、 カ レ ン ト ユー
ザー座標系の単位で指定 し ます。 こ のオプ シ ョ ンは、 Acrobat 7 では無視 さ れます。 デ フ ォ ル ト : 0
comb
(論理値。 type=textfield のみ。 PDF 1.5) true にする と 、 multiline ・ fileselect ・ password オ
プ シ ョ ン を false に し ている と きは、 maxchar オプ シ ョ ン に整数値を与え ていれば、 フ ィ ール ド
は、 キ ャ ラ ク タ ご と に等間隔に、 多数のサブ フ ィ ール ド に分割 さ れます (maxchar オプ シ ョ ンに
従っ て)。 デ フ ォ ル ト : false
commitonselect
(論理値。 type=listbox ・ combobox のみ。 PDF 1.5) true にする と 、 リ ス ト の中で選択 さ れた項目
は、 選択後ただ ちに確定 さ れます。 false にする と 、 項目はフ ィ ール ド から 出た時に確定 さ れま
す。 デ フ ォル ト : false
currentvalue
(type=pushbutton ・ signature では不可) フ ィ ール ド の初期値。 型 と デ フ ォ ル ト は、 フ ィ ール ド の
種別に よ っ て異な り ます :
checkbox ・ radiobutton
(文字列) Off 以外の任意の文字列にする と 、 ボ タ ンはア ク テ ィ ブにな り ます。 文字列
Off にする と 、 ボ タ ンは非ア ク テ ィ ブにな り ます。 こ のオプ シ ョ ンは、 最初のボ タ ンに
対 し ては設定する必要があ り ます。 デ フ ォ ル ト : Off
textfield ・ combobox
(内容文字列) フ ィ ール ド の内容。 font オプ シ ョ ン で指定 し た フ ォ ン ト で表示 さ れま
す。 デ フ ォル ト : 空
listbox
dasharray
(整数の リ ス ト ) itemtextlist の中で選択 さ せてお き たい項目群の番号。 デ フ ォ ル ト :
なし
(float の リ ス ト 。 borderstyle=dashed のみ) 破線枠の短線 と 間隙の長 さ を、 デ フ ォ ル ト 単位で指定
し ます (setdash( ) 参照)。 デ フ ォ ル ト : 3 3
defaultvalue reset ア ク シ ョ ンの後の フ ィ ール ド の値。 型 と デ フ ォ ル ト は、 currentvalue オプ シ ョ ン と 同 じ で
す。 例外 : リ ス ト ボ ッ ク スでは、 1 個の整数値 し か指定で き ません。
204
第 12 章 : イ ン タ ラ ク テ ィ ブ機能 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 12.10 create_field( ) ・ create_fieldgroup( ) によ る フ ィ ール ド プ ロパテ ィ オプ シ ョ ン一覧
オプ シ ョ ン
説明
display
(キーワー ド ) 画面 と 紙の上での表示 ・ 非表示 : visible ・ hidden ・ noview ・ noprint。 デ フ ォ ル
ト : visible
editable
(論理値。 type=combobox のみ) true にする と 、 枠の中で選択中のテキス ト を編集で き ます。 デ
フ ォ ル ト : false
exportable
(論理値) フ ィ ール ド は、 SubmitForm ア ク シ ョ ンが起き た時に書き出 さ れます。 デ フ ォ ル ト : true
fieldtype
(キーワー ド 。 create_fieldgroup( ) のみ) グループに入れたい フ ィ ール ド の種別 : mixed ・
pushbutton ・ checkbox ・ radiobutton ・ listbox ・ combobox ・ textfield ・ signature。
fieldtype=mixed に し ない と 、 グループには、 指定種別のフ ィ ール ド し か入れら れな く な り ます。
特定の fieldtype をグループに対 し て指定 し てお く と 、 た と えその中のフ ィ ール ド が別々のページ
に置いてあ っ た と し て も、 すべての フ ィ ール ド にそのカ レ ン ト 値が同時に表示 さ れます。
fieldtype=radiobutton に し た と きは、 unisonselect オプ シ ョ ン を指定する必要があ り ます。
itemtextlist ・ itemnamelist ・ currentvalue ・ defaultvalue オプ シ ョ ンは、 create_fieldgroup( ) の
オプ シ ョ ン で指定する必要があ り 、 create_field( ) のオプ シ ョ ン で指定 し てはいけません。 デ フ ォル
ト : mixed
fileselect
(論理値。 type=textfield のみ) true にする と 、 フ ィ ール ド の中のテキス ト は、 フ ァ イル名 と し
て扱われます。 デ フ ォ ル ト : false
fillcolor
(色) テキス ト の塗 り 色。 使え る色空間 : gray ・ rgb ・ cmyk。 デ フ ォル ト : {gray 0} (=黒)
fitmethod
(キーワー ド 。 type=pushbutton のみ) icon ・ icondown ・ iconrollover オプ シ ョ ン で与えている テ
ン プ レー ト を、 ボ タ ンの中に配置 さ せたい方式。 と り う るキーワー ド (デ フ ォル ト : meet) :
auto
テ ン プ レー ト がボ タ ン に収ま り き る と きは meet と 同 じ 、 そ う で なければ clip
nofit
clip と 同 じ
clip
テ ン プ レー ト を拡縮せずに、 フ ィ ール ド の端で切 り 落 と し ます
meet
テ ン プ レー ト を、 縦横比を保ちつつ、 ボ タ ンに収ま る よ う 拡縮 し ます
slice
meet と 同 じ
entire
テ ン プ レー ト を、 ボ タ ン全体を覆 う よ う に拡縮 し ます
font
( フ ォ ン ト ハン ド ル。 つねに ZapfDingbats を使 う type=radiobutton ・ checkbox 以外では必須。
type=pushbutton の場合は、 caption ・ captionrollover ・ captiondown の う ちの 1 個ない し 複数の
オプ シ ョ ン を指定 し た と きのみ必須)。
フ ィ ール ド で使いたい フ ォ ン ト を指定 し ます。 右記の種類の フ ォ ン ト はテキス ト フ ォ ーム フ ィ ー
ル ド では許 さ れません : TrueType または OpenType サブ セ ッ ト (すなわち subsetting=true)、 CID
フ ォ ン ト (すなわち TrueType に対 し て autocidfont=true または encoding=unicode)。 Acrobat は
キ ャ ラ ク タ を、 それがそのフ ォ ン ト のエ ン コ ーデ ィ ングに含まれていな く て も表示する こ と がで
き ます。 た と えば、 encoding=winansi を使 っ てお き なが ら winansi 外の Unicode キ ャ ラ ク タ を与
え る こ と が可能です。
fontsize
(文字サイ ズ) 文字サイ ズを、 ユーザー座標で指定 し ます。 値 0 またはキーワー ド auto を与え る
と 、 Acrobat が文字サイ ズを矩形に合わせて調整 し ます。 デ フ ォ ル ト : auto
highlight
(キーワー ド ) ユーザーが フ ィ ール ド を ク リ ッ ク し た時の、 そのハイ ラ イ ト モー ド : none ・
invert ・ outline ・ push。 デ フ ォル ト : invert
icon
(テ ン プ レー ト ハン ド ル1。 type=pushbutton のみ。 押 し ボ タ ン では、 caption と icon オプ シ ョ ンの
ど ち らか一方を与え る必要があ り ます) ボ タ ンが入力 フ ォ ー カ ス を持たない時に表示 さ れたいテ
ン プ レー ト のハン ド ル。 デ フ ォル ト : な し
icondown
(テ ン プ レー ト ハン ド ル 1。 type=pushbutton のみ) ボ タ ンがア ク テ ィ ブに さ れた時に表示 さ せたい
テ ン プ レー ト のハン ド ル。 デ フ ォル ト : な し
12.5 フ ォ ーム フ ィ ール ド
205
表 12.10 create_field( ) ・ create_fieldgroup( ) によ る フ ィ ール ド プ ロパテ ィ オプ シ ョ ン一覧
オプ シ ョ ン
説明
iconrollover
(テ ン プ レー ト ハン ド ル 1。 type=pushbutton のみ) ボ タ ンが入力 フ ォ ー カ ス を持つ時に表示 さ せた
いテ ン プ レー ト のハン ド ル。 デ フ ォ ル ト : な し
itemname
(ハイパーテキス ト 文字列。 type=radiobutton ・ checkbox のみ。 書き出 し 値が Latin 1 文字列でな
い と き には用いる必要があ り ます) フ ィ ール ド の書き出 し 値。 グループ内の複数のラ ジオボ タ ン
の項目名は同一にする こ と がで き ます。 デ フ ォ ル ト : フ ィ ール ド 名
itemnamelist
(ハイパーテキス ト 文字列。 type=listbox ・ combobox のみ) リ ス ト 項目群の書き出 し 値。 複数の項
目が同 じ 書き出 し 値を持つ こ と がで き ます。 デ フ ォル ト : な し
itemtextlist
(内容文字列の リ ス ト 。 type=listbox ・ combobox のみ。 その場合は必須) リ ス ト のすべての項目の
テキス ト 内容。 itemnamelist と itemtextlist を両方指定する と きは、 両方の文字列の数を同 じ に
する必要があ り ます。
layer
(レ イ ヤーハン ド ル。 PDF 1.5) フ ィ ール ド を属 さ せたいレ イ ヤー。 フ ィ ール ド が可視にな るのは、
そのレ イ ヤーが可視の と き だけにな り ます。
linewidth
(整数) フ ィ ール ド の枠の線幅を、 デ フ ォル ト 単位 (=ポ イ ン ト ) で指定 し ます。 デ フ ォル ト : 1
locked
(論理値) true にする と 、 フ ィ ール ド のプ ロパテ ィ を Acrobat で編集で き な く な り ます。 デ フ ォ ル
ト : false
lockmode
(キーワー ド 。 type=signature のみ。 PDF 1.5) フ ィ ール ド が署名 さ れた時にロ ッ ク さ せたい
フ ィ ール ド 群を示 し ます :
all
文書のすべての フ ィ ール ド がロ ッ ク さ れます。
maxchar
(整数ま たはキーワー ド 。 type=textfield のみ) フ ィ ール ド の中のテキス ト のキ ャ ラ ク タ 数の上限
か、 または制限な し に し たい と きはキーワー ド unlimited。 デ フ ォル ト : unlimited
multiline
(論理値。 type=textfield のみ) true にする と 、 テキス ト は必要に応 じ て折 り 返 さ れて複数行に
な り ます。 デ フ ォル ト : false
multiselect
(論理値。 type=listbox のみ) true にする と 、 リ ス ト で複数の項目が選択で き る よ う にな り ます。
デ フ ォ ル ト : false
orientate
(キーワー ド ) フ ィ ール ド の中での内容の向き : north ・ west ・ south ・ east。 デ フ ォル ト : north
password
(論理値。 type=textfield のみ) true にする と 、 テキス ト が入力時に ビ ュ レ ッ ト かア ス タ リ ス ク
で表 さ れます。 デ フ ォ ル ト : false
position
(float かキーワー ド の リ ス ト 。 type=pushbutton のみ) icon…オプ シ ョ ン群で与え ている テ ン プ
レー ト の、 フ ィ ール ド 矩形内における相対位置を指定する 1 個か 2 個の値。 {0 0} はフ ィ ール ド の
左下隅で、 {100 100} は右上隅です。 値は、 フ ィ ール ド 矩形の幅 と 高 さ に対するパーセ ン ト 値で指
定 し ます。 両方のパーセ ン ト 値が等 し い と きは、 1 個の float 値を指定する だけで充分です。
キーワー ド left ・ center ・ right (x 方向で)、 ま たは bottom ・ center ・ top (y 方向で) を、 値
0 ・ 50 ・ 100 と 同 じ 意味で使 う こ と も で き ます。 1 個のキーワー ド だけ を指定 し た と きは、 他方の
方向についてはそれに対応するキーワー ド が追加 さ れます。 デ フ ォ ル ト : {center}。 例 :
{0 50} または {left center}
テ ン プ レー ト を左揃え
{50 50} または {center}
テ ン プ レー ト を中央揃え
{100 50} ま たは {right center}テ ン プ レー ト を右揃え
readonly2
(論理値) true にする と 、 フ ィ ール ド に何 も入力で き な く な り ます。 デ フ ォ ル ト ; false
required
(論理値) true にする と 、 フ ィ ール ド は、 フ ォ ームが送信 さ れる時に値を持つ必要があ り ます。 デ
フ ォル ト : false
206
第 12 章 : イ ン タ ラ ク テ ィ ブ機能 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 12.10 create_field( ) ・ create_fieldgroup( ) によ る フ ィ ール ド プ ロパテ ィ オプ シ ョ ン一覧
オプ シ ョ ン
説明
richtext
(論理値。 type=textfield のみ。 PDF 1.5) リ ッ チ テキス ト 組版を可能に し ます。 true にする と き
は、 fontsize は 0 に し てはな ら ず、 fillcolor は色空間 cmyk を用いてはいけません。 デ フ ォル
ト : false
scrollable
(論理値。 type=textfield のみ) true にする と 、 テキス ト がフ ィ ール ド に収ま り き ら ない と きは、
テキス ト はフ ィ ール ド の外の見えない領域へ移行 し ます。 false にする と 、 テキス ト がフ ィ ール ド
を満た し た と きは、 も う 入力を受け付けな く な り ます。 デ フ ォ ル ト : true
sorted
(論理値。 type=listbox ・ combobox のみ) true にする と 、 リ ス ト の内容が ソ ー ト さ れます。 デ
フ ォ ル ト : false
spellcheck
(論理値。 type=textfield ・ combobox のみ) true にする と 、 フ ィ ール ド の中でスペルチ ェ ッ ク 機
能がア ク テ ィ ブにな り ます。 デ フ ォ ル ト : true
strokecolor
(色) テキス ト の描線色。 使え る色空間 : gray ・ rgb ・ cmyk。 デ フ ォル ト : {gray 0} (=黒)。
submitname (ハイパーテキス ト 文字列。 type=pushbutton の場合にのみ推奨) フ ォ ームを送信 さ せたい イ ン
タ ーネ ッ ト ア ド レ スの URL エ ン コ ー ド 済み文字列。 デ フ ォ ル ト : な し
taborder
(整数) フ ィ ール ド の、 他のフ ィ ール ド 群に対する タ ブ順序を指定 し ます。 小 さ い数を持つ フ ィ ー
ル ド は、 大き い数を持つ フ ィ ール ド よ り 先に フ ォ ー カ ス さ れます。 デ フ ォ ル ト : 10 +カ レ ン ト
ページ で使われている最大の taborder (ページの最初のフ ィ ール ド では 10)。 こ のデ フ ォ ル ト で
は結果 と し て、 作成順序がそのま ま タ ブ順序にな り ます。
toggle
(論理値。 create_fieldgroup( ) で type=radiobutton のみ) true にする と 、 グループのラ ジオボ タ ン
を ク リ ッ ク し て ア ク テ ィ ブにする こ と も、 非ア ク テ ィ ブにする こ と も で き ます。 false にする と 、
ク リ ッ ク し てア ク テ ィ ブにする こ と し かで きず、 非ア ク テ ィ ブにするにはほかのボ タ ン を ク リ ッ
ク する必要があ り ます。 デ フ ォル ト : false
tooltip2
(ハイパーテキス ト 文字列) フ ィ ール ド のツール ヒ ン ト に表示 さ せたいテキス ト 。 ラ ジオボ タ ン と
グループ では、 Acrobat はつねにグループの最初のボ タ ンのツール ヒ ン ト を使っ て、 他は無視 さ れ
ます。 デ フ ォル ト : な し
topindex
(整数。 type=listbox のみ) 先頭に表示 さ せたい項目の番号。 最初の項目の番号は 0 です。 デ フ ォ
ルト : 0
unisonselect
(論理値。 create_fieldgroup( ) で type=radiobutton かつ PDF 1.5 のみ) true にする と 、 同 じ フ ィ ー
ル ド 名か項目名を持つ ラ ジオボ タ ン群が、 同時に選択 さ れます。 デ フ ォル ト : false
usercoordinates
(論理値) false にする と 、 フ ィ ール ド の座標はデ フ ォ ル ト 座標系で表 さ れている と 見な さ れます。
そ う でなければ、 カ レ ン ト ユーザー座標系が使われます。 デ フ ォル ト : グ ローバルな
usercoordinates パラ メ タ の値
1. ア イ コ ンのテ ン プ レ ー ト は、 begin_template( ) 関数で作成す る こ と がで き ま す。 ア イ コ ンが画像だけで で き てい る と きは、
load_image( ) に template オプ シ ョ ン を与え て テ ン プ レー ト を作成する こ と も で き ます。
2. type=radiobutton に し ている と きは、 こ のオプ シ ョ ンは create_field( ) では使えず、 create_fieldgroup( ) でのみ使え ます。
12.5 フ ォ ーム フ ィ ール ド
207
表 12.11 create_field( ) ・ create_fieldgroup( ) の barcode オプ シ ョ ンのサブオプ シ ョ ン一覧
オプ シ ョ ン
説明
caption
(ハイパーテキス ト 文字列) バー コ ー ド の下に表示 さ れるキ ャ プ シ ョ ン。 デ フ ォル ト では、 Acrobat
はその文書の file: URL をキ ャ プ シ ョ ン と し て生成 し ます。
dataprep
(整数) デー タ の生成方式。 使え る値 (デ フ ォ ル ト : 0) :
0
バー コ ー ド 内のデー タ を エ ン コ ー ド する前に何の圧縮 も適用 し ません。
1
デー タ を エ ン コ ー ド する前にデー タ を Flate 圧縮アルゴ リ ズムで圧縮 し ます。
ecc
(整数。 symbology=PDF417 ・ QRCode の場合は必須) 誤 り 訂正係数。 値が大き いほど、 冗長性を通 じ
た、 よ り 良い誤 り 訂正が生成 さ れますが、 よ り 大き なバー コ ー ド が必要 と な り ます。
symbology=PDF417 の場合、 こ の値は範囲 0 ~ 8 内で なければな り ません。 symbology=QRCode の場
合、 こ の値は範囲 0 ~ 3 内で なければな り ません。
resolution
(正の整数) バー コ ー ド が表示 さ れる解像度を dpi 単位で (デ フ ォル ト : 300)
symbology
(キーワー ド 。 必須) 使いたいバー コ ー ド 技術 :
PDF417
ISO 15438 に従 っ た PDF417 バー コ ー ド
QRCode
ISO 18004 に従 っ た QR コ ー ド 2005 バー コ ー ド
DataMatrixISO 16022 に従 っ たデー タ マ ト リ ッ ク スバー コ ー ド
xsymheight
(整数。 symbology=PDF417 の場合のみ。 かつその場合は必須) 2 個のバー コ ー ド モ ジ ュ ール間の垂
直距離を ピ ク セル単位で。 比 xsymheight/xsymwidth が整数値であ る必要があ り ます。 こ の比に許
さ れる範囲は 1 ~ 4 です。
xsymwidth
(整数。 必須) 2 個のバー コ ー ド モ ジ ュ ール間の水平距離を ピ ク セル単位で
208
第 12 章 : イ ン タ ラ ク テ ィ ブ機能 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
12.6 し お り
VB RB Function create_bookmark(text As String, optlist As String) As Long
C# int create_bookmark(String text, String optlist)
し お り を、 さ ま ざ ま なオプシ ョ ンに従っ て作成 し ます。
text
(ハ イ パーテ キ ス ト 文字列) し お り のテ キ ス ト を入れます。
optlist し お り のプ ロ パテ ィ 群を指定 し たオプシ ョ ン リ ス ト 。 以下のオプシ ョ ンが使え ま
す:
> 一般オプシ ョ ン : errorpolicy (表 2.6 参照)
> 表 12.12 に従っ た し お り 制御オプシ ョ ン群 :
action ・ destination ・ destname ・ fontstyle ・ index ・ open ・ parent ・ textcolor
戻り値 生成 し た し お り のハン ド ル。 以後の呼び出 し の parent オプシ ョ ンで使え ます。
詳細
こ の関数は、 与え る text を持つ PDF し お り を追加 し ます。 destination オプシ ョ ン を指定
し ない と 、 し お り はカ レ ン ト ページ (文書ス コ ープの中で使 う と 最終ページ、 先頭ページ
よ り 前に使 う と 先頭ページ) を指 し ます。
し お り を作成す る と 、 begin/end_document( ) の openmode オプシ ョ ンが、 た と え他の
モー ド を明示的に設定 し て あ っ て も 、 bookmarks に設定 さ れます。
スコープ 文書 ・ ページ
表 12.12 create_bookmark( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
action
(ア ク シ ョ ン リ ス ト ) 以下のイ ベン ト に対する し お り ア ク シ ョ ンの リ ス ト 。 デ フ ォル ト :
destination オプ シ ョ ン で指定 し ている移動先への GoTo ア ク シ ョ ン。
activate
し お り がア ク テ ィ ブに さ れた時に実行 さ せたいア ク シ ョ ン。 あ ら ゆる種別のア ク シ ョ ン
が使え ます。
destination
(オプ シ ョ ン リ ス ト 。 activate ア ク シ ョ ン を指定 し ている と きは無視 さ れます) し お り の移動先を
表 12.5 に従っ て指定 し たオプ シ ョ ン リ ス ト 。 デ フ ォル ト : destination ・ destname ・ action を指定 し
ていない と きは {type fitwindow page 0}。
destname
(ハイパーテキス ト 文字列。 空で も可。 destination オプ シ ョ ン を指定 し ている と きは無視 さ れま
す) add_nameddest( ) で定義 し てあ る移動先の名前。 destination ・ destname ア ク シ ョ ンは このオ
プ シ ョ ン よ り も 優先 さ れます。 destname を空文字列 (すなわち {}) にする と 、 destination と
action のど ち ら も指定 し ていない と きは、 し お り は全 く ア ク シ ョ ン を持たないので、 し お り を区
切 り と し て使いたい と き に有用で し ょ う 。
fontstyle
(キーワー ド ) し お り テキス ト の フ ォ ン ト ス タ イルを指定 し ます : normal ・ bold ・ italic ・
bolditalic。 デ フ ォル ト : normal
index
(整数) し お り を親の中に挿入 し たい位置の番号。 0 か ら、 同 じ 階層の し お り の数ま での値を使っ
て、 し お り を親の中のその位置に挿入 し ます。 値 -1 を使 う と 、 し お り を カ レ ン ト 階層の末尾に挿
入する こ と がで き ます。 デ フ ォル ト : -1。 ただ し 、 挿入 ・ 再開 し たページについては、 すべての
ページ を物理的な順序どお り に生成 し たかのよ う に し お り が配置 さ れます ( し お り がページ順序
を反映 し ます)。
open
(論理値) false にする と 、 子 し お り は表示 さ れません。 true にする と 、 すべての子が展開表示 さ
れます。 デ フ ォ ル ト : false
12.6 し お り
209
表 12.12 create_bookmark( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
parent
( し お り ハン ド ル) 新規 し お り が、 ハン ド ルで指定する し お り の子であ る こ と を指定 し ます。
parent=0 にする と 、 新たな最上位階層の し お り が生成 さ れます。 デ フ ォル ト : 0
textcolor
(色) し お り テキス ト の色を指定 し ます。 使え る色空間 : none ・ gray ・ rgb。
デ フ ォ ル ト : rgb {0 0 0 } (=黒)
210
第 12 章 : イ ン タ ラ ク テ ィ ブ機能 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
12.7 PDF パ ッ ケージ ・ PDF ポー ト フ ォ リ オ
VB RB Function add_portfolio_folder(parent As Long, foldername As String, optlist As String) As Long
C# int add_portfolio_folder(int parent, String foldername, String optlist)
新規ま たは既存のポー ト フ ォ リ オに フ ォ ルダ を追加 し ます (要 PDF 1.7ext3)。
parent 親フ ォ ルダ を、こ れ以前に add_portfolio_folder( ) を呼び出 し て返 さ れた フ ォ ン ト
ハン ド ルで指定す る か、 ま たはルー ト フ ォ ルダの場合は -1。
foldername (ハ イ パーテ キ ス ト 文字列で 1 ~ 255 キ ャ ラ ク タ 。 キ ャ ラ ク タ / \ : * " < > |
は使っ てはいけ ま せん。 最後のキ ャ ラ ク タ は ピ リ オ ド 「.」 に し てはいけ ま せん) フ ォ ル
ダの名前。 同 じ 親を持つ 2 個の フ ォ ルダが、 大文字 ・ 小文字を無視 し た と き に同 じ 名前を
持っ てはいけ ません。 ルー ト フ ォ ルダの名前は Acrobat では無視 さ れます。
optlist ポー ト フ ォ リ オのプ ロ パテ ィ 群を指定 し たオプシ ョ ン リ ス ト 。 以下のオプシ ョ ン
が使え ます :
> 一般オプシ ョ ン : errorpolicy (表 2.6 参照)
> 表 12.13 に従っ たポー ト フ ォ リ オオプシ ョ ン群 : description ・ fieldlist ・ thumbnail
戻り値 add_portfolio_folder( ) ま たは add_portfolio_file( ) で使え る ハン ド ル。
詳細 生成 さ れた フ ォ ルダ構造は、 カ レ ン ト 文書の PDF ポー ト フ ォ リ オを作成す る ために使わ
れます。 こ の フ ォ ルダ構造は end_document( ) の後に削除 さ れます。 こ の関数は、 begin_
document( ) に attachments オプシ ョ ン を与えてい る と き は使っ てはいけ ません。
スコープ 文書
表 12.13 add_portfolio_folder( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
description
(ハイパーテキス ト 文字列) フ ォ ルダの説明
fieldlist
(オプ シ ョ ン リ ス ト の リ ス ト ) フ ォルダの メ タ デー タ フ ィ ール ド 群を指定 し ます。 各 リ ス ト は、
end_document( ) の portfolio オプ シ ョ ンの schema サブオプ シ ョ ンの中のフ ィ ール ド を指 し 示 し ま
す。 使え るサブオプ シ ョ ン を表 12.15 に挙げます。
thumbnail
(画像ハン ド ル) フ ォルダのサムネール と し て用いたい画像を指定 し ます。 こ のハン ド ルは、 load_
image( ) で作成 し てお く 必要があ り 、 こ の画像は、 add_thumbnail( ) に対 し て挙げた条件を満た し て
いる必要があ り ます。
VB RB Function add_portfolio_file(folder As Long, filename As String, optlist As String) As Long
C# int add_portfolio_file(int folder, String filename, String optlist)
ポー ト フ ォ リ オの フ ォ ルダ ま たはパ ッ ケージに フ ァ イ ルを追加 し ます (要 PDF 1.7)。
folder こ れ以前に add_portfolio_folder( ) を呼び出 し て返 さ れた フ ォ ン ト ハン ド ルか、 ま
たはルー ト フ ォ ルダの場合は -1。 ルー ト フ ォ ルダでない フ ォ ルダは要 PDF 1.7ext3 です。
filename (名前文字列。グ ロ ーバルなオプシ ョ ン ま たはパ ラ メ タ に従っ て解釈 さ れます。
表 2.2 参照) PDF ポー ト フ ォ リ オの指定 し た フ ォ ルダに付けたいデ ィ ス ク 上の フ ァ イ ルか
仮想フ ァ イ ルの名前。 begin_document( ) の createpvf オプシ ョ ン を使えば、 一時フ ァ イ ル
12.7 PDF パ ッ ケージ ・ PDF ポー ト フ ォ リ オ
211
をデ ィ ス ク 上に一切作 ら ずに、 文書を メ モ リ 内で作成 し て、 それを受け渡 し て PDF ポー
ト フ ォ リ オの中に入れ る こ と がで き ます。
Acrobat は、 Acrobat 内か ら フ ァ イ ルを開 く 際に、 ど のアプ リ ケーシ ョ ン を起動す る か
を、 その フ ァ イ ル名の拡張子を用いて決め る こ と に留意 し て く だ さ い。 適切な拡張子を
持っ た フ ァ イ ル名を、 外部的な制約のために使 う こ と がで き ない と き は、 かわ り に PVF
フ ァ イ ル (任意の フ ァ イ ル名が使え ます) を作成する こ と も で き ます。
optlist フ ォ ン ト のプ ロ パテ ィ 群を指定 し たオプシ ョ ン リ ス ト :
> 一般オプシ ョ ン : errorpolicy (表 2.6 参照)
> 表 12.14 に従っ た フ ァ イ ルプ ロ パテ ィ オプシ ョ ン群 :
description ・ fieldlist ・ mimetype ・ name ・ password ・ thumbnail
戻り値
フ ァ イ ルの追加が成功 し た と き は値 1、 関数呼び出 し が失敗 し た と き はエ ラ ー コ ー ド -1。
errorpolicy=exception と す る と 、 こ の関数はエ ラ ー時に例外を発生 さ せます。 PDF 文書群
は、 変更日 と 作成日を取得す る ために開かれます。 PDF 文書を開 く こ と がで き なかっ た と
き (パ ス ワー ド を与え なかっ た場合等) も 、 その文書は PDF ポー ト フ ォ リ オの中へ取 り
込まれます。
詳細 指定 し た フ ァ イ ルが、PDF 1.7ext3のポー ト フ ォ リ オの指定 し た フ ォ ルダに、ま たはPDF 1.7
のパ ッ ケージに付け ら れます。PDI が利用で き る 場合は、PDF 文書群は可能な ら ば開かれ、
その作成日 と 変更日がポー ト フ ォ リ オに書 き 込まれます。 こ の関数は、 begin_document( )
に attachments オプシ ョ ン を与えてい る と き は使っ てはいけ ません。
スコープ 文書
表 12.14 add_portfolio_file( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
description
(ハイパーテキス ト 文字列) フ ァ イルに関連づけ ら れた説明テキス ト 。
fieldlist
(オプ シ ョ ン リ ス ト の リ ス ト ) フ ァ イルの メ タ デー タ フ ィ ール ド 群を指定 し ます。 各 リ ス ト は、
end_document( ) の portfolio オプ シ ョ ンの schema サブオプ シ ョ ンの中の フ ィ ール ド を指 し 示 し ま
す。 使え るサブオプ シ ョ ン を表 12.15 に挙げます。
mimetype
(文字列) フ ァ イルの MIME タ イ プ。 ただ し Acrobat は、 フ ァ イルがア ク テ ィ ブに さ れた と き に、
適切なア プ リ ケーシ ョ ン を起動する ために、 MIME 種別でな く フ ァ イル名の拡張子を用います。
フ ァ イルを PDF 文書 と し て開 く こ と に成功 し た と きは、 MIME タ イ プ application/pdf が自動的に
設定 さ れます。
name
(ハイパーテキス ト 文字列) ポー ト フ ォ リ オ内で用いたい フ ァ イルの名前を、 filename と 違 う 名前
に し たい と き に指定 し ます。 Acrobat が、 PDF 文書を正 し く プ レ ビ ュ ー し 、 その他の種類の フ ァ イ
ルに対 し て適切なア プ リ ケーシ ョ ン を起動する よ う に、 通常の種別固有の拡張子 (.pdf 等) を持 っ
た名前を用いる こ と を推奨 し ます。 同 じ フ ォルダの中の 2 個のフ ァ イルの名前は、 大文字 ・ 小文
字を無視 し た と き に異な っ ている必要があ り ます。 名前の中にス ラ ッ シ ュ キ ャ ラ ク タ 「/」 は入れ
ない こ と を推奨 し ます。 Acrobat はス ラ ッ シ ュ よ り 前のキ ャ ラ ク タ をすべて落 と し て し ま う ためで
す。 デ フ ォル ト : filename からパス要素をすべて除いた もの
password
(文字列で最大 127 キ ャ ラ ク タ 。 PDF が利用で き る場合のみ) 保護 さ れた PDF 文書を開いてその日
付項目群を取得する ために必要な PDF マス タ ーパスワー ド 。
thumbnail
(画像ハン ド ル) フ ァ イルのサムネール と し て用いたい画像を指定 し ます。 こ のハン ド ルは、 load_
image( ) で作成 し てお く 必要があ り 、 こ の画像は、 add_thumbnail( ) に対 し て挙げた条件を満た し て
いる必要があ り ます。
212
第 12 章 : イ ン タ ラ ク テ ィ ブ機能 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 12.15 add_portfolio_folder( ) と add_portfolio_file( ) の fieldlist オプ シ ョ ンのサブオプ シ ョ ン一覧
オプ シ ョ ン
説明
key
(文字列。 必須) フ ィ ール ド の名前。 こ れは、 end_document( ) の portfolio オプ シ ョ ンの schema
サブオプ シ ョ ンの中のキーを指 し 示す必要があ り ます。 名前は一意である必要があ り ます。
prefix
(ハイパーテキス ト 文字列) ユーザーに見せる フ ィ ール ド 値の頭に付ける接頭辞文字列。 Acrobat
は こ の項目を type=text の場合にのみ用います。 デ フ ォ ル ト : な し
type
(キーワー ド ) フ ィ ール ド のデー タ 種別。 使え るキーワー ド (デ フ ォル ト : text) :
value
text
テキス ト フ ィ ール ド : フ ィ ール ド 値はハイパーテキス ト 文字列 と し て格納 さ れます。
date
日付フ ィ ール ド : フ ィ ール ド 値は PDF 日付文字列 と し て格納 さ れます。
number
数値フ ィ ール ド : フ ィ ール ド 値は PDF 数値 と し て格納 さ れます。
(ハイパーテキス ト 文字列。 必須) end_document( ) の portfolio オプ シ ョ ンの schema サブオプ
シ ョ ンの中のフ ィ ール ド の値を指定 し ます。 そのデー タ 種別を type オプ シ ョ ン で指定する必要が
あ り 、 かつ、 こ れを portfolio オプ シ ョ ンの schema サブオプ シ ョ ンの対応する type サブオプ
シ ョ ンに一致 さ せる必要があ り ます。
表 12.16 end_document( ) の portfolio オプ シ ョ ンのサブオプ シ ョ ン一覧
オプ シ ョ ン
説明
coversheet
(ハイパーテキス ト 文字列) ユーザー イ ン タ フ ェ ースで最初に見せるポー ト フ ォ リ オ内のフ ァ イル
の名前。 デ フ ォ ル ト : ポー ト フ ォ リ オ を含む文書
coversheetfolder
( フ ォ ルダハン ド ル) coversheet オプ シ ョ ン で指定 さ れた フ ァ イルを含んでいるポー ト フ ォ リ オの
中のフ ォ ルダの名前。 その coversheet 名のフ ァ イルが、 複数のポー ト フ ィ リ オ フ ォルダ内に存在
し てお り 、 coversheetfolder が指定 さ れていない場合には、 最初に出現 し た ものが使われます。
デ フ ォル ト : な し
initialview
(キーワー ド ) 初期表示を指定 し ます。 使え るキーワー ド (デ フ ォ ル ト : detail) :
detail
ポー ト フ ォ リ オ を詳細モー ド で表示 し ます。 すなわち、 schema オプ シ ョ ン内のすべて
の情報を多段組の形で表示 し ます。 こ のモー ド がユーザーに最 も多 く の情報を提供 し ま
す (Acrobat : 「上に表示」)。
tile
ポー ト フ ォ リ オ を タ イルモー ド で表示 し ます。 すなわち、 コ レ ク シ ョ ン内の各フ ァ イル
を小 さ なア イ コ ン で表 し 、 schema オプ シ ョ ン内の情報の一部分を表示 し ます。 こ の
モー ド はユーザーに フ ァ イル添付に関する ト ッ プ レ ベルな情報を提供 し ます (Acrobat :
「左に表示」)。
hidden
ポー ト フ ォ リ オ を初め非表示に し ます。 ユーザーが明示的に操作すればフ ァ イル一覧を
得る こ と はで き ます (Acrobat : 「最小化表示」)。
12.7 PDF パ ッ ケージ ・ PDF ポー ト フ ォ リ オ
213
表 12.16 end_document( ) の portfolio オプ シ ョ ンのサブオプ シ ョ ン一覧
オプ シ ョ ン
説明
schema
(オプ シ ョ ン リ ス ト の リ ス ト ) ポー ト フ ォ リ オの メ タ デー タ スキーマ : 各オプ シ ョ ン リ ス ト は、
フ ォルダま たはフ ァ イルの fieldlist 内のキーに、 ま たは標準 フ ィ ール ド の名前に対応する一意
な名前を持つ フ ィ ール ド を定義 し ます。 こ れら のフ ィ ール ド は、 Acrobat でのポー ト フ ォ リ オの表
示動作を定義 し ます (デ フ ォ ル ト : Acrobat は、 フ ァ イル名 ・ サイ ズ ・ 変更日 ・ 説明 (あれば) を
表示 し ます) :
editable
(論理値) Acrobat が フ ィ ール ド 値の編集を許すべきかど う かを指定 し ます。 デ フ ォル
ト : false
key
(文字列。 必須) 初期フ ィ ール ド 名。 こ れは一意である必要があ り ます。
右記の名前 (ユーザー定義 フ ィ ール ド には使え ません) を用いる と 、 内蔵 フ ィ ール ド に
新たな ラ ベルを割 り 当て る こ と がで き ます : _creationdate ・ _description ・ _
filename ・
_moddate ・ _size。
label
(ハイパーテキス ト 文字列。 必須) ユーザーに見せる フ ィ ール ド ラ ベルのテキス ト 。
order
(整数) ユーザー イ ン タ フ ェ ースでの フ ィ ール ド の相対順序 (1,2,3,...)
type
(キーワー ド ) フ ィ ール ド のデー タ 種別。 右記の種別を用いて、 fieldlist オプ シ ョ ン
内のユーザー定義フ ィ ール ド を指 し 示す こ と がで き ます (デ フ ォル ト : text) :
visible
sort
text
ハイパーテキス ト 文字列
date
PDF 日付文字列
number
数値
(論理値) ユーザー イ ン タ ー フ ェ ースでのフ ィ ール ド の初期の表示 ・ 非表示。 デ フ ォ ル
ト : true。 ただ し 、 ユーザー定義フ ィ ール ド があ る と きは、 Acrobat は、 内蔵 フ ィ ール
ド を、 それら を表示する と 明示的に指定 さ れていない限 り 、 非表示に し ます。
(オプ シ ョ ン リ ス ト の リ ス ト 。 各 リ ス ト は文字列 1 個 と 、 オプ シ ョ ナルなキーワー ド 1 個を内容 と
し て持ち ます) schema オプ シ ョ ン で指定 し た フ ィ ール ド 群をユーザー イ ン タ フ ェ ースで並べ替え
る順序を指定 し ます。 各サブ リ ス ト は、 フ ィ ール ド 名 (必須) と キーワー ド 1 個を内容 と し て持
ち ます。 使え るキーワー ド (デ フ ォ ル ト : ascending) :
ascending フ ィ ール ド 値を昇順で並べ替え ます。
descending フ ィ ール ド 値を降順で並べ替え ます。
Acrobat はこ の リ ス ト を用いて、 ポー ト フ ォ リ オ内の リ ス ト を並べ替え ます。 この リ ス ト は、 追加
のフ ィ ール ド 群が並べ替えに寄与で き る よ う にする ために用い られ、 追加の各フ ィ ール ド を用い
て順序の決定が推進 さ れます : schema オプ シ ョ ン内の複数のフ ィ ール ド が リ ス ト 内の 1 番目の
フ ィ ール ド で同 じ 値を持つ と きは、 リ ス ト 内の後続の フ ィ ール ド 群が並べ替えに用い られ、 それ
は順序が一意に定ま るか、 あるいはフ ィ ール ド 名を使い果たすま で続け ら れます。 デ フ ォル ト :
並べ替え し ない
split
(オプ シ ョ ン リ ス ト 。 PDF 1.7ext3) 分割バーの向き と 位置を指定 し ます。 デ フ ォ ル ト は
initialview オプ シ ョ ン に依存 し ます : 値 detail (または値な し ) は横向き を暗示 し 、 tile は縦
向き を意味 し ます。 initalview=hidden にする と 分割バーは用い られません。 使え るサブオプ シ ョ
ン:
direction
(キーワー ド ) 分割バーの向き。 使え るキーワー ド :
horizontal ウ ィ ン ド ウ を横に分割 し ます。
position
214
vertical
ウ ィ ン ド ウ を縦に分割 し ます。
none
ウ ィ ン ド ウ を分割 し ません。 ウ ィ ン ド ウ全体がフ ァ イルナビゲーシ ョ ン表示
に用い ら れます。
(パーセ ン ト 値) 分割バーの初期位置を、 得 られる ウ ィ ン ド ウ領域に対するパーセ ン ト
値 と し て指定 し ます。 使え る値は範囲 0 ~ 100 です。 こ の項目は、 direction=none に
する と 無視 さ れます。 デ フ ォ ル ト : ビ ュ ーア依存
第 12 章 : イ ン タ ラ ク テ ィ ブ機能 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
13 3D ・ 地理空間機能
13.1 3D アー ト ワー ク
ク ッ ク ブ ッ ク 完全な コ ー ド サン プルが ク ッ ク ブ ッ クの multimedia/starter_3d ト ピ ッ ク にあ り ます。
VB RB Function load_3ddata(filename As String, optlist As String) As Long
C# int load_3ddata(String filename, String optlist)
3D モデルを、 デ ィ ス ク ベース ま たは仮想フ ァ イ ルか ら 読み込みます (要 PDF 1.6)。
filename (名前文字列。グ ロ ーバルな filenamehandlingオプシ ョ ン ま たはパ ラ メ タ に従っ
て解釈 さ れます。 表 2.2 参照) 3D モデルの入っ た、 デ ィ ス ク ベース ま たは仮想フ ァ イ ル
の名前。
optlist 3D モデルのプ ロ パテ ィ 群を指定 し たオプシ ョ ン リ ス ト :
> 一般オプシ ョ ン : errorpolicy (表 2.6 参照)
> 表 13.1 に従っ て 3D モデルのプ ロ パテ ィ 群を指定する オプシ ョ ン群 :
defaultview ・ script ・ type ・ views
戻り値 3D ハン ド ル。 create_annotation( ) で 3D 注釈を作成す る のに使え ます。 3D ハン ド ルは、
カ レ ン ト の文書ス コ ープ を終え る ま で使え ます。 errorpolicy=return の場合、 戻 り 値 -1 は
エ ラ ーを示すので、 そ う でないか を呼び出 し 側で検査す る 必要があ り ます。
詳細 PRC ま たは U3D 形式を内容 と し て持つフ ァ イ ルか ら 3D モデルを読み込みます。
スコープ ページ ・ 文書。 返 さ れたハン ド ルは、 次に end_document( ) を呼び出すま で使え ます。
表 13.1 load_3ddata( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
defaultview
(キーワー ド または 3D ビ ュ ーハン ド ル) 3D 注釈の初期ビ ュ ーを指定 し ます。 キーワー ド first ・
last (views オプ シ ョ ンの中の各項目を参照する) のいずれか、 または create_3dview( ) で作成 し
た 3D ビ ュ ーハン ド ル。 デ フ ォル ト : first
script
(ハイパーテキス ト 文字列) 3D モデルが実体化 さ れた時に実行 さ せたい JavaScript コ ー ド を入れた
文字列。 デ フ ォ ル ト : ス ク リ プ ト な し
13.1 3D アー ト ワー ク
215
表 13.1 load_3ddata( ) のオプ シ ョ ン一覧
オプ シ ョ ン
type
説明
(キーワー ド ) 3D デー タ の種類を指定 し ます (デ フ ォ ル ト : U3D) :
views
PRC
(PDF 1.7ext3) Product Representation Compact (PRC) 形式 (ISO 14739-1)
U3D
Universal 3D File 形式 (U3D)。 下記の種類が使え ます (www.ecma-international.org 参
照) :
PDF 1.6、 ただ し 要 Acrobat 7.0.7 以上 : ECMA-363, Universal 3D File Format (U3D), 1st
Edition。
PDF 1.6、 ただ し 要 Acrobat 8.1 以上 : ECMA-363, Universal 3D File Format (U3D), 3rd
Edition。
なお、 Acrobat 9.3.x ・ 9.4.x では、 U3D アー ト ワー クが表示 さ れず、 エ ラ ー メ ッ セージ
「A 3D data parsing error has occurred」 が出る問題があ り ます (Acrobat 8 ・ X では大丈夫
です)。
(3D ビ ュ ーハン ド ルの リ ス ト ) 3D モデルに対する定義済みビ ュ ーの リ ス ト 。 リ ス ト の各要素は、
create_3dview( ) で作成 し た 3D ビ ュ ーハン ド ルです。 ビ ュ ー群を create_3dview( ) で作成 し た際に用
い られた type オプ シ ョ ンは、 create_3ddata( ) 内の type オプ シ ョ ン と 一致 し ている必要があ り ま
す。 デ フ ォル ト : 空 リ ス ト
VB RB Function create_3dview(username As String, optlist As String) As Long
C# int create_3dview(String username, String optlist)
3D ビ ュ ーを作成 し ます (要 PDF 1.6)。
username
(ハ イ パーテ キ ス ト 文字列) 3D ビ ュ ーのユーザー イ ン タ フ ェース名。
optlist 3D ビ ュ ーのプ ロ パテ ィ 群を指定 し たオプシ ョ ン リ ス ト :
> 一般オプシ ョ ン : errorpolicy (表 2.6 参照)
> 3D ビ ュ ーのプ ロ パテ ィ 群を表 13.2 に従っ て指定す る オプシ ョ ン群 :
background・camera2world・cameradistance・lighting・name・rendermode・type・U3Dpath
戻り値 3D ビ ュ ーハン ド ル。 カ レ ン ト の文書ス コ ープ を終え る ま で使え ます。 errorpolicy=return
の場合、 戻 り 値 -1 はエ ラ ーを示すので、 そ う でないかを呼び出 し 側で検査す る 必要があ
り ます。
詳細 3D ビ ュ ーハン ド ルは、 load_3ddata( ) の views オプシ ョ ン で 3D モデルに関連づけ る こ と
も で き ます し 、 あ る いは create_annotation( ) で 3D 注釈を作成 し た り 、 create_action( ) で
3D 関連のア ク シ ョ ン を作成 し た り す る のに使 う こ と も で き ます。
スコープ ページ ・ 文書。 返 さ れたハン ド ルは、 次に end_document( ) を呼び出すま で使え ます。
表 13.2 create_3dview( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
background
(オプ シ ョ ン リ ス ト ) 3D モデルの背景を指定 し ます :
camera2world
216
fillcolor
(色) 背景色を、 RGB 色空間で表現 し ます。 デ フ ォ ル ト : 白
entire
(論理値) true にする と 、 背景は注釈全体に適用 さ れます。 そ う で なければ、 注釈の
3Dbox オプ シ ョ ン で指定 し てあ る矩形にだけ適用 さ れます。 デ フ ォ ル ト : false
(float 12 個の リ ス ト ) カ メ ラ の位置 と 向き を世界座標で指定 し た 3D 変換行列 (下記説明参照)。
デ フ ォ ル ト : 3D モデルの中で内部的に定義 さ れた初期ビ ュ ー
第 13 章 : 3D ・ 地理空間機能 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 13.2 create_3dview( ) のオプ シ ョ ン一覧
オプ シ ョ ン
説明
cameradistance
(float。 負値は不可。 camera2world を指定 し ない と 無視 さ れます) カ メ ラ と 軌道中心の距離。 詳 し
く は、 ISO 32000-1 の section 13.6.4 「3D Views」 の CO キーの説明を参照。 デ フ ォ ル ト : 3D デー タ
の中で内部的に定義
lighting
(オプ シ ョ ン リ ス ト 。 PDF 1.7) 3D アー ト ワー ク の照明方式を指定 し ます。 以下のオプ シ ョ ンが使
え ます :
type
(キーワー ド ) 照明方式を指定 し ます。 使え るキーワー ド (デ フ ォ ル ト : Artwork) :
Artwork
光は 3D アー ト ワー ク内で指定 さ れます。
None
光な し 。 3D アー ト ワー ク 内で指定 さ れている光は無視 さ れます。
White
3 個のラ イ ト グ レー無限遠光、 ア ン ビ エ ン ト 項な し
Day
3 個のラ イ ト グ レー無限遠光、 ア ン ビ エ ン ト 項な し
Night
黄色 1 個 ・ ア ク ア色 1 個 ・ 青 1 個の無限遠光、 ア ン ビ エ ン ト 項な し
Hard
3 個のグ レー無限遠光、 中程度のア ン ビ エ ン ト 項
Primary
赤 1 個 ・ 緑 1 個 ・ 青 1 個の無限遠光、 ア ン ビ エ ン ト 項な し
Blue
3 個の青色無限遠光、 ア ン ビ エ ン ト 項な し
Red
3 個の赤色無限遠光、 ア ン ビ エ ン ト 項な し
Cube
長軸に沿っ て配置 さ れた 6 個のグ レー無限遠光、 ア ン ビ エ ン ト 項な し
CAD
3 個のラ イ ト グ レー無限遠光 と カ メ ラ に付いた光 1 個、 ア ン ビ エ ン ト 項な し
Headlamp カ メ ラ に付いた 1 個の無限遠光、 低いア ン ビ エ ン ト 項
name
(ハイパーテキス ト 文字列) 3D ビ ュ ーの名前。 GoTo ア ク シ ョ ン で使 う こ と がで き ます。 こ れは必
須ではない内部的な名前であ り 、 必須の username 引数 と は別個に扱われます。
rendermode
(オプ シ ョ ン リ ス ト 。 PDF 1.7) 3D アー ト ワー ク を表示する ためのレ ン ダモー ド を指定 し ます。 使
え るサブオプ シ ョ ン を表 13.3 に挙げます。
type
(キーワー ド 。 このビ ュ ーが load_3ddata( ) で type=PRC で使われる な ら必須) 3D デー タ の種別を指
定 し ます (デ フ ォル ト : U3D) :
U3Dpath
PRC
こ のビ ュ ーは、 load_3ddata( ) で type=PRC で使われます。
U3D
こ のビ ュ ーは、 load_3ddata( ) で type=U3D で使われます。
(ハイパーテキス ト 文字列。 camera2world オプ シ ョ ンが指定 さ れている場合には無視 さ れます。
type=U3D の場合み) 3D アー ト ワー ク内のビ ュ ー ノ ー ド にア ク セスする ために用い られる ビ ュ ー
ノ ー ド 名。
カ メ ラ 位置 カ メ ラ の位置は camera2world オプシ ョ ン で指定す る こ と がで き ます。 あ る
いは、 JavaScript コ ー ド を付けて、 カ メ ラ のモデルに対す る 位置 と 向 き を指定す る こ と も
で き ます。 PDFlib ク ッ ク ブ ッ ク に、 こ の よ う な JavaScript コ ー ド を 3D モデルに付け る サ
ンプル コ ー ド があ り ます。
下記の値を camera2world オプシ ョ ンに与え る と 、代表的な カ メ ラ 位置を実現す る こ と
がで き ます。 x ・ y ・ z は、 カ メ ラ の位置を記述す る 適切な値です。 こ れ ら の値は、 定め ら
れた条件を満たす必要があ り ます (後述参照) :
前か ら のビ ュ ー :
{-1 0 0 0 0 1 0 1 0 x y z} x小、y大負、z小
左か ら のビ ュ ー :
{ 0 1 0 0 0 1 1 0 0 x 0 z} x大負、z小
13.1 3D アー ト ワー ク
217
上か ら の ビ ュ ー :
{-1 0 0 0 1 0 0 0 -1 x 0 z} x小、z大負
後ろか ら の ビ ュ ー :
{ 1 0 0 0 0 1 0 -1 0 x y z} x小、y大正、z小
下か ら の ビ ュ ー :
{-1 0 0 0 -1 0 0 0 1 x 0 z} x小、z大負
右か ら の ビ ュ ー :
{ 0 -1 0 0 0 1 -1 0 0 x 0 z} x大正、z小
等角ビ ュ ー、 すなわち投影の方向が 3 軸すべて と 等 し い角度で交わ る 場合。 こ の よ う な
ビ ュ ーはち ょ う ど 8 個、 八分空間ご と に 1 個ずつあ り ます :
{0.707107 -0.707107 0 -0.5 -0.5 0.707107 -0.5 -0.5 -0.707107 x y z}
x, y, z large positive
x ・ y ・ z 値は、 モデルの位置 と サ イ ズに応 じ て選ぶ必要があ り ます。 「大」 は、 カ メ ラ と モ
デルの間に充分大 き な距離を と る ために、その値を モデルのサ イ ズ よ り かな り 大 き く す る
必要があ る こ と を意味 し ます。 値が大 き すぎ る と 、 モデルは非常に小 さ く 表示 さ れ、 そ し
て ビ ュ ーを回転 さ せ る と す ぐ に視界か ら 外れて し ま い ます。 値が小 さ すぎ る と 、 モデルは
ビ ュ ーに収 ま り き り ません。 「小」 は、 その絶対値を、 大 き な値に比べて小 さ し 、 モデル
のサ イ ズ を あ ま り 大 き く 超え ない よ う にす る 必要があ る こ と を意味 し ます。
表 13.3 create_3dview( ) の rendermode オプ シ ョ ンのサブオプ シ ョ ン一覧
オプ シ ョ ン
説明
crease
(float で範囲 0 ~ 180) 折 り 目値
facecolor
(RGB カ ラ ーまたはキーワー ド 、 type=Illustration のみ) 表面色。 この色はい く つかのレ ン ダ
モー ド で用い られます。 キーワー ド backgroundcolor はカ レ ン ト 背景色を意味 し ます。 デ フ ォル
ト : backgroundcolor
opacity
(float で範囲 0 ~ 1) い く つかのレ ン ダモー ド における不透明値。 デ フ ォル ト : 0.5
rendercolor
(RGB カ ラ ー) 補助色。 この色はい く つかのレ ン ダモー ド で用い ら れます。 デ フ ォ ル ト : 黒
218
第 13 章 : 3D ・ 地理空間機能 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 13.3 create_3dview( ) の rendermode オプ シ ョ ンのサブオプ シ ョ ン一覧
オプ シ ョ ン
説明
type
(オプ シ ョ ン リ ス ト 。 PDF 1.7) 3D アー ト ワー ク を表示する ためのレ ン ダモー ド を指定 し ます。 使
え る オプ シ ョ ン :
(キーワー ド ) レ ン ダモー ド を指定 し ます。 使え るキーワー ド (デ フ ォ ル ト : Artwork) :
Artwork
ラ ン ダモー ド は 3D アー ト ワー ク内で指定 さ れます。 rendermode オプ シ ョ ンの これ以外
のサブオプ シ ョ ンはすべて無視 さ れます。
Solid
テ ク スチ ャ付き で照明 さ れた幾何図形輪郭群を表示 し ます。
SolidWireframe
テ ク スチ ャ付き で照明 さ れた、 単色の辺を持っ た幾何図形輪郭 (三角形) 群を表示 し
ます。
Transparentテ ク スチ ャ 付き で照明 さ れた、 追加の透過の水準を持っ た幾何図形輪郭 (三角形) 群
を表示 し ます。
TransparentWireframe
テ ク スチ ャ付き で照明 さ れた、 追加の透過の水準を持っ た幾何図形輪郭 (三角形) 群
を表示 し ます。
BoundingBox
テ ク スチ ャ付き で照明 さ れた、 追加の透過の水準を持っ た、 単色の不透明な辺を持っ
た幾何図形輪郭 (三角形) 群を表示 し ます。
TransparentBoundingBox
各節点の、 その節点に対する局所座標空間の軸に沿っ た、 追加の透過の水準を持 っ た
境界枠の面を表示 し ます。
TransparentBoundingBoxOutline
各節点の、 その節点に対する局所座標空間の軸に沿っ た、 追加の透過の水準を持 っ た
境界枠の辺 と 面を表示 し ます。
Wireframe 各節点の、 その節点に対する局所座標空間の軸に沿っ た、 追加の透過の水準を持っ た境
界枠の辺 と 面を表示 し ます。
ShadedWireframe
辺のみを、 ただ し その 2 個の頂点の間でその色を補間 し 、 かつ照明を適用 し て表示 し
ます。
HiddenWireframe
辺を単色で、 ただ し 後ろ向きの辺 と 隠 さ れた辺を除いて表示 し ます。
Vertices
頂点のみを単色で表示 し ます。
ShadedVertices
頂点のみを、 ただ し その頂点色を用いて、 かつ照明を適用 し て表示 し ます。
Illustration表面を持 っ たシルエ ッ ト 辺を、 隠線を除いて表示 し ます。
SolidOutline照明 さ れテ ク スチ ャ付きの表面を持 っ たシルエ ッ ト 辺を、 隠線を除いて表示 し ます。
ShadedIllustration
照明 さ れテ ク スチ ャ付きの表面を持 っ た、 アー ト ワー ク の弱 く 照明 さ れた領域を除 く
ための追加の放射項目を持っ たシルエ ッ ト 辺を表示 し ます。
13.1 3D アー ト ワー ク
219
13.2 地理空間機能
注 PDF 内の地理空間機能を イ ン タ ラ ク テ ィ ブ操作するには Acrobat 9 以上が必要です。
地理空間機能は、 以下の関数 と オプシ ョ ンで実装 さ れます :
> begin/end_page_ext( ) の viewports オプシ ョ ン を用いて、ページに地理参照付 き 領域(複
数可) を割 り 当て る こ と がで き ます。
> load_image( ) の georeference オプシ ョ ン を用いて、地球ベース座標系を画像に割 り 当て
る こ と がで き ます。
地理空間機能のためのオプシ ョ ン群を、 表 13.4 以降に詳 し く 示 し ます。
表 13.4 begin/end_page_ext( ) の viewports オプ シ ョ ンのサブオプ シ ョ ン一覧
オプ シ ョ ン
説明
boundingbox
(矩形。 必須) ページ上のビ ュ ーポー ト の位置をデ フ ォル ト 座標で指定 し た矩形。
georeference (オプ シ ョ ン リ ス ト 。 必須) 地理空間計測に用いる ためビ ュ ーポー ト に関連付け られる世界座標系
の記述を指定 し ます。 使え るオプ シ ョ ンは表 13.5 を参照。
name
(ハイパーテキス ト 文字列) ビ ュ ーポー ト の説明 タ イ ト ル (地図名)。 ただ し 、 Acrobat は こ の
ビ ュ ーポー ト 名をユーザー イ ン タ フ ェ ースに表示 し ません。
表 13.5 load_image( ) の georeference オプ シ ョ ンのサブオプ シ ョ ン一覧。 begin/end_page_ext( ) の viewports オプ
シ ョ ンの georeference サブオプ シ ョ ンのサブオプ シ ョ ン と し て も用い られます
オプ シ ョ ン
説明
angularunit
(キーワー ド ) 求める角度表示単位を指定 し ます (デ フ ォ ル ト : deg) :
areaunit
degree
度
grad
グ ラ ー ド (全円の 1/400、 すなわち 0.9 度)
(キーワー ド ) 求める面積表示単位を指定 し ます (デ フ ォ ル ト : sqm) :
sqm
平方 メ ー ト ル
ha
ヘ ク タ ール (10,000 平方 メ ー ト ル)
sqkm
平方キロ メ ー ト ル
sqft
平方フ ィ ー ト
a
エー カ ー
sqmi
平方マ イル
こ こ で指定 し た単位は、 右記の Acrobat の設定を無効に し ている と きのみ、 表示に用い られます :
「環境設定」 → 「 もの さ し (地図情報)」 → 「デ フ ォル ト の面積単位を使用」。
bounds
(折れ線で点 2 個以上) 地理空間変換が有効 と な る領域の境界を指定 し ます (地図では、 こ の境界
折れ線は図郭線 と し て知ら れています)。 点群は、 ページ ビ ュ ーポー ト の境界枠に対 し て、 または
画像の寸法に対 し て相対的に表現 し ます。 デ フ ォ ル ト : {0 0 0 1 1 1 1 0}、 すなわち ビ ュ ーポー
ト ・ 画像領域全体が地図に用い ら れます。
displaysystem
(オプ シ ョ ン リ ス ト ) 緯度 ・ 経度 と い っ た位置の値をユーザーに見せる表示に用いる座標系を表
13.6 に従 っ て指定 し ます。 こ の項目を利用する と 、 地図を指定する ために coords オプ シ ョ ン で与
えた座標系以外の座標系で座標を表示する こ と がで き ます。
220
第 13 章 : 3D ・ 地理空間機能 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 13.5 load_image( ) の georeference オプ シ ョ ンのサブオプ シ ョ ン一覧。 begin/end_page_ext( ) の viewports オプ
シ ョ ンの georeference サブオプ シ ョ ンのサブオプ シ ョ ン と し て も用い られます
オプ シ ョ ン
linearunit
説明
(キーワー ド ) 求める距離表示単位を指定 し ます (デ フ ォ ル ト : m) :
m
メートル
km
キロ メ ー ト ル
ft
国際フ ィ ー ト
usft
米国測量 フ ィ ー ト
mi
国際マ イル
nm
海里
こ こ で指定 し た単位は、 右記の Acrobat の設定を無効に し ている と きのみ、 表示に用い られます :
「環境設定」 → 「も の さ し (地図情報)」 → 「デ フ ォル ト の距離単位を使用」。
mappoints
(float 対 2 個以上の リ ス ト 。 必須) 数値の リ ス ト で、 各対が 2D 単位正方形内の点を定義 し ます。
こ の単位正方形は、 ページ ビ ュ ーポー ト の、 ま たは georeference オプ シ ョ ン を含む画像の矩形境
界へマ ッ プ さ れます。 こ の mappoints リ ス ト は、 worldpoints リ ス ト と 同 じ 数の点を内容 と し て持
つ必要があ り 、 各点は、 worldpoints リ ス ト 内の地理空間位置に対応する単位正方形内の地図位置
と な り ます。
worldpoints
(float 対 2 個以上の リ ス ト 。 必須) 座標対の リ ス ト で、 各対が、 mappoints オプ シ ョ ン内のそれぞ
れの点の世界座標を指定 し ます。 こ の対の数は、 mappoints オプ シ ョ ン内の対の数 と 一致する必要
があ り ます。 座標値は、 worldsystem オプ シ ョ ン で指定 し た座標系に基づ き ます :
type=geographic の と きは、 緯度 ・ 経度値を度単位で与え る必要があ り ます。 type=projected の
と きは、 投影 さ れた x ・ y 値を与え る必要があ り ます。
worldsystem (オプ シ ョ ン リ ス ト 。 必須) 表 13.6 に従 っ た世界座標系 (worldpoints の解釈のための)。
表 13.6 load_image( ) の georeference オプ シ ョ ンの mapsystem ・ displaysystem サブオプ シ ョ ンのサブオプ シ ョ ン一
覧。 begin/end_page_ext( ) の viewports オプ シ ョ ンの georeference サブオプ シ ョ ンのサブオプ シ ョ ン と し て も用い
られます
オプ シ ョ ン
説明
epsg
(整数。 epsg か wkt のいずれか 1 つだけ を必ず与え る必要があ り ます) 座標系を EPSG 参照 コ ー ド
で指定 し ます。 なお、 Acrobat 9 は type=geographic の と きは EPSG コ ー ド に対応 し ていませんの
で、 その場合は wkt を用いて く だ さ い。
type
(キーワー ド 。 必須) 座標系の種類を指定 し ます :
geographic 測地座標系 (wkt のみ対応)
projected 投影座標系 (wkt に も epsg に も対応)
wkt
(文字列で最大 1024 ASCII キ ャ ラ ク タ 。 epsg か wkt のいずれか 1 つだけを必ず与え る必要があ り
ます) 座標系を 「Well Known Text」 (WKT) の文字列で指定 し ます。 WKT は、 EPSG コ ー ド を全 く
持たない カ ス タ ム座標系に対 し て推奨 し ます。 また WKT は、 Acrobat 9 では type=geographic の と
きは必須のよ う です。
13.2 地理空間機能
221
222
第 13 章 : 3D ・ 地理空間機能 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
14 文書交換
14.1 文書情報 フ ィ ール ド
VB RB Sub set_info(key As String, value As String)
C# void set_info(String key, String value)
文書情報フ ィ ール ド key に value を書き 込みます。
key (名前文字列) 文書情報フ ィ ール ド の名前。 標準フ ィ ール ド 名のいずれか、 ま たは任
意のカ ス タ ム フ ィ ール ド 名を用い る こ と がで き ます (表 14.1 参照)。 カ ス タ ム フ ィ ール ド
の数に制限は あ り ま せん。 カ ス タ ム文書情報 フ ィ ール ド の利用 と 意味づけ に関 し て は、
Dublin Core Metadata 要素セ ッ ト を一読す る こ と を PDFlib ユーザーに奨励 し ます。1
value (ハ イ パーテ キ ス ト 文字列) key 引数に設定 し たい文字列。 Acrobat では、 value に
最大長 255 バ イ ト と い う 制約が課 さ れてい ます。 なお、 Windows 版の Adobe Reader 6 で
は、 バグのため、 情報文字列に よ っ てはキ ャ ラ ク タ & が正 し く 表示 さ れない こ と があ り
ます。
詳細 与え る 情報の値は、 カ レ ン ト 文書にだけ使われ る ので、 同 じ オブ ジ ェ ク ト ス コ ープの中で
生成す る 文書すべてに使われ る わけではあ り ません。 begin/end_document( ) に autoxmp
オプシ ョ ン を与え て あ る と 、 set_info( ) に与えた情報項目か ら 、 PDFlib が自動的に XMP 文
書 メ タ デー タ を同期作成 し ます。
文書情報項目は、 begin/end_document( ) の metadata オプシ ョ ンに与え た XMP 文書 メ
タ デー タ に よ っ て上書 き さ れます。
スコープ 任意。 オブ ジ ェ ク ト ス コ ープで使 う と 、 与え る 値は次の文書にのみ使われます。
表 14.1 文書情報 フ ィ ール ド キーの値
キー
説明
Subject
文書のサブ タ イ ト ル
Title
文書の タ イ ト ル。 こ の項目は PDF/X モー ド では与え る必要があ り ます。
Creator
文書の作成に使用 さ れた ソ フ ト ウ ェ ア (PDF 生成ソ フ ト ウ ェ ア を示す
Producer と は別です。 Producer はつねに PDFlib にな り ます)。 Acrobat では、
こ の項目は 「ア プ リ ケーシ ョ ン」 と 表示 さ れます。 こ の項目は PDF/X モー
ド では与え る必要があ り ます。
Author
文書の作成者
Keywords
文書の内容を記述 し たキーワー ド
Trapped
文書に ト ラ ッ ピ ン グが適用 さ れているかど う かを表 し ます。 と り う る値は
True ・ False ・ Unknown。 PDF/X モー ド では Unknown は使え ません。
1. dublincore.org 参照
14.1 文書情報 フ ィ ール ド
223
表 14.1 文書情報フ ィ ール ド キーの値
キー
説明
その他任意の名前
ユーザー定義の文書情報 フ ィ ール ド 。 PDFlib は、 任意の数のフ ィ ール ド に対
応 し ています。 1 つのカ ス タ ム フ ィ ール ド 名は一度 し か与えてはいけません。
同 じ フ ィ ール ド 名が複数回現れた場合は、 最後の ものが使われます。 begin/
end_document( ) の moddate オプ シ ョ ン も参照。
XMP メ タ デー タ が作成 さ れる (autoxmp または metadata オプ シ ョ ンによ っ
て) 場合は、 カ ス タ ム文書情報 フ ィ ール ド にはスペースキ ャ ラ ク タ を一切含
めてはいけません。
標準識別に用い ら れる フ ィ ール ド は拒否 さ れます。
224
第 14 章 : 文書交換 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
14.2 XMP メ タ デー タ
文書情報フ ィ ール ド のかわ り と し て、 ま たはそれに加え て、 メ タ デー タ を指定す る ための
フ レーム ワー ク と し て、 PDFlib は XMP (Extensible Metadata Platform1) に対応 し てい ま
す。 XMP は、 た と えば PDF/A 準拠のためには必須であ り 、 こ れに対応す る アプ リ ケー
シ ョ ンは増え て き てい ます。 PDFlib では、 以下に述べる よ う に、 い く つかの種類の XMP
対応があ り ます。
文書情報 フ ィ ール ド に対す る自動 XMP 同期 begin/end_document( ) の autoxmp オ プ
シ ョ ン を true にする と 、 PDFlib は、 set_info( ) に与えた文書情報フ ィ ール ド と 、 い く つか
の内部的に生成 さ れた項目 (CreationDate 等) を、 文書レベルの XMP メ タ デー タ の中の
それぞれ対応す る 項目に同期 さ せます。
標準 XMP ス キーマの中の よ く 知 ら れた要素に対応す る 文書情報フ ィ ール ド は、適切な
ス キーマの中に配置 さ れます。 未知の情報フ ィ ール ド は通常、 拡張 PDF (pdfx) ス キーマ
の中に配置 さ れますが、 ただ し PDF/A モー ド では無視 さ れます。
ユーザーが与え る XMP ス ト リ ーム ユーザーは、XMP メ タ デー タ ス ト リ ームの全体ま た
は一部分を、 さ ま ざ ま な関数の metadata オプシ ョ ンに与え る こ と がで き ます。 こ のオプ
シ ョ ンは XMP ス ト リ ーム を と り 、 それを検証 し ます。 PDFlib は自動的に、 XDP パケ ッ ト
のヘ ッ ダ と ト レー ラ を生成 し ます。
ク ッ ク ブ ッ ク 簡単な XMP のサン プルが ク ッ ク ブ ッ クの interchange/embed_xmp ト ピ ッ ク にあ り ます。
文書レベルの メ タ デー タ に対 し ては、PDFlib はい く つかの内部的に生成 し たプ ロ パテ ィ を
追加 し ます (CreationDate 等)。 PDF/A モー ド では、 PDFlib は、 ユーザーが与え る XMP ス
ト リ ームの中の関連す る 項目を、 標準文書情報フ ィ ール ド に同期 さ せます (autoxmp モー
ド が文書情報フ ィ ール ド を XMP に同期 さ せ る の と 似てい ます)。 し か し PDFlib は、 その
他の XMP 項目を、 カ ス タ ムの文書情報フ ィ ール ド に同期は さ せません。 PDF/A では XMP
文書 メ タ デー タ について さ ら な る 要請があ り ますので、 それについては PDFlib チ ュ ー ト
リ アルで解説 し ます。
文書レベルの メ タ デー タ だけでな く 、 XMP は、 ページ ・ フ ォ ン ト ・ ICC プ ロ フ ァ イ ル ・
画像 ・ テ ンプ レー ト ・ 取 り 込み PDF ページに対 し て も 与え る こ と がで き ます。 さ ま ざ ま
な関数の metadata オプシ ョ ンのサブオプシ ョ ン を表 14.2 に示 し ます。 例 :
metadata={filename=info.xmp inputencoding=winansi}
1. www.adobe.com/products/xmp 参照
14.2 XMP メ タ デー タ
225
表 14.2 begin/end_document( ) ・ begin/end_page_ext( ) ・ load_font( ) ・ load_iccprofile( ) ・ load_image( ) ・ begin_template_
ext( ) ・ open_pdi_page( ) の XMP メ タ デー タ オプ シ ョ ン
オプ シ ョ ン
説明
metadata
(オプ シ ョ ン リ ス ト 。 PDF 1.4) 文書やその他のオブ ジ ェ ク ト に対する メ タ デー タ を与え ます。 オプ
シ ョ ン リ ス ト には以下のオプ シ ョ ン を入れる こ と がで き ます。
inputencoding
(キーワー ド ) 与え るデー タ を解釈 さ せたいエ ン コ ーデ ィ ング。 デ フ ォ ル ト : unicode
inputformat
(キーワー ド ) 与え るデー タ の形式。 デ フ ォ ル ト : utf8、 ただ し inputencoding を 8
ビ ッ ト エ ン コ ーデ ィ ングに し ている と きは bytes
filename
(名前文字列。 必須) 整形式の XMP メ タ デー タ の入っ たデ ィ ス ク ベース または仮想 フ ァ
イルの名前。
例 : metadata={filename=info.xmp inputencoding=winansi}
表 14.3 begin/end_document( ) ・ begin/end_page_ext( ) ・ load_font( ) ・ load_iccprofile( ) ・ load_image( ) ・ begin_template_
ext( ) ・ open_pdi_page( ) の metadata オプ シ ョ ンのサブオプ シ ョ ン一覧
オプ シ ョ ン
説明
compress
(論理値。 begin/end_document( ) では不可) PDF 出力内の XMP メ タ デー タ ス ト リ ームを圧縮 し ま
す。 こ のオプ シ ョ ン を begin_page_ext( ) でのみ与え、 end_page_ext( ) で与え ない と 、 その値はデ
フ ォル ト よ り も優先 さ れます。 デ フ ォル ト : false
PDF/A ・ PDF/X : compress=true は許 さ れません。
inputencoding (キーワー ド ) filename で与えた メ タ デー タ を解釈する ためのエ ン コ ーデ ィ ング。 デ フ ォ ル ト :
unicode
inputformat
(キーワー ド ) filename で与えた メ タ デー タ の形式。 デ フ ォル ト : utf8、 ただ し inputencoding が
8 ビ ッ ト エ ン コ ーデ ィ ングの と きは bytes
keepxmp
(論理値。 load_image( ) のみ。 filename と の組み合わせ不可) 画像内に存在する XMP メ タ デー タ が
保持 さ れます。 すなわち、 PDF 文書内の生成画像に付け られます。 XMP メ タ デー タ は、 TIFF ・
JPEG ・ JPEG 2000 画像形式内で効力を持ち ます。 画像フ ァ イル内に XMP メ タ デー タ が見つから な
い と きは、 こ のオプ シ ョ ンは何の効力も 持ち ません。 デ フ ォ ル ト : false
filename
(名前文字列。 keepxmp を与え なければ必須) 整形式 XMP メ タ デー タ を内容 と し て持つ フ ァ イルの
名前。 こ れはグローバルな filenamehandling オプ シ ョ ン ま たはパラ メ タ に従っ て解釈 さ れます
(表 2.2 参照)。
226
第 14 章 : 文書交換 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
14.3 タ グ付 き PDF
タ グ付 き PDF を生成す る には、 begin_document( ) で tagged オプシ ョ ン を true に設定 し
てお く 必要があ り ます。 lang オプシ ョ ン も 与え る 必要があ り ます。 タ グ付 き PDF モー ド
は、 pdfa オプシ ョ ンに PDF/A-1a:2005 を設定 し てお く と 自動的に有効にな り ます。
ク ッ ク ブ ッ ク 完全な コ ー ド サン プルが ク ッ ク ブ ッ クの interchange/starter_tagged ト ピ ッ ク にあ り ま
す。
VB RB Function begin_item(tag As String, optlist As String) As Long
C# int begin_item(String tag, String optlist)
構造要素やその他の内容ア イ テ ム を開いて、 オプシ ョ ンで与え る 属性を持たせます。
tag 表 14.4 に従っ た ア イ テ ムの要素種別 :
> 標準要素種別群
> 構造要素ではない擬似要素種別群
> タ グ名 Plib_custom_tag は、 カ ス タ ム要素種別を用い る こ と を意味 し ます。 実際の タ グ
名は tagname オプシ ョ ンで与え る 必要があ り ます。
表 14.4 begin_item( ) ・ begin_mc( ) ・ mc_point( ) の標準 ・ 擬似 ・ カ ス タ ム種別一覧
カテゴ リ
タグ
標準要素種別群
グループ化
Document ・ Part ・ Art ・ Sect ・ Div ・ BlockQuote ・ Caption ・ TOC ・ TOCI ・ Index ・ NonStruct ・
Private
段落的
P ・ H ・ H1 ~ H6 (BLSE)
リスト
L ・ LI ・ Lbl ・ LBody (BLSE)
表
Table (BLSE) ・ TR ・ TH ・ TD ・ THead1 ・ TBody1 ・ TFoot1
インライン
レ ベル
Span ・ TagSuspect2 ・ Quote ・ Note ・ Reference ・ BibEntry ・ Code (ILSE)
イラス ト
レーシ ョ ン
Figure ・ Formula ・ Form
日本語
Ruby1 (グループ化) ・ RB1 ・ RT1 ・ RP1 ・ Warichu1 (グループ化) ・ WT1 ・ WP1
擬似要素種別群
非構造化要
素群
Artifact
ページの本文か ら区別するべき アーテ ィ フ ァ ク ト を指定 し ます。
(ア ク セ シ ビ リ テ ィ スパン。 PDF には Span と し て書き込まれますが、 イ ン ラ イ ン レ ベル
ア イ テムの Span と は区別する必要があ り ます) こ れを使 う と 、 構造要素に属 さ ない内
容や、 構造要素の一部分だけに似た内容に対 し て、 ア ク セ シ ビ リ テ ィ プ ロパテ ィ を与え
る こ と がで き ます。
ReversedChars
(非推奨) 文字の並び順が反対にな っ ている右書きの言語のテキス ト を指定 し ます。
ASpan
Clip
マー ク付き切 り 抜き シーケ ン ス を指定 し ます。 こ れは、 ク リ ッ ピ ングパス または表現
モー ド 7 のテキス ト だけ を含むシーケ ン スであ り 、 表示 さ れる グ ラ フ ィ ッ ク または
save( ) / restore( ) を含みません。
14.3 タ グ付き PDF
227
表 14.4 begin_item( ) ・ begin_mc( ) ・ mc_point( ) の標準 ・ 擬似 ・ カ ス タ ム種別一覧
カテゴ リ
タグ
カ ス タ ム要素種別群
ユーザー定
義要素群
tag 引数では タ グ名 Plib_custom_tag を与え る必要があ り ます。 PDF へ書き込まれる実際の タ グ名
を tagname オプ シ ョ ン で与え る必要があ り ます。
1. 要 PDF 1.5 以上
2. 要 PDF 1.6 以上
optlist ア イ テ ムの詳細を指定 し たオプシ ョ ン リ ス ト 。 継承可能な設定はすべて子要素へ
継承 さ れますので、 繰 り 返す必要はあ り ません。 ア イ テ ムのプ ロ パテ ィ は後で変更で き な
いので、 すべて こ こ で設定す る 必要があ り ます。 以下のオプシ ョ ンが使え ます :
> 表 14.5 に従っ た タ グ制御オプシ ョ ン群 :
ActualText ・ Alt ・ artifactsubtype ・ artifacttype ・ Attached ・ BBox ・ ColSpan ・ E ・ index ・
inline ・ Lang ・ parent ・ RowSpan ・ Scope ・ tagname ・ Title
戻り値
ア イ テ ムハン ド ル。 以後のア イ テ ム関連の呼び出 し で使え ます。
詳細
こ の関数は、 タ グ付 き PDF の根本であ る 、 文書の構造ツ リ ーを生成 し ます。 構造ツ リ ー
内におけ る 新規要素の位置は、 parent ・ index オプシ ョ ンで制御す る こ と がで き ます。 構
造要素は任意の階層の入れ子が可能です。擬似要素種別は親ア イ テ ム と し ては許 さ れませ
ん。 通常ア イ テ ムは、 それを開いたページの中に縛 ら れず、 任意の数のページにわた っ て
続け る こ と も で き ます。
スコープ
イ ン ラ イ ン ア イ テ ムの場合はページ、 通常ア イ テ ムの場合は文書 も 。 対応す る end_item( )
と 必ず対に し て呼び出す必要があ り ます。 こ の関数は タ グ付き PDF モー ド でのみ使え ま
す。
表 14.5 begin_item( ) ・ begin_mc( ) ・ mc_point( ) の構造 ・ 擬似 タ グオプ シ ョ ン一覧
オプ シ ョ ン
説明
ActualText
(ハイパーテキス ト 文字列。 PDF 1.5 における ASpan 以外の擬似 タ グでは不可。 TagSuspect では不
可) 内容ア イ テムに対する等価な代替テキス ト 。 何ら かの標準的でない方法で表現 し ている テキ
ス ト 内容に対 し て与え る必要があ り ます。 た と えば合字や、 イ ラ ス ト の飾 り 文字や、 ド ロ ッ プ
キ ャ ッ プ な ど です。 こ のオプ シ ョ ン を PDF 1.4 モー ド で使 う と きは、 inline オプ シ ョ ン を false
に設定する必要があ り ます。
Alt
(ハイパーテキス ト 文字列。 PDF 1.5 における ASpan 以外の擬似 タ グでは不可。 TagSuspect では不
可) 内容ア イ テムに対する代替説明。 図や画像な ど、 テキス ト と し て認識で き ない ものに対 し て
与え る必要があ り ます。 画像に対する代替テキス ト は、 ア ク セシ ビ リ テ ィ のためには必要です。
こ のオプ シ ョ ン を PDF 1.4 モー ド で使 う と きは、 inline オプ シ ョ ン を false に設定する必要があ
り ます。
artifactsubtype
(キーワー ド 。 tag=Artifact かつ artifacttype=Pagination。 PDF 1.7) アーテ ィ フ ァ ク ト の副種
別 : Header ・ Footer ・ Watermark
artifacttype
(キーワー ド 。 tag=Artifact のみ) 内容ア イ テムのアーテ ィ フ ァ ク ト 種別を指定 し ます :
Pagination ・ Layout ・ Page ・ Background (PDF 1.7)
Attached
(キーワー ド の リ ス ト 。 tag=Artifact かつ artifacttype=Pagination または
artifacttype=Background でページ全体の背景アーテ ィ フ ァ ク ト を持つ場合のみ) キーワー ド
Top ・ Bottom ・ Left ・ Right のいずれかを 1 個から 4 個ま で入れた リ ス ト
228
第 14 章 : 文書交換 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
表 14.5 begin_item( ) ・ begin_mc( ) ・ mc_point( ) の構造 ・ 擬似 タ グオプ シ ョ ン一覧
オプ シ ョ ン
説明
BBox
(矩形。 tag=Artifact、 およびすべての表 ・ イ ラ ス ト レーシ ョ ン タ グのみ。
artifacttype=Background な ら必須、 そ う で ないな ら必須ではあ り ませんが、 折 り 返 し のためには
推奨) アーテ ィ フ ァ ク ト の外接枠を、 デ フ ォル ト 座標系で (usercoordinates=false に し ている と
き)、 またはユーザー座標系 (usercoordinates=true に し ている と き) で指定 し ます。 こ のオプ
シ ョ ン を与えない と 、 PDFlib は、 取 り 込んだ画像 ・ PDF ページに対 し て自動的に BBox 項目を作成
し ます。
ColSpan
(整数。 tag=TH ・ TD のみ) 表のセルがわた る列の数
E
(ハイパーテキス ト 文字列。 ASpan 以外の擬似 タ グでは不可。 TagSuspect では不可。 構造 タ グに対
し ては要 PDF 1.5) 内容ア イ テムに対する略語の展開形。 略語や頭字語を説明する ためには与え る
必要があ り ます。 Acrobat の読み上げ機能は、 展開テキス ト を、 た と え明示的な単語区切 り がな く
て も、 独立 し た単語 と し て扱います。
index
(整数。 擬似 タ グ と TagSuspect では不可) 要素を親の中に挿入 し たい位置の番号。 0 から、 その時
点の子の数ま での値を使っ て、 ア イ テムを親の中のその位置に挿入 し ます。 値 -1 を使 う と 、 要素
を最後のア イ テム と し て挿入する こ と がで き ます。 デ フ ォル ト : -1
inline
(論理値。 tag=ASpan と 、 TagSuspect 以外のすべてのイ ン ラ イ ン レ ベル タ グのみ) true にする と 、
内容ア イ テムはイ ン ラ イ ン で書き込まれ、 構造要素は作成 さ れません。 デ フ ォル ト : true
Lang
(文字列。 TagSuspect と 、 ASpan 以外の擬似 タ グでは不可) 内容ア イ テムの言語識別子を、 表 3.1
の lang オプ シ ョ ン で説明 し ている形式で指定 し ます。 これを使 う と 、 文書全体の言語を、 個々の
内容ア イ テムについて上書きする こ と が可能です。
parent
(ア イ テムハン ド ル。 TagSuspect と 擬似 タ グでは不可) 要素の親のア イ テムハン ド ル。 以前に
begin_item( ) に呼び出 し て返 さ れたハン ド ルです。 値 0 にする と 、 構造ツ リ ーのルー ト を参照 し ま
す。 -1 にする と 、 カ レ ン ト ページ上で も っ と も 最近に開かれた要素の親を参照 し ます。 いいかえ
れば、 parent=-1 にする と 、 カ レ ン ト 要素の兄弟を開き ます。 擬似要素種別は親ア イ テム と し ては
許 さ れません。 デ フ ォ ル ト : -1
RowSpan
(整数。 tag=TH ・ TD のみ) 表のセルがわた る表行の数
Scope
(キーワー ド 。 tag=TH のみ。 PDF 1.5 以上) その見出 し セルが、 それを含む表行内の他のセル群に
対する も のなのか、 それ と も それを含む表列内のそれなのか、 あるいはそれを含む表行 と 表列の
両方に対する も のなのかを、 Row ・ Column ・ Both のいずれかのキーワー ド で指定 し ます。
tagname
(名前文字列。 tag=Plib_custom_tag の場合のみ。 その場合は必須) カ ス タ ム タ グの任意の名前。
こ れに対 し て、 標準要素種別へのマ ッ ピ ングが、 begin_document( ) の rolemap オプ シ ョ ン で定義 さ
れている必要があ り ます。 カ ス タ ム要素種別は、 winansi の 127 キ ャ ラ ク タ か、 または任意の
Unicode キ ャ ラ ク タ 群を内容 と するキ ャ ラ ク タ 列に限 られます。 後者の場合には、 対応する UTF-8
列の長 さ が 127 バイ ト を超えない こ と が条件です。
Title
(ハイパーテキス ト 文字列。 イ ン ラ イ ン ・ 擬似 タ グでは禁止) 構造要素の名前
VB RB Sub end_item(id As Long)
C# void end_item(int id)
構造要素やその他の内容ア イ テ ム を閉 じ ます。
id
詳細
ア イ テ ムのハン ド ル。 begin_item( ) で取得 し てお く 必要があ り ます。
イ ン ラ イ ン ア イ テ ムはすべて、 ページ を終え る 前に閉 じ る 必要があ り ます。 通常ア イ テ ム
はすべて、 文書を終え る 前に閉 じ る 必要が あ り ま す。 ただ し 、 メ モ リ 消費を抑え る ため
に、 通常ア イ テ ムはすべて、 完了次第閉 じ る こ と を強 く 推奨 し ます。 ア イ テ ムは、 そのす
14.3 タ グ付き PDF
229
べての子を あ ら か じ め閉 じ てい る と き にのみ、 閉 じ る こ と がで き ます。 ア イ テ ム を閉 じ た
後は、 その親がア ク テ ィ ブな ア イ テ ムにな り ます。
スコープ
イ ン ラ イ ン ア イ テ ムの場合はページ、通常ア イ テ ムの場合は文書 も 。対応する begin_item( )
と 必ず対に し て呼び出す必要があ り ます。 こ の関数は タ グ付き PDF モー ド でのみ使え ま
す。
VB RB Sub activate_item(id As Long)
C# void activate_item(int id)
以前に作成 し た構造要素やその他の内容ア イ テ ム を ア ク テ ィ ブ化 し ます。
id ア イ テ ムのハン ド ル。 begin_item( ) で取得 し てお く 必要があ り ます。 ま だ閉 じ ら れて
いてはいけ ません。 擬似 ・ イ ン ラ イ ン レベルア イ テ ムはア ク テ ィ ブ化で き ません。
詳細 構造要素を い っ たん横に置いてお き 、 後で ま た ア ク テ ィ ブ化す る と い う 方式を採用す る
と 、 多段組の レ イ ア ウ ト や、 本文中に割 り 込む コ ラ ム な ど、 た と え 1 つのページ上に複数
の構造の枝が同時併行 し てい る よ う な場合で も 、 タ グ付き PDF のページ を柔軟に効率 よ
く 作成す る こ と がで き る よ う にな り ます。
スコープ 文書 ・ ページ。 こ の関数は タ グ付 き PDF モー ド でのみ使え ます。
230
第 14 章 : 文書交換 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
14.4 マー ク 付 き内容
VB RB Sub begin_mc(tag As String, optlist As String)
C# void begin_mc(String tag, String optlist)
マー ク 付 き 内容シーケ ン ス を開始 さ せます。 プ ロ パテ ィ 群を与え る こ と も で き ます。
tag マー ク 付 き 内容シーケ ン ス の名前。 以下の タ グが使え ます :
> 表 14.5 のすべての イ ン ラ イ ン レベル ・ 擬似 タ グ群。
> ユーザー定義プ ロ パテ ィ を持つカ ス タ ム項目に対 し ては タ グ Plib_custom を用い る こ と
がで き ます。
> タ グ Plib は予約済みです。
optlist 以下のマー ク 付 き 内容シーケ ン ス オプシ ョ ン群が使え ます :
> 表 14.5 に従っ た標準プ ロ パテ ィ オプシ ョ ン群。
> タ グ Plib_custom ・ Plib では表 14.6 のオプシ ョ ン も 使え ます。
詳細 指定 し た タ グ と プ ロ パテ ィ 群を持っ た マー ク 付 き 内容シーケ ン ス が開始 さ れ ま す。 オプ
シ ョ ン を何 も 与え なければ、 プ ロ パテ ィ を何 も 持たないシーケ ン ス が作成 さ れます。 マー
ク 付 き 内容シーケ ン ス は任意の階層の入れ子が可能です。 begin/end_item( ) ・ begin/end_
mc( ) の入れ子を適切に行 う のはユーザー側の役割です。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ。 対応す る end_mc( ) と 必ず対に し て、 同 じ ペー
ジ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ ス コ ープ内で呼び出す必要があ り ます。
表 14.6 begin_mc( ) ・ mc_point( ) に よ る タ グのユーザー定義プ ロパテ ィ オプ シ ョ ン
オプ シ ョ ン
説明
properties
(オプ シ ョ ン リ ス ト の リ ス ト 。 tag=Plib ・ tag=Plib_custom のみ) 各 リ ス ト は、 ユーザー定義プ ロ
パテ ィ を指定 し た 3 個のオプ シ ョ ン を内容 と し て持ち ます :
key
(文字列。 必須) プ ロパテ ィ の名前。
type
(キーワー ド 。 必須) プ ロパテ ィ 値の型 : boolean ・ name ・ string のいずれか。
value
(type=string な らハイパーテキス ト 文字列、 そ う で ないな ら文字列。 必須) プ ロパ
テ ィ の値。
VB RB Sub end_mc
C# void end_mc( )
も っ と も 最近に開かれたマー ク 付 き 内容シーケ ン ス を終了 さ せます。
詳細 マー ク 付 き 内容シーケ ン ス はすべて、end_page_ext( ) を呼び出す前に閉 じ る 必要があ り ま
す。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ 。 対応す る begin_mc( ) と 必ず対に し て、 同 じ
ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ ス コ ープ内で呼び出す必要があ り ます。
14.4 マー ク付き内容
231
VB RB Sub mc_point(tag As String, optlist As String)
C# void mc_point(String tag, String optlist)
マー ク 付 き 内容ポ イ ン ト を追加 し ます。 プ ロ パテ ィ 群を与え る こ と も で き ます。
tag マー ク 付 き 内容ポ イ ン ト の名前。 以下の タ グが使え ます :
> 表 14.5 のすべての イ ン ラ イ ン レベル ・ 擬似 タ グ群。
> カ ス タ ム項目に対 し ては タ グ Plib_custom を用い る こ と がで き ます。
> タ グ Plib は予約済みです。
optlist 以下のオプシ ョ ンが使え ます :
> 表 14.6 に従っ たマー ク 付 き 内容ポ イ ン ト の標準プ ロ パテ ィ オプシ ョ ン群。
> タ グ Plib_custom ・ Plib では表 14.6 のオプシ ョ ン も 使え ます。
詳細 指定 し た タ グ と プ ロ パテ ィ 群を持っ たマー ク 付き 内容ポ イ ン ト が作成 さ れます。オプシ ョ
ン を何 も 与え なければ、プ ロ パテ ィ を何 も 持た ないマー ク 付 き 内容ポ イ ン ト が作成 さ れま
す。
スコープ ページ ・ パ タ ーン ・ テ ン プ レー ト ・ グ リ フ
232
第 14 章 : 文書交換 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
A 全関数一覧
こ の付章ではすべての API 関数を挙げます。 関数名を ク リ ッ ク す る と その説明へ飛
べます。
一般
get_value
フォン ト
load_font
テキス ト 組版
fit_textline
色
setcolor
set_value
close_font
info_textline
makespotcolor
get_parameter
setfont
add_textflow
load_iccprofile
set_parameter
info_font
create_textflow
begin_pattern
set_option
begin_font
fit_textflow
end_pattern
begin_document
end_font
info_textflow
shading_pattern
end_document
begin_glyph
delete_textflow
shfill
get_buffer
end_glyph
shading
encoding_set_char
begin_page_ext
表組版
add_table_cell
end_page_ext
画像
load_image
suspend_page
テキス ト 出力
set_text_pos
fit_table
info_table
close_image
resume_page
show
delete_table
fit_image
define_layer
xshow
set_layer_dependency
show_xy
begin_layer
continue_text
end_layer
stringwidth
info_image
範囲枠
info_matchbox
begin_template_ext
end_template_ext
add_thumbnail
create_pvf
delete_pvf
get_errnum
get_errmsg
get_apiname
付章 A: 全関数一覧
233
グ ラ フ ィ ッ ク状態
setdash
パス構築
moveto
PDI
open_pdi_document
イ ン タ ラ ク テ ィ ブ機能
create_action
setdashpattern
lineto
close_pdi_document
add_nameddest
setflat
curveto
open_pdi_page
create_annotation
setlinejoin
circle
close_pdi_page
create_field
setlinecap
arc
fit_pdi_page
create_fieldgroup
setmiterlimit
arcn
info_pdi_page
create_bookmark
setlinewidth
circular_arc
process_pdi
add_portfolio_folder
initgraphics
ellipse
save
rect
restore
closepath
create_gstate
add_portfolio_file
pCOS
pcos_get_number
pcos_get_string
マルチ メ デ ィ ア
load_3ddata
set_gstate
パス描画 ・ ク リ ッ ピ ング
stroke
pcos_get_stream
create_3dview
座標変換
translate
closepath_stroke
fill
ブ ロ ッ ク流 し 込み (PPS)
fill_textblock
文書交換
set_info
scale
fill_stroke
fill_imageblock
begin_item
rotate
closepath_fill_stroke
fill_pdfblock
end_item
align
clip
activate_item
skew
endpath
begin_mc
concat
end_mc
setmatrix
パスオブ ジ ェ ク ト
add_path_point
draw_path
info_path
delete_path
234
付章 A: 全関数一覧 (COM ・ .NET ・ REALbasic エデ ィ シ ョ ン)
mc_point
B 全パラ メ タ 一覧
get/set_parameter( ) と get/set_value( ) のすべてのキー ワー ド を こ の付章に挙げます。キー
ワー ド を ク リ ッ ク す る と その説明へ飛べます。
セッ ト アップ
ログ記録
フ ォ ン ト 処理
単純テキス ト 出力
get/set_parameter( ):
errorpolicy
get/set_parameter( ):
logging1
get/set_parameter( ):
Encoding
get/set_parameter( ):
autospace
filenamehandling
logmsg1
FontAFM
charref
license
1
FontPFM
decorationabove
escapesequence
licensefile
バージ ョ ン管理
FontOutline
nodemostamp
get/set_parameter( ):
version1
HostFont
fakebold
resourcefile
get/set_value( ):
glyphcheck
scope
get/set_value( ):
font2
kerning
SearchPath
1
major
string1
fontsize
2
underline・overline・
strikeout
minor
get/set_value( ):
compress
revision2
画像
get/set_value( ):
charspacing
ページ
get/set_parameter( ):
honoriccprofile
renderingintent
horizscaling
italicangle
maxfilehandles
get/set_parameter( ):
topdown
strokewidth
グラ フ ィ ッ ク
get/set_value( ):
pagewidth
pageheight
textrise
get/set_value( ):
ICC プ ロ フ ァ イル
textx2・texty2
underlineposition
currentx2・currenty2
get/set_parameter( ):
ICCProfile
インタ ラクテ ィ ブ
StandardOutputIntent
get/set_parameter( ):
get/set_value( ):
usercoordinates
get/set_parameter( ):
fillrule
ctm_a2・ctm_b2・ctm_c2
2
2
ctm_d ・ctm_e ・ctm_f
2
2
色
icccomponents
get/set_parameter( ):
preserveoldpantonenames
setcolor:iccprofilegray
setcolor:iccprofilergb
spotcolorlookup
setcolor:iccprofilecmyk
leading
textrendering
underlinewidth
wordspacing
PDI
get/set_parameter( ):
pdi1
1. get_parameter( ) のみ
2. get_value( ) のみ
付章 B: 全パラ メ タ 一覧
235
C 全オプ シ ョ ン ・ キーワー ド 一覧
こ の索引は、 すべてのオプシ ョ ン を アルフ ァ ベ ッ ト 順に並べて、 それを使え る 関数を併記
し た も のです。 ページ番号を ク リ ッ ク す る と そ こ へ飛びます。
&
&name
fit_textflow() のオプ シ ョ ン リ ス ト マ ク ロ呼
び出 し 91
3D
3Dactivate
create_annotation() の 193
3Ddata
create_annotation() の 193
3Dinitialview
create_annotation() の 194
3Dinteractive
create_annotation() の 193
3Dshared
create_annotation() の 193
3Dview
create_action() の 186
A
acrobat
info_font() の fontname のサブオプ シ ョ ン
62
action
begin/end_page_ext() の 43
create_annotation() の 194
create_bookmark() の 209
create_field() ・ create_fieldgroup() の 203
end_document() の 34
process_pdi() の 175
actual
info_font() の encoding のオプ シ ョ ン 61
ActualText
begin_item() の 228
addfitbox
fit_textflow() の wrap のサブオプ シ ョ ン 98
adjustmethod
add/create_textflow() の 88
adjustpage
fit_image/pdipage() の 160
advancedlinebreak
add/create_textflow() の 88
align
draw_path() の 113
alignchar
fit/info_textline() の 113
alignment
add/create_textflow() の 87
create_annotation() の 194
fit/info_textline() ・ add/create_textflow()
の leader のサブオプ シ ョ ン 79
in create_field() ・ create_fieldgroup() の 203
alphachannelname
load_image() の 156
alphaisshape
create_gstate() の 127
Alt
begin_item() の 228
angle
info_textline() のキーワー ド 83
angularunit
georeference のサブオプ シ ョ ン 220
annotation
create_action() の targetpath のサブオプ
シ ョ ン 189
annotationtype
add_table_cell() の 102
annotcolor
create_annotation() の 194
antialias
shading() の 151
い く つかの関数の shading オプ シ ョ ンのサ
ブオプ シ ョ ン 123
api
info_font() の encoding のオプ シ ョ ン 61
info_font() の fontname のサブオプ シ ョ ン
62
area
fill in fit_table() の fill のサブオプ シ ョ ン 107
areaunit
georeference のサブオプ シ ョ ン 220
artbox
begin/end_page_ext() の 43
artifactsubtype
begin_item() の 228
artifacttype
begin_item() の 228
ascender
info_font() の 61
info_textline() のキーワー ド 83
load_font() の 55
Attached
begin_item() の 228
attachmentpassword
begin_document() の 34
attachmentpoint
draw_path() の 113
付章 C: 全オプ シ ョ ン一覧
237
attachments
begin/end_document() の 34
autocidfont
load_font() の 55
autosubsetting
load_font() の 55
avoidbreak
add/create_textflow() の 88
avoidemptybegin
add/create_textflow() の 87
B
background
create_3dview() の 216
backgroundcolor
create_field() ・ create_fieldgroup() の 203
barcode
create_field() ・ create_fieldgroup() の 203
basestate
set_layer_dependency() の 50
BBox
begin_item() の 229
begoptlistchar
create_textflow() の 92
beziers
fit_textflow() の wrap のサブオプ シ ョ ン
98
bitreverse
load_image() の 156
bleedbox
begin/end_page_ext() の 43
blendmode
create_gstate() の 127
blind
fit_table() の 106
fit_textflow() の 95
多 く の関数の 113
bordercolor
create_field() ・ create_fieldgroup() の 203
borderstyle
create_annotation() の 194
create_field() ・ create_fieldgroup() の 204
borderwidth
い く つかの関数の 121
bottom
add_nameddest() のオプ シ ョ ン、 create_
action() ・ create_annotation() ・ create_
bookmark() ・ begin/end_document() の
destination オプ シ ョ ンのサブオプ シ ョ ン
190
238
付章 C: 全オプ シ ョ ン一覧
boundingbox
begin/end_page_ext() の viewports オプ
シ ョ ンのサブオプ シ ョ ン 220
info_image() のキーワー ド 161
info_path() のキーワー ド 140
info_pdi_page() のキーワー ド 173
info_table() のキーワー ド 109
info_textflow() のキーワー ド 100
shading() の 151
bounds
georeference のサブオプ シ ョ ン 220
boxes
fit_textflow() の wrap のサブオプ シ ョ ン
98
boxexpand
open_pdi_page() の 170
boxheight
matchbox のサブオプ シ ョ ン 118
boxlinecount
info_textflow() のキーワー ド 100
boxsize
さ ま ざ ま な関数の 113
boxwidth
matchbox のサブオプ シ ョ ン 118
bpc
load_image() の 156
buttonlayout
create_field() ・ create_fieldgroup() の 204
buttonstyle
create_field() ・ create_fieldgroup() の 204
C
calcorder
create_field() ・ create_fieldgroup() の 204
calloutline
create_annotation() の 194
camera2world
create_3dview() の 216
cameradistance
create_3dview() の 217
canonicaldate
create_action() の 186
capheight
info_font() の 61
info_textline() のキーワー ド 83
load_font() の 55
caption
create_field() ・ create_fieldgroup() の 204
create_field() ・ create_fieldgroup() の
barcode オプ シ ョ ンのサブオプ シ ョ ン 208
captiondown
create_field() ・ create_fieldgroup() の 204
captionoffset
create_annotation() の 194
captionposition
create_annotation() の 194
captionrollover
create_field() ・ create_fieldgroup() の 204
cascadedflate
load_image() の 156
centerwindow
begin/end_document() の
viewerpreferences オプ シ ョ ンのサブオプ
シ ョ ン 39
charclass
add/create_textflow() の 90
charmapping
add/create_textflow() の 90
charref
さ ま ざ ま な関数の 75
charspacing
create_field() ・ create_fieldgroup() の 204
さ ま ざ ま な関数の 75
checkwordsplitting
add_table_cell() の 103
children
set_layer_dependency() の 50
cid
info_font() の 60, 61
cidfont
info_font() の 61
circles
fit_textflow() の wrap のサブオプ シ ョ ン 98
circular
add_path_point() のキーワー ド 137
classes
logging パラ メ タ の 31
clip
draw_path() の 139
clipping
matchbox のサブオプ シ ョ ン 118
clippingarea
open_pdi_page() の 171
clippingpath
info_image() のキーワー ド 161
clippingpathname
load_image() の 156
cloneboxes
fit_pdi_page() の 172
open_pdi_page() の 171
close
add_path_point() の 138
draw_path() の 139
fit_textline() の textpath のサブオプ シ ョ ン
82
cloudy
create_annotation() の 194
code
info_font() の 60, 61
codepage
info_font() の 61
codepagelist
info_font() の 61
colorize
load_image() の 156
colorized
begin_font() の 65
colscalegroup
add_table_cell() の 103
ColSpan
begin_item() の 229
colspan
add_table_cell() の 103
colwidth
add_table_cell() の 103
colwidthdefault
fit_table() の 106
comb
create_field() ・ create_fieldgroup() の 204
comment
fit_textflow() のオプ シ ョ ン リ ス ト マ ク ロ定
義 89
commitonselect
create_field() ・ create_fieldgroup() の 204
compatibility
begin_document() の 35
components
load_image() の 156
compress
metadata のサブオプ シ ョ ン 226
contents
create_annotation() の 195
continuetextflow
add_table_cell() の 103
control
add_path_point() のキーワー ド 137
convert
pcos_get_stream() の 178
copy
create_pvf() の 26
copyglobals
load_image() の 156
count
info_matchbox() のキーワー ド 120
coversheet
begin_document() の portfolio のサブオプ
シ ョ ン 213
coversheetfolder
begin_document() の portfolio のサブオプ
シ ョ ン 213
crease
create_3dview() の rendermode のサブオプ
シ ョ ン 218
createdate
create_annotation() の 195
createfittext
fit_textflow() の 95
createlastindent
fit_textflow() の 95
creatematchboxes
fit_textflow() の wrap のサブオプ シ ョ ン 98
createpvf
begin_document() の 35
付章 C: 全オプ シ ョ ン一覧
239
createrichtext
create_annotation() の 195
createwrapbox
matchbox のサブオプ シ ョ ン 118
creatorinfo
define_layer() の 47
cropbox
begin/end_page_ext() の 43
currentvalue
create_field() ・ create_fieldgroup() の 204
curve
add_path_point() のキーワー ド 137
custom
create_annotation() の 195
D
dasharray
add_path_point() の 137
create_annotation() の 195
create_field() ・ create_fieldgroup() の 204
い く つかの関数の 121
さ ま ざ ま な関数の 75
dashphase
add_path_point() の 137
い く つかの関数の 121
dataprep
create_field() ・ create_fieldgroup() の
barcode オプ シ ョ ンのサブオプ シ ョ ン 208
debugshow
fit_table() の 106
decorationabove
fit/info_textline() ・ add/create_textflow()
の 69
さ ま ざ ま な関数の 75
defaultcmyk
begin/end_page_ext() の 43
defaultdir
create_action() の 186
defaultgray
begin/end_page_ext() の 43
defaultrgb
begin/end_page_ext() の 43
defaultstate
define_layer() の 47
defaultvalue
create_field() ・ create_fieldgroup() の 204
defaultvariant
set_layer_dependency() の 50
defaultview
load_3ddata() の 215
depend
set_layer_dependency() の 50
descender
info_font() の 61
info_textline() のキーワー ド 83
load_font() の 55
240
付章 C: 全オプ シ ョ ン一覧
description
add_portfolio_file() の 212
add_portfolio_folder() の 211
begin/end_document() の attachments の
サブオプ シ ョ ン 34
load_iccprofile() の 145
destination
begin/end_document() の 35
create_action() の 186
create_annotation() の 195
create_bookmark() の 209
destname
create_action() の 186
create_action() の targetpath のサブオプ
シ ョ ン 189
create_annotation() の 195
create_bookmark() の 209
end_document() の 35
direction
begin/end_document() の
viewerpreferences オプ シ ョ ンのサブオプ
シ ョ ン 39
disable
create_annotation() の 3Dactivate のサブ
オプ シ ョ ン 200
logging パラ メ タ の 30
disablestate
create_annotation() の 3Dactivate のサブ
オプ シ ョ ン 200
display
create_annotation() の 195
create_field() ・ create_fieldgroup() の 205
displaydoctitle
begin/end_document() の
viewerpreferences オプ シ ョ ンのサブオプ
シ ョ ン 39
displaysystem
georeference のサブオプ シ ョ ン 220
domain
shading() の 151
い く つかの関数の shading オプ シ ョ ンの
サブオプ シ ョ ン 123
doubleadapt
matchbox のサブオプ シ ョ ン 118
doubleoffset
matchbox のサブオプ シ ョ ン 118
down
create_annotation() の template のサブオ
プ シ ョ ン 199
dpi
さ ま ざ ま な関数の 114
drawbottom ・ drawleft ・ drawright ・ drawtop
matchbox のサブオプ シ ョ ン 119
dropcorewidths
load_font() の 55
duplex
begin/end_document() の
viewerpreferences オプ シ ョ ンのサブオプ
シ ョ ン 39
duration
begin/end_page_ext() の 43
create_action() の 186
E
E
begin_item() の 229
ecc
create_field() ・ create_fieldgroup() の
barcode オプ シ ョ ンのサブオプ シ ョ ン 208
editable
create_field() ・ create_fieldgroup() の 205
embedding
load_font() の 55
embedprofile
load_iccprofile() の 145
enable
create_annotation() の 3Dactivate のサブオ
プ シ ョ ン 200
logging パラ メ タ の 30
enablestate
create_annotation() の 3Dactivate のサブオ
プ シ ョ ン 200
encoding
info_font() の 61
load_font() の 56
end
matchbox のサブオプ シ ョ ン 119
い く つかの関数の shading オプ シ ョ ンのサ
ブオプ シ ョ ン 123
endcolor
い く つかの関数の shading オプ シ ョ ンのサ
ブオプ シ ョ ン 123
endingstyles
create_annotation() の 196
endoptlistchar
create_textflow() の 92
endx ・ endy
info_textline() のキーワー ド 83
entire
create_3dview() の background のサブオプ
シ ョ ン 216
epsg
georeference の coords ・ displaycoords サ
ブオプ シ ョ ンのサブオプ シ ョ ン 221
escapesequence
さ ま ざ ま な関数の 75
exceedlimit
matchbox のサブオプ シ ョ ン 119
exchangefillcolors
fit_textflow() の 95
exchangestrokecolors
fit_textflow() の 95
exclude
create_action() の 187
exists
info_matchbox() のキーワー ド 120
exportable
create_field() ・ create_fieldgroup() の 205
exportmethod
create_action() の 187
extend0
shading() の 151
extend1
shading() の 151
F
facecolor
create_3dview() の rendermode のサブオプ
シ ョ ン 218
fakebold
さ ま ざ ま な関数の 76
faked
info_font() の ascender のオプ シ ョ ン 61
info_font() の fontstyle のオプ シ ョ ン 62
fallbackfont
info_font() の 61
fallbackfonts
load_font() の 56
familyname
begin_font() の 65
info_font() の 62
feature
info_font() の 62
featurelist
info_font() の 62
features
さ ま ざ ま な関数の 77
fieldlist
add_portfolio_file() の 212
add_portfolio_folder() の 211
fieldname
add_table_cell() の 103
fieldtype
add_table_cell() の 103
create_fieldgroup() の 205
filename
begin/end_document() の attachments の
サブオプ シ ョ ン 34
begin_template_ext() ・ load_image() ・
open_pdi_page() の reference のサブオプ
シ ョ ン 164
create_action() の 187
create_annotation() の 196
info_image() のキーワー ド 161
logging パラ メ タ の 30
metadata のサブオプ シ ョ ン 226
filenamehandling
set_option() の 22
fileselect
create_field() ・ create_fieldgroup() の 205
付章 C: 全オプ シ ョ ン一覧
241
fill
draw_path() の 138, 139
fit_table() の 107
fillcolor
add_path_point() の 137
create_3dview() の background のサブオプ
シ ョ ン 216
create_annotation() の 196
create_field() ・ create_fieldgroup() の 205
fit/info_textline() ・ add/create_textflow()
の leader のサブオプ シ ョ ン 79
fit_textline() の leader のサブオプ シ ョ ン 81
い く つかの関数の 121
さ ま ざ ま な関数の 76
fillrule
add_path_point() の 137
fit_textflow() の wrap のサブオプ シ ョ ン
98
い く つかの関数の 121
firstbodyrow
info_table() のキーワー ド 109
firstdraw
fit_table() の 107
firstlinedist
fit_textflow() の 95
info_textflow() のキーワー ド 100
firstparalinecount
info_textflow() のキーワー ド 100
fitannotation
add_table_cell() の 103
fitfield
add_table_cell() の 103
fitimage
add_table_cell() の 103
fitmethod
create_annotation() の template のサブオ
プ シ ョ ン 199
create_field() ・ create_fieldgroup() の 205
fit_textflow() の 95
さ ま ざ ま な関数の 114
fitpath
add_table_cell() の 103
fitpdipage
add_table_cell() の 103
fitscalex ・ fitscaley
info_image() のキーワー ド 161
info_pdi_page() のキーワー ド 173
fittext
info_textflow() のキーワー ド 100
fittextflow
add_table_cell() の 104
fittextline
add_table_cell() の 104
fitwindow
begin/end_document() の
viewerpreferences オプ シ ョ ンのサブオプ
シ ョ ン 39
242
付章 C: 全オプ シ ョ ン一覧
fixedleading
add/create_textflow() の 87
flatness
add_path_point() の 137
create_gstate() の 127
い く つかの関数の 121
flush
logging パラ メ タ の 30
font
create_annotation() の 196
create_field() ・ create_fieldgroup() の 205
fit/info_textline() ・ add/create_textflow()
の leader のサブオプ シ ョ ン 79
さ ま ざ ま な関数の 76
fontfile
info_font() の 62
fontname
info_font() の 62
load_font() の 56
fontscale
fit_textflow() の 96
info_textflow() のキーワー ド 100
fontsize
create_annotation() の 196
create_field() ・ create_fieldgroup() の 205
fit/info_textline() ・ add/create_textflow()
の leader のサブオプ シ ョ ン 79
info_font() の ascender のオプ シ ョ ン 61
さ ま ざ ま な関数の 76
fontstyle
create_bookmark() の 209
info_font() の 62
load_font() の 56
fonttype
info_font() の 62
footer
fit_table() の 107
forcebox
open_pdi_page() の 171
full
info_font() の fontname のサブオプ シ ョ ン
62
G
georeference
begin/end_page_ext() の viewports のサブ
オプ シ ョ ン 220
load_image() の 156
glyphcheck
さ ま ざ ま な関数の 75
glyphid
info_font() の 60, 62
glyphname
info_font() の 60, 62
group
add_nameddest() のオプ シ ョ ン、 create_
action() ・ create_annotation() ・ create_
bookmark() ・ begin/end_document() の
destination オプ シ ョ ンのサブオプ シ ョ ン
190
begin/end_document() の labels オプ シ ョ
ン と begin/end_page_ext() の label オプ
シ ョ ンのサブオプ シ ョ ン 38
begin_page_ext() の 43
resume_page() の 46
set_layer_dependency() の 50
groups
begin_document() の 35
gstate
add_path_point() の 137
fit/info_textline() ・ add/create_textflow()
の 96
fit_image/pdi_page() の 160
fit_table() の 107
fit_textline() の shadow のサブオプ シ ョ ン
81
shading_pattern() の 150
さ ま ざ ま なグ ラ フ ィ ッ ク 関数の 121
さ ま ざ ま な テキス ト 関数の 76
H
header
fit_table() の 107
height
begin/end_page_ext() の 43
info_image() のキーワー ド 161
info_matchbox() のキーワー ド 120
info_path() のキーワー ド 140
info_pdi_page() のキーワー ド 173
info_table() のキーワー ド 109
info_textline() のキーワー ド 83
load_image() の 156
hide
create_action() の 187
hidemenubar
begin/end_document() の
viewerpreferences オプ シ ョ ンのサブオプ
シ ョ ン 39
hidetoolbar
begin/end_document() の
viewerpreferences オプ シ ョ ンのサブオプ
シ ョ ン 39
hidewindowui
begin/end_document() の
viewerpreferences オプ シ ョ ンのサブオプ
シ ョ ン 39
highlight
create_annotation() の 196
create_field() ・ create_fieldgroup() の 205
honorclippingpath
load_image() の 156
honoriccprofile
load_image() の 156
horboxgap
info_table() のキーワー ド 109
horizscaling
さ ま ざ ま な関数の 76
horshrinking
info_table() のキーワー ド 109
horshrinklimit
fit_table() の 107
hortabmethod
add/create_textflow() の 87
hostfont
info_font() の 62
hyphenchar
add/create_textflow() の 90
I
iccprofile
info_image() のキーワー ド 161
load_image() の 157
icon
create_field() ・ create_fieldgroup() の 205
icondown
create_field() ・ create_fieldgroup() の 205
iconname
begin_template_ext() の 163
create_annotation() の 196
load_image() ・ begin_template() の 157
open_pdi_page() の 171
iconrollover
create_field() ・ create_fieldgroup() の 206
ignoreclippingpath
fit_image/pdipage() の 160
ignoremask
load_image() の 157
ignoreorientation
fit_image/pdipage() の 160
load_image() の 157
image
add_table_cell() の 104
imagehandle
load_image() の 157
imageheight
info_image() のキーワー ド 161
imagemask
info_image() のキーワー ド 161
imagetype
info_image() のキーワー ド 161
imagewidth
info_image() のキーワー ド 161
index
begin_item() の 229
create_bookmark() の 209
indextype
begin/end_document() の search のサブオ
プ シ ョ ン 37
infomode
open_pdi_document() の 168
initialexportstate
define_layer() の 47
付章 C: 全オプ シ ョ ン一覧
243
initialprintstate
define_layer() の 47
initialsubset
load_font() の 57
initialview
begin_document() の portfolio のサブオプ
シ ョ ン 213
initialviewstate
define_layer() の 47
inittextstate
fit/info_textline() の 81
inline
begin_item() の 229
load_image() の 157
inmemory
begin_document() の 35
open_pdi_document の 168
innerbox
matchbox のサブオプ シ ョ ン 119
inputencoding
metadata のサブオプ シ ョ ン 226
inputformat
metadata のサブオプ シ ョ ン 226
inreplyto
create_annotation() の 196
intent
define_layer() の 47
interiorcolor
create_annotation() の 196
interpolate
load_image() の 157
inversefill
fit_textflow() の wrap のサブオプ シ ョ ン
99
invert
load_image() の 157
invisiblelayers
set_layer_dependency() の 50
ismap
create_action() の 187
italicangle
info_font() の 62
さ ま ざ ま な関数の 76
itemname
create_field() ・ create_fieldgroup() の 206
itemnamelist
create_field() ・ create_fieldgroup() の 206
itemtextlist
create_field() ・ create_fieldgroup() の 206
K
K
load_image() の 157
keepfilter
pcos_get_stream() の 178
keepfont
load_font() の 57
244
付章 C: 全オプ シ ョ ン一覧
keephandles
delete_table() の 110
keepnative
info_font() の 63
load_font() の 57
keepxmp
metadata のサブオプ シ ョ ン 226
kerning
さ ま ざ ま な関数の 76
kerningpairs
info_font() の 63
key
create_annotation() の custom のサブオプ
シ ョ ン 195
L
label
begin/end_page_ext() の 44
labels
begin/end_document() の 35
Lang
begin_item() の 229
lang
begin_document() の 35
language
define_layer() の 48
info_font() の feature のサブオプ シ ョ ン 62
さ ま ざ ま な関数の 78
lastalignment
add/create_textflow() の 87
lastbodyrow
info_table() のキーワー ド 109
lastfont
info_textflow() のキーワー ド 100
lastfontsize
info_textflow() のキーワー ド 100
lastlinedist
fit_textflow() の 96
info_textflow() のキーワー ド 100
lastmark
info_textflow() のキーワー ド 100
lastparalinecount
info_textflow() のキーワー ド 100
layer
begin_template_ext() の 163
create_annotation() の 196
create_field() ・ create_fieldgroup() の 206
load_image() ・ begin_template() の 157
open_pdi_page() の 171
layerstate
create_action() の 187
leader
add/create_textflow() の 87
fit/info_textline() の 81
leaderlength
create_annotation() の 197
leaderoffset
create_annotation() の 197
leading
add/create_textflow() の 87
info_textflow() のキーワー ド 100
left
add_nameddest() のオプ シ ョ ン、 create_
action() ・ create_annotation() ・ create_
bookmark() ・ begin/end_document() の
destination オプ シ ョ ンのサブオプ シ ョ ン
190
leftindent
add/create_textflow() の 87
leftlinex ・ leftliney
info_textflow() のキーワー ド 100
lighting
create_3dview() の 217
line
add_path_point() のキーワー ド 137
create_annotation() の 197
fit_table() の stroke のサブオプ シ ョ ン 108
linearunit
georeference のサブオプ シ ョ ン 221
linecap
add_path_point() の 137
create_gstate() の 127
load_font() の 57
い く つかの関数の 122
linegap
info_font() の 63
lineheight
fit_textflow() の wrap のサブオプ シ ョ ン 99
linejoin
add_path_point() の 137
create_gstate() の 127
い く つかの関数の 122
linespreadlimit
fit_textflow() の 96
linewidth
add_path_point() の 137
create_annotation() の 197
create_field() ・ create_fieldgroup() の 206
create_gstate() の 127
い く つかの関数の 122
listmode
set_layer_dependency() の 50
locale
add/create_textflow() の 89
locked
create_annotation() の 197
create_field() ・ create_fieldgroup() の 206
lockedcontents
create_annotation() の 197
lockmode
create_field() ・ create_fieldgroup() の 206
logging
set_option() の 22
M
macro
fit_textflow() のオプ シ ョ ン リ ス ト マ ク ロ定
義 91
maingid
info_font() の 63
mappoints
georeference のサブオプ シ ョ ン 221
margin
add_table_cell() の 104
matchbox のサブオプ シ ョ ン 119
さ ま ざ ま な関数の 114
marginbottom
add_table_cell() の 104
marginleft
add_table_cell() の 104
marginright
add_table_cell() の 104
margintop
add_table_cell() の 104
mark
add/create_textflow() の 89
mask
load_image() の 158
masked
load_image() の 158
masterpassword
begin_document() の 35
matchbox
add_table_cell() の 104
fit/info_textline() ・ add/create_textflow()
の 89
さ ま ざ ま な関数の 114
maxchar
create_field() ・ create_fieldgroup() の 206
maxcode
info_font() の 63
maxlinelength
info_textflow() のキーワー ド 100
maxlines
fit_textflow() の 96
maxliney
info_textflow() のキーワー ド 100
maxspacing
add/create_textflow() の 89
mediabox
begin/end_page_ext() の 44
menuname
create_action() の 188
metadata 226
begin/end_document() の 36
begin/end_page_ext() の 44
begin_template_ext() の 163
load_font() の 57
load_iccprofile() の 145
load_image() ・ begin_template_ext() の 158
open_pdi_page() の 171
付章 C: 全オプ シ ョ ン一覧
245
metricsfile
info_font() の 63
mimetype
add_portfolio_file() の 212
begin/end_document() の attachments の
サブオプ シ ョ ン 34
create_annotation() の 197
minfontsize
fit_textflow() の 96, 114
mingapwidth
fit_textflow() の 96
minlinecount
add/create_textflow() の 87
minlinelength
info_textflow() のキーワー ド 100
minliney
info_textflow() のキーワー ド 100
minrowheight
add_table_cell() の 104
minspacing
add/create_textflow() の 89
mirroringx ・ mirroringy
info_image() のキーワー ド 161
info_pdi_page() のキーワー ド 173
miterlimit
add_path_point() の 137
create_gstate() の 127
い く つかの関数の 122
moddate
begin/end_document() の 36
modeltree
create_annotation() の 3Dactivate のサブ
オプ シ ョ ン 200
monospace
info_font() の 63
load_font() の 57
move
add_path_point() のキーワー ド 137
movieposter
create_annotation() の 197
multiline
create_field() ・ create_fieldgroup() の 206
multiselect
create_field() ・ create_fieldgroup() の 206
N
N
shading() の 151
い く つかの関数の shading オプ シ ョ ンの
サブオプ シ ョ ン 123
name
add_path_point() の 138
add_portfolio_file() の 212
begin/end_document() の attachments の
サブオプ シ ョ ン 34
begin/end_page_ext() の viewports のサブ
オプ シ ョ ン 220
create_3dview() の 217
create_action() の targetpath のサブオプ
シ ョ ン 189
create_annotation() の 197
info_font() の codepage のサブオプ シ ョ ン
61
info_font() の feature のサブオプ シ ョ ン 62
info_matchbox() のキーワー ド 120
matchbox のサブオプ シ ョ ン 119
namelist
create_action() の 188
newwindow
create_action() の 188
nextline
add/create_textflow() の 89
nextparagraph
add/create_textflow() の 89
nofitlimit
add/create_textflow() の 89
nonfullscreenpagemode
begin/end_document() の
viewerpreferences オプ シ ョ ンのサブオプ
シ ョ ン 39
normal
create_annotation() の template のサブオ
プ シ ョ ン 199
numcids
info_font() の 63
numcopies
begin/end_document() の
viewerpreferences オプ シ ョ ンのサブオプ
シ ョ ン 40
numglyphs
info_font() の 63
numpoints
info_path() の 140
numusableglyphs
info_font() の 63
numusedglyphs
info_font() の 63
O
objectstreams
begin/end_document() の 36
offset
fit_textflow() の wrap の 99
fit_textline() の shadow のサブオプ シ ョ ン
81
offsetbottom ・ offsetleft ・ offsetright ・
offsettop
matchbox のサブオプ シ ョ ン 119
246
付章 C: 全オプ シ ョ ン一覧
onpanel
define_layer() の 48
opacity
create_3dview() の rendermode のサブオプ
シ ョ ン 218
create_annotation() の 197
opacityfill
create_gstate() の 127
opacitystroke
create_gstate() の 127
open
create_annotation() の 197
create_bookmark() の 209
openmode
begin/end_document() の 36
openrect
matchbox のサブオプ シ ョ ン 119
operation
create_action() の 188
OPI-1.3
load_image() ・ begin_template() の 158
OPI-2.0
load_image() ・ begin_template() の 158
optimize
begin_document() の 36
optimizeinvisible
load_font() の 57
orientate
create_annotation() の 197
create_field() ・ create_fieldgroup() の 206
fit_textflow() の 96
さ ま ざ ま な関数の 114
orientation
info_image() のキーワー ド 161
origin
add_path_point() のキーワー ド 137
outlineformat
info_font() の 63
overline
さ ま ざ ま な関数の 76
overprintfill
create_gstate() の 127
overprintmode
create_gstate() の 127
overprintstroke
create_gstate() の 127
P
page
add_nameddest() のオプ シ ョ ン、 create_
action() ・ create_annotation() ・ create_
bookmark() ・ begin/end_document() の
destination オプ シ ョ ンのサブオプ シ ョ ン
190
load_image() の 158
pageelement
define_layer() の 48
pageheight
info_pdi_page() のキーワー ド 173
pagelabel
begin_template_ext() ・ load_image() ・
open_pdi_page() の reference のサブオプ
シ ョ ン 164
pagelayout
begin/end_document() の 36
pagenumber
begin/end_document() の labels オプ シ ョ
ン と begin/end_page_ext() の label オプ
シ ョ ンのサブオプ シ ョ ン 38
begin_page_ext() の 44
begin_template_ext() ・ load_image() ・
open_pdi_page() の reference のサブオプ
シ ョ ン 164
create_action() の targetpath のサブオプ
シ ョ ン 189
resume_page() の 46
pages
begin/end_page_ext() の separationinfo の
サブオプ シ ョ ン 44
pagewidth
info_pdi_page() のキーワー ド 173
parameters
create_action() の 188
parent
begin_item() の 229
create_bookmark() の 210
set_layer_dependency() の 50
parentname
create_annotation() の 197
parindent
add/create_textflow() の 87
passthrough
load_image() の 159
password
add_portfolio_file() の 212
create_field() ・ create_fieldgroup() の 206
open_pdi_document の 168
path
add_table_cell() の 104
fit_textline() の textpath のサブオプ シ ョ ン
82
paths
fit_textflow() の wrap のサブオプ シ ョ ン 99
pdfa
begin_document() の 37
pdfx
begin_document() の 37
pdipage
add_table_cell() の 104
pdiusebox
begin_template_ext() ・ load_image() ・
open_pdi_page() の reference のサブオプ
シ ョ ン 164
open_pdi_page() の 171
付章 C: 全オプ シ ョ ン一覧
247
permissions
begin_document() の 37
perpendiculardir
info_textline() のキーワー ド 83
picktraybypdfsizeDefault Para Font>
begin/end_document() の
viewerpreferences オプ シ ョ ンのサブオプ
シ ョ ン 40
playmode
create_annotation() の 197
polar
add_path_point() の 138
polygons
fit_textflow() の wrap のサブオプ シ ョ ン
99
polylinelist
create_annotation() の 198
popup
create_annotation() の 198
portfolio
end_document() の 37
position
create_annotation() の template のサブオ
プ シ ョ ン 199
create_field() ・ create_fieldgroup() の 206
さ ま ざ ま な関数の 115
predefcmap
info_font() の 63
prefix
begin/end_document() の labels オプ シ ョ
ン と begin/end_page_ext() の label オプ
シ ョ ンのサブオプ シ ョ ン 38
preserveradio
create_action() の 188
printarea
begin/end_document() の
viewerpreferences オプ シ ョ ンのサブオプ
シ ョ ン 40
printclip
begin/end_document() の
viewerpreferences オプ シ ョ ンのサブオプ
シ ョ ン 40
printscaling
begin/end_document() の
viewerpreferences オプ シ ョ ンのサブオプ
シ ョ ン 40
printsubtype
define_layer() の 48
properties
begin_mc() ・ mc_point() の 231
px ・ py
info_path() の 140
R
r0
shading() の 151
r1
shading() の 151
248
付章 C: 全オプ シ ョ ン一覧
radians
add_path_point() の 138
readfeatures
load_font() の 58
readkerning
load_font() の 58
readonly
create_annotation() の 198
create_field() ・ create_fieldgroup() の 206
readshaping
load_font() の 58
rectangle
info_matchbox() のキーワー ド 120
reference
begin_template_ext() の 163, 164
open_pdi_page() の 171
refpoint
fill_*block() の 140
fill_*block() ・ info_path() の 115
relation
create_action() の targetpath のサブオプ
シ ョ ン 189
relative
add_path_point() の 138
remove
logging パラ メ タ の 30
removeunused
define_layer() の 48
rendercolor
create_3dview() の rendermode のサブオ
プ シ ョ ン 218
renderingintent
create_gstate() の 127
load_image() の 159
rendermode
create_3dview() の 217
repair
open_pdi_document の 169
repeatcontent
add_table_cell() の 104
replacedchars
info_textline() の 83
replacementchar
info_font() の 63
load_font() の 58
replyto
create_annotation() の 198
required
create_field() ・ create_fieldgroup() の 206
requiredmode
open_pdi_document の 169
resetfont
add/create_textflow() の 90
resolution
create_field() ・ create_fieldgroup() の
barcode オプ シ ョ ンのサブオプ シ ョ ン 208
resourcefile
set_option() の 23
resx ・ resy
info_image() のキーワー ド 161
return
add/create_textflow() の 90
add_table_cell() の 104
returnatmark
fit_textflow() の 96
returnreason
info_table() のキーワー ド 109
info_textflow() のキーワー ド 100
rewind
fit_table() の 107
fit_textflow() の 97
richtext
create_field() ・ create_fieldgroup() の 207
right
add_nameddest() のオプ シ ョ ン、 create_
action() ・ create_annotation() ・ create_
bookmark() ・ begin/end_document() の
destination オプ シ ョ ンのサブオプ シ ョ ン
190
rightindent
add/create_textflow() の 87
rightlinex ・ rightliney
info_textflow() のキーワー ド 100
righttoleft
info_textline() の 83
rollover
create_annotation() の template のサブオ
プ シ ョ ン 199
rotate
begin/end_page_ext() の 44
create_annotation() の 198
fit_textflow() の 97
fit_textline() の textpath のサブオプ シ ョ ン
82
info_pdi_page() のキーワー ド 173
さ ま ざ ま な関数の 115
round
add_path_point() の 138
draw_path() の 139
fit_textline() の textpath のサブオプ シ ョ ン
82
matchbox のサブオプ シ ョ ン 119
rowcount
info_table() のキーワー ド 109
rowheight
add_table_cell() の 105
rowheightdefault
fit_table() の 108
rowjoingroup
add_table_cell() の 105
rowscalegroup
add_table_cell() の 105
RowSpan
begin_item() の 229
rowspan
add_table_cell() の 105
rowsplit
info_table() のキーワー ド 109
ruler
add/create_textflow() の 88
S
scale
fit_textline() の textpath のサブオプ シ ョ ン
82
さ ま ざ ま な関数の 115
scalex ・ scaley
info_textline() のキーワー ド 83
schema
begin_document() の portfolio のサブオプ
シ ョ ン 214
Scope
begin_item() の 229
script
create_action() の 188
info_font() の feature のサブオプ シ ョ ン 62
load_3ddata() の 215
さ ま ざ ま な関数の 78
scriptlist
info_textline() のキーワー ド 83
scriptname
create_action() の 188
scrollable
create_field() ・ create_fieldgroup() の 207
search
begin/end_document() の 37
searchpath
set_option() の 23
separationinfo
begin_page_ext() の 44
shading
い く つかの関数の 122
shadow
fit/info_textline() の 81
shaping
さ ま ざ ま な関数の 78
shapingsupport
info_font() の 63
showborder
fit_textflow() の 97
さ ま ざ ま な関数の 116
showcaption
create_annotation() の 198
showcells
fit_table() の 108
showcontrols
create_annotation() の 198
showgrid
fit_table() の 108
showtabs
fit_textflow() の 97
shrinklimit
add/create_textflow() の 89
さ ま ざ ま な関数の 116
付章 C: 全オプ シ ョ ン一覧
249
shutdownstrategy
set_option() の 23
singfont
info_font() の 63
skipposttable
load_font() の 58
smoothness
create_gstate() の 127
sort
begin_document() の portfolio のサブオプ
シ ョ ン 214
sorted
create_field() ・ create_fieldgroup() の 207
soundvolume
create_annotation() の 198
space
add/create_textflow() の 90
spellcheck
create_field() ・ create_fieldgroup() の 207
split
begin_document() の portfolio のサブオプ
シ ョ ン 214
info_textflow() のキーワー ド 100
spotcolor
begin/end_page_ext() の separationinfo の
サブオプ シ ョ ン 44
spotname
begin/end_page_ext() の separationinfo の
サブオプ シ ョ ン 44
spreadlimit
add/create_textflow() の 89
stamp
fit/info_textline() の 81
fit_textflow() の 97
さ ま ざ ま な関数の 115
standardfont
info_font() の 63
start
begin/end_document() の labels オプ シ ョ
ン と begin/end_page_ext() の label オプ
シ ョ ンのサブオプ シ ョ ン 38
い く つかの関数の shading オプ シ ョ ンの
サブオプ シ ョ ン 123
startcolor
shading() の 151
startoffset
fit_textline() の textpath のサブオプ シ ョ
ン 82
startx ・ starty
info_textline() のキーワー ド 83
stretch
begin_font() の 65
strikeout
さ ま ざ ま な関数の 76
stringlimit
logging パラ メ タ の 30
strips
info_image() のキーワー ド 161
250
付章 C: 全オプ シ ョ ン一覧
stroke
draw_path() の 138, 139
fit_table() の 108
strokeadjust
create_gstate() の 128
strokecolor
add_path_point() の 137
create_field() ・ create_fieldgroup() の 207
い く つかの関数の 122
さ ま ざ ま な関数の 76
strokewidth
さ ま ざ ま な関数の 76
strongref
begin_template_ext() ・ open_pdi_page()
の reference のサブオプ シ ョ ン 164
style
begin/end_document() の labels オプ シ ョ
ン と begin/end_page_ext() の label オプ
シ ョ ンのサブオプ シ ョ ン 38
subject
create_annotation() の 198
submitemptyfields
create_action() の 189
submitname
create_field() ・ create_fieldgroup() の 207
subpaths
draw_path() の 139
fit_textline() の textpath のサブオプ シ ョ
ン 82
subsetlimit
load_font() の 58
subsetminsize
load_font() の 58
subsetting
load_font() の 58
supplement
info_font() の 63
symbolfont
info_font() の 63
symbology
create_field() ・ create_fieldgroup() の
barcode オプ シ ョ ンのサブオプ シ ョ ン 208
T
tabalignchar
add/create_textflow() の 90
tabalignment
add/create_textflow() の 88
taborder
begin/end_page_ext() の 44
create_field() ・ create_fieldgroup() の 207
tagged
begin_document() の 38
tagname
begin_item() の 229
target
begin_template_ext() ・ load_image() ・
open_pdi_page() の reference のサブオプ
シ ョ ン 165
create_action() の 189
targetbox
info_image() のキーワー ド 162
targetpath
create_action() の 189
create_action() の targetpath のサブオプ
シ ョ ン 189
targetx1 ・ targety1 ・ … ・ targetx4 ・ targety4
info_image() のキーワー ド 162
template
create_annotation() の 199
load_image() の 159
text
fit/info_textline() ・ add/create_textflow()
の leader のサブオプ シ ョ ン 79
textcolor
create_bookmark() の 210
textendx, textendy
info_textflow() のキーワー ド 100
textflow
add_table_cell() の 105
textheight
info_textflow() のキーワー ド 101
textknockout
create_gstate() の 128
textlen
create_textflow() の 93
textpath
fit/info_textline() の 81
textrendering
さ ま ざ ま な関数の 77
textrise
さ ま ざ ま な関数の 77
textwidth
info_textflow() のキーワー ド 101
thumbnail
add_portfolio_file() の 212
add_portfolio_folder() の 211
Title
begin_item() の 229
title
create_annotation() の 199
toggle
create_fieldgroup() の 207
tolerance
fit_textline() の textpath のサブオプ シ ョ ン
82
toolbar
create_annotation() の 3Dactivate のサブオ
プ シ ョ ン 200
tooltip
create_field() ・ create_fieldgroup() の 207
top
add_nameddest() のオプ シ ョ ン、 create_
action() ・ create_annotation() ・ create_
bookmark() ・ begin/end_document() の
destination オプ シ ョ ンのサブオプ シ ョ ン
190
topdown
begin_page_ext() の 44
begin_template_ext() の 163
topindex
create_field() ・ create_fieldgroup() の 207
transition
begin/end_page_ext() の 45
create_action() の 189
transparencygroup
begin/end_page_ext() の 45
begin_template_ext() の 163
open_pdi_page() の 170
trimbox
begin/end_page_ext() の 45
type
add_nameddest() のオプ シ ョ ン、 create_
action() ・ create_annotation() ・ create_
bookmark() ・ begin/end_document() の
destination オプ シ ョ ンのサブオプ シ ョ ン
191
create_3dview() の 217
create_3dview() の rendermode のサブオプ
シ ョ ン 219
create_annotation() の custom のサブオプ
シ ョ ン 195
georeference の coords ・ displaycoords サ
ブオプ シ ョ ンのサブオプ シ ョ ン 221
load_3d() の 216
い く つかの関数の shading オプ シ ョ ンのサ
ブオプ シ ョ ン 123
U
U3Dpath
create_3dview() の 217
underline
さ ま ざ ま な関数の 77
underlineposition
さ ま ざ ま な関数の 77
underlinewidth
さ ま ざ ま な関数の 77
unicode
info_font() の 60, 63
unicodefont
info_font() の 63
unicodemap
load_font() の 58
unisonselect
create_fieldgroup() の 207
unknownchars
info_textline() のキーワー ド 83
unmappedchars
info_textline() のキーワー ド 83
付章 C: 全オプ シ ョ ン一覧
251
unmappedglyphs
info_font() の 63
url
create_action() の 189
urls
load_iccprofile() の 145
usage
load_iccprofile() の 145
used
info_textflow() のキーワー ド 101
usedglyph
info_font() の 63
usematchbox
create_annotation() の 199
usematchboxes
fit_textflow() の wrap のサブオプ シ ョ ン
99
usercoordinates
create_annotation() の 199
create_field() ・ create_fieldgroup() の 207
userpassword
begin_document() の 38
userunit
begin/end_page_ext() の 45
V
value
create_annotation() の custom のサブオプ
シ ョ ン 195
variantname
set_layer_dependency() の 51
vertboxgap
info_table() のキーワー ド 109
vertical
info_font() の 64
load_font() の 58
verticalalign
fit_textflow() の 97
vertshrinking
info_table() のキーワー ド 109
vertshrinklimit
fit_table() の 108
viewarea
begin/end_document() の
viewerpreferences オプ シ ョ ンのサブオプ
シ ョ ン 40
viewclip
begin/end_document() の
viewerpreferences オプ シ ョ ンのサブオプ
シ ョ ン 40
viewports
begin/end_page_ext() の 45
views
load_3ddata() の 216
visiblelayers
set_layer_dependency() の 51
252
付章 C: 全オプ シ ョ ン一覧
W
weight
begin_font() の 65
info_font() の 64
wellformed
info_textline() のキーワー ド 83
width
begin/end_page_ext() の 45
info_image() のキーワー ド 162
info_matchbox() のキーワー ド 120
info_path() のキーワー ド 140
info_pdi_page() のキーワー ド 174
info_table() のキーワー ド 109
info_textline() のキーワー ド 84
load_image() の 159
widthsonly
begin_font() の 66
willembed
info_font() の 64
willsubset
info_font() の 64
windowposition
create_annotation() の 199
windowscale
create_annotation() の 199
wkt
georeference の coords ・ displaycoords サ
ブオプ シ ョ ンのサブオプ シ ョ ン 221
wordspacing
さ ま ざ ま な関数の 77
worldpoints
georeference のサブオプ シ ョ ン 221
worldsystem
georeference のサブオプ シ ョ ン 221
wrap
fit_textflow() の 98
writingdirx ・ writingdiry
info_textline() のキーワー ド 84
X
x1 ・ y1 ・ …x4 ・ y4
info_matchbox() のキーワー ド 120
info_table() のキーワー ド 109
info_textflow() のキーワー ド 101
x1 ・ y1 ・ … ・ x4 ・ y4
info_image() のキーワー ド 162
info_path() のキーワー ド 140
info_pdi_page() のキーワー ド 174
xadvancelist
fit/info_textline() の 82
xheight
info_font() の 64
info_textline() のキーワー ド 84
load_font() の 58
xsymheight
create_field() ・ create_fieldgroup() の
barcode オプ シ ョ ンのサブオプ シ ョ ン 208
xsymwidth
create_field() ・ create_fieldgroup() の
barcode オプ シ ョ ンのサブオプ シ ョ ン 208
xvertline
info_table() のキーワー ド 109
Y
yhorline
info_table() のキーワー ド 109
yposition
fit/info_textline() ・ add/create_textflow()
の leader のサブオプ シ ョ ン 79
Z
zoom
add_nameddest() のオプ シ ョ ン、 create_
action() ・ create_annotation() ・ create_
bookmark() ・ begin/end_document() の
destination オプ シ ョ ンのサブオプ シ ョ ン
191
create_annotation() の 200
define_layer() の 48
付章 C: 全オプ シ ョ ン一覧
253
254
付章 C: 全オプ シ ョ ン一覧
D 改訂履歴
日付
更新点
2011 年 7 月 11 日
> PDFlib 8.0.3 に関する さ ま ざ ま な更新 ・ 修正
2010 年 12 月 09 日
> PDFlib 8.0.2 に関する さ ま ざ ま な更新 ・ 修正
2010 年 9 月 22 日
> PDFlib 8.0.1p7 に関する さ ま ざ ま な更新 ・ 修正
2010 年 4 月 13 日
> PDFlib 8.0.1 に関する さ ま ざ ま な更新 ・ 修正
2009 年 12 月 04 日
> PDFlib 8 に関する更新
2009 年 3 月 13 日
> PDFlib 7.0.4 に関する さ ま ざ ま な更新 ・ 修正
2008 年 2 月 13 日
> PDFlib 7.0.3 に関する さ ま ざ ま な更新 ・ 修正
2007 年 8 月 08 日
> PDFlib 7.0.2 に関する さ ま ざ ま な更新 ・ 修正
2007 年 3 月 09 日
> PDFlib 7.0.1 に関する さ ま ざ ま な更新 ・ 修正
2006 年 10 月 03 日
> PDFlib 7.0.0 に関する更新 と 再構成。 説明書を チ ュ ー ト リ アル と API リ フ ァ レ ン スに分割
2006 年 2 月 21 日
> PDFlib 6.0.3 に関する さ ま ざ ま な更新 ・ 修正。 Ruby の節を追加
2005 年 8 月 09 日
> PDFlib 6.0.2 に関する さ ま ざ ま な更新 ・ 修正
2004 年 11 月 17 日
> PDFlib 6.0.1 に関する小規模な更新 ・ 修正
> 8 章に言語別関数プ ロ ト タ イ プ用新書式導入
> 3 章にハイパーテキス ト の例を追加
2004 年 6 月 18 日
> PDFlib 6 に関する大規模な変更
2004 年 1 月 21 日
> PDFlib 5.0.3 に関する小規模な追加 ・ 修正
2003 年 9 月 15 日
> PDFlib 5.0.2 に関する小規模な追加 ・ 修正。 ブ ロ ッ クの仕様を追加
2003 年 5 月 26 日
> PDFlib 5.0.1 に関する小規模な更新 ・ 修正
2003 年 3 月 26 日
> PDFlib 5.0.0 に関する全面的変更 と 書き直 し
2002 年 6 月 14 日
> PDFlib 4.0.3 に関する小規模な変更 と .NET バイ ンデ ィ ングに関する追加
2002 年 1 月 26 日
> PDFlib 4.0.2 に関する小規模な変更 と IBM eServer エデ ィ シ ョ ンに関する追加
2001 年 5 月 17 日
> PDFlib 4.0.1 に関する小規模な変更
2001 年 4 月 1 日
> PDFlib 4.0.0 の PDI ・ 他機能を解説
2001 年 2 月 5 日
> PDFlib 3.5.0 のテ ン プ レー ト ・ CMYK 機能を解説
2000 年 12 月 22 日
> ColdFusion 解説 と PDFlib 3.03 に関する追加。 COM エデ ィ シ ョ ン を別マニ ュ アルに
2000 年 8 月 8 日
> Delphi 解説 と PDFlib 3.02 に関する小規模な追加
2000 年 7 月 1 日
> PDFlib 3.01 に関する追加 ・ 説明の明瞭化
2000 年 2 月 20 日
> PDFlib 3.0 に関する変更
1999 年 8 月 2 日
> PDFlib 2.01 に関する小規模な変更 ・ 追加
付章 D: 改訂履歴
255
日付
更新点
1999 年 6 月 29 日
> 言語バイ ンデ ィ ン グご と に節を分離
> PDFlib 2.0 に関する追加
1999 年 2 月 1 日
> PDFlib 1.0 に関する小規模な追加 (公開せず)
1998 年 8 月 10 日
> PDFlib 0.7 に関する追加 (1 つのお客様用のみ)
1998 年 7 月 8 日
> PDFlib 0.6 の PDFlib ス ク リ プ テ ィ ングサポー ト を初めて記述
1998 年 2 月 25 日
> PDFlib 0.5 に関 し て説明を若干追加
1997 年 9 月 22 日
> PDFlib 0.4 と 本マニ ュ アルを初めて公開
索引
なお、 パ ラ メ タ と オプシ ョ ンは別途付章に示 し て あ り ます。
A
activate_item() 230
add_nameddest() 190
add_path_point() 137
add_portfolio_folder() 211
add_textflow() 85
add_thumbnail() 166
align() 129
All スポ ッ ト カ ラ ー名 143
alphaisshape gstate オプ シ ョ ン 127
arc() 132
arcn() 133
Author フ ィ ール ド 223
B
begin_document() 33
begin_font() 65
begin_glyph() 66
begin_item() 227
begin_layer() 51
begin_page_ext() 42, 43
begin_pattern() 149
begin_template() 165
begin_template_ext() 163
blendmode gstate オプ シ ョ ン 127
C
circle() 132
circular_arc() 133
clip() 136
close_font() 59
close_image() 159
close_pdi_document() 169
close_pdi_page() 172
closepath() 134
closepath_fill_stroke() 136
closepath_stroke() 135
CMYK カ ラ ー 141
cmyk キーワー ド 14
concat() 130
continue_text() 71
create_3dview() 216
create_action() 185
create_annotation() 192
create_bookmark() 209
create_field() 201
create_fieldgroup() 202
create_gstate() 127
create_pvf() 26
create_textflow() 92
Creator フ ィ ール ド 223
currentx ・ currenty パラ メ タ 131
curveto() 132
D
define_layer() 47
delete_path() 140
delete_pvf() 27
delete_textflow( ) 109
delete_textflow() 101
draw_path() 138
Dublin Core 223
E
ellipse() 133
encoding_set_char() 68
end_document() 33
end_font() 66
end_glyph() 67
end_item() 229
end_layer() 51
end_mc() 231
end_pattern() 149
end_template() 165
end_template_ext() 163
endpath() 136
F
fill() 135
fill_imageblock() 182
fill_pdfblock() 183
fill_stroke() 135
fill_textblock() 180
fit_image() 159
fit_pdi_page() 172
fit_table( ) 105
fit_textflow() 94
fit_textline() 80
float
オプ シ ョ ン リ ス ト の 12
float 値 ・ 整数値
オプ シ ョ ン リ ス ト の 12
G
get_apiname() 29
索引
257
get_buffer() 41
get_errmsg() 28
get_errnum() 28
get_parameter() 21
get_value() 21
gray キーワー ド 14
I
iccbasedcmyk キーワー ド 14
iccbasedgray キーワー ド 14
iccbasedrgb キーワー ド 14
ICC プ ロ フ ァ イル 145
ICC ベースの色 141
info_font() 60
info_image() 160
info_matchbox( ) 120
info_path() 139
info_pdi_page() 173
info_table( ) 108
info_textflow() 99
info_textline() 82
initgraphics() 125
K
Keywords フ ィ ール ド 223
L
lab キーワー ド 14
lineto() 131
load_3ddata() 215
load_font() 53
load_iccprofile() 145
load_image() 154
M
makespotcolor() 143
mc_point() 232
moveto() 131
N
None スポ ッ ト カ ラ ー名 143
O
opacityfill gstate オプ シ ョ ン 127
opacitystroke gstate オプ シ ョ ン 127
open_pdi_document() 167
open_pdi_page() 170
overprintfill gstate オプ シ ョ ン 127
overprintmode gstate オプ シ ョ ン 127
overprintstroke gstate オプ シ ョ ン 127
258
索引
P
pattern キーワー ド 14
pcircle() 132
pcos_get_number() 176
pcos_get_stream() 177
pcos_get_string() 176
pCOS 関数 167, 176
PDF/X
出力イ ン テ ン ト 175
PDFlib Personalization Server 179
PDF 取 り 込み関数 (PDI) 167
PDI (PDF 取 り 込み) 167
PPS (PDFlib Personalization Server) 179
process_pdi() 175
pscale() 129
R
rect() 133
renderingintent gstate オプ シ ョ ン 127
restore() 126
resume_page() 46
RGB カ ラ ー 141
rgb キーワー ド 14
rotate() 129
S
save() 126
scale() 129
set_gstate() 128
set_info() 223
set_layer_dependency() 48
set_option() 22
set_parameter() 22
set_text_pos() 70
set_value() 21
setcolor() 142
setdash() 124
setdashpattern() 124
setflat() 124
setfont() 70
setlinecap() 125
setlinejoin() 124
setlinewidth() 125
setmatrix() 130
setmiterlimit() 125
shading() 150
shading_pattern() 150
shfill() 150
show() 71
show_xy() 71
skew() 130
smoothness gstate オプ シ ョ ン 127
softmask
create_gstate() の 128
spotname キーワー ド 14
spot キーワー ド 14
stringwidth() 72
stroke() 135
strokeadjust gstate オプ シ ョ ン 128
Subject フ ィ ール ド 223
suspend_page() 46
オプ シ ョ ン リ ス ト の 15
か
画像関数 153
関数のス コ ープ 19
T
き
text position 70
textknockout gstate オプ シ ョ ン 128
Title フ ィ ール ド 223
translate() 129
Trapped フ ィ ール ド 223
キーワー ド
オプ シ ョ ン リ ス ト の 12
鏡映 129
曲線
オプ シ ョ ン リ ス ト の 15
く
U
Unichar 値
オプ シ ョ ン リ ス ト の 11
Unicode 範囲
オプ シ ョ ン リ ス ト の 11
W
Web 最適化 PDF 35
X
XMP メ タ デー タ 225
あ
アクシ ョ ンリス ト
オプ シ ョ ン リ ス ト の 14
い
入れ子に さ れたオプ シ ョ ン リ ス ト 8
色
オプ シ ョ ン リ ス ト の 13
色関数 141
イ ンデ ッ ク ス カ ラ ー 142
イ ン ラ イ ンオプ シ ョ ン リ ス ト
テキス ト フ ローの 93
う
上付き 77
え
円
オプ シ ョ ン リ ス ト の 15
お
オブ ジ ェ ク ト ス コ ープ 20
オプ シ ョ ン リ ス ト の文法 8
折れ線
矩形
オプ シ ョ ン リ ス ト の 15
グ ラ フ ィ ッ ク関数 121
グ ラ フ ィ ッ ク状態関数 124
グ リ フ ス コ ープ 20
こ
高速 Web 表示 35
さ
サムネール 166
し
下付き 77
情報フ ィ ール ド 223
す
数値
オプ シ ョ ン リ ス ト の 12
ス コ ープ 19
スポ ッ ト カ ラ ー (分版色空間) 141
せ
整列 (position オプ シ ョ ン) 115
セ ッ ト ア ッ プ関数 24
セル内枠
表セルの 104
線形化 PDF 35
て
テキス ト 関数 53
テキス ト フ ロー : イ ン ラ イ ンオプ シ ョ ン リ ス
ト 93
テ ン プ レー ト ス コ ープ 20
索引
259
と
取 り 込み関数
PDF の 167
は
パスス コ ープ 20
パスの描画 と ク リ ッ ピ ン グ 135
破線パ タ ーン 124
パ タ ーン ス コ ープ 20
パラ メ タ 処理関数 21
反転 129
ハン ド ル
オプ シ ョ ン リ ス ト の 12
ひ
標準ページサイ ズ 42
表の組版 102
ふ
フ ォ ン ト ス コ ープ 20
不可視テキス ト 77
袋文字 77
文書情報フ ィ ール ド 223
文書ス コ ープ 20
文書 ・ ページ関数 33, 42
分版色空間 141
文法
オプ シ ョ ン リ ス ト の 8
へ
ページサイ ズ形式 42
ページ ス コ ープ 20
ベジ エ曲線 132
め
メ タ デー タ 225
も
文字サイ ズ
オプ シ ョ ン リ ス ト の 13
文字列
オプ シ ョ ン リ ス ト の 11
文字列番号 24
よ
横置き モー ド 43
ら
ラ イ セ ン ス 24
260
索引
ラ ス タ 画像関数 153
り
リスト値
オプ シ ョ ン リ ス ト の 8
ろ
ログ記録 30
論理値
オプ シ ョ ン リ ス ト の 12
索引
261
ABC
PDFlib GmbH
Franziska-Bilek-Weg 9
80339 München, Germany
www.pdflib.com
電話 +49 • 89 • 452 33 84-0
FAX +49 • 89 • 452 33 84-99
ご質問がある と きは、 PDFlib メ ー リ ング リ ス ト と
tech.groups.yahoo.com/group/pdflib にある アー カ イ ブ を チ ェ ッ ク し て く だ さ い
ラ イ セ ン ス発行のお問い合わせ
[email protected]
サポー ト
[email protected] (お持ちの ラ イ セ ン ス番号をお書 き く だ さ い)
Fly UP