PDF class

PDF ファイル生成クラス

Super Class

Included Module

Class Method

new([filename])

ファイル filename を開き、PDF クラスを生成して返す。 filename が空文字列か nil の場合、もしくは 引数無しで呼ばれた場合は、生成された PDF の中身は バッファにたくわえられて出力されない。 その場合は get_buffer メソッドでそのバッファの中身を 参照することが出来る。

open([filename])
open([filename]) { ... }

new と同じですが、ブロック付きで呼び出すことが出来ます。 その場合、開いた PDF ファイルを引数にしてブロックを評価した後、 自動的にファイルを閉じます。

Method

一般

close

ファイルを閉じる。

set_info(key, value)

document information を書き込む。 key は INFO_CREATOR, INFO_AUTHOR, INFO_TITLE, INFO_SUBJECT のいずれか。

set_parameter(key, value)

文字列パラメータを設定する。

get_parameter(key, value)

文字列パラメータを返す。

set_value(key, value)

数値パラメータを設定する。

get_value(key, mod)

数値パラメータの値を返す。

begin_page(width, height)

width、高さ height の新しいページを始める。

end_page

ページを終わる。

get_buffer

内部バッファの中身を返す。 コンストラクタで出力ファイルが指定してある場合は例外が発生する。

フォント関係

findfont(fontname, encoding, embed)

フォント fontname を探し、そのフォントの ID を返す。 encoding には ENCODING_BUILTIN, ENCODING_MACROMAN, ENCODING_WINANSI, ENCODING_HOST のいずれか、 あるいはユーザー定義の encoding 名を指定する。 embed には true/false を指定するが、 今はまだ使われない。

setfont(font, size)

使用フォントを ID font、サイズ size のフォントに設定する。

get_font

現在設定されているフォントの ID を返す。

get_fontname

現在設定されているフォントの名前を返す。

get_fontsize

現在設定されているフォントのサイズを返す。

テキスト関係

show(text, [x, y])

文字列 text を書き込む。座標 (x, y) が指定された時は、 そこへ移動してから文字列を書き込む。

continue_text(text)

現在の行に改行を加えて、次の行に文字列 text を書き込む。

set_text_pos(x, y)

テキストを書き込む位置を座標 (x, y) に設定する。

stringwidth(text, font, size)

ID font、サイズ size のフォントを使った場合の 文字列 text の幅を返す。

set_leading(leading)

テキストのベースライン間隔を leading に設定する。

set_text_rise(rise)

テキストのベースラインと描画位置との間の距離を rise に設定する。

set_horiz_scaling(scale)

水平方向の縮尺を scale % に設定する。

set_text_rendering(mode, clipping)

テキストのレンダリングモードを mode に設定する。mode として 指定できるのは FILL_TEXT, STROKE_TEXT, FILL_AND_STROKE_TEXT, INVISIBLE_TEXT のいずれか。clippingtrue を指定すると クリッピングを行う。

set_text_matrix(a, b, c, d, e, f)

テキストの変換行列を (a, b, c, d, e, f) に設定する。

set_char_spacing(space)

文字間隔を space に設定する。

set_word_spacing(space)

単語間の間隔を space に設定する。

show_boxed(text, x, y, width, height, mode, reserved)

グラフィック/設定関係

setdash(black, white)

破線の長さと間隔をそれぞれ blackwhite に設定する。

setpolydash(dash)

破線のパターンを配列 dash で設定する。dash が長さ 0 の 配列である場合は実線になる。

setflat(flat)

flatness parameter を flat に設定する。

setlinejoin(join)

折れ線の角の描画方法を join に設定する。join として 指定できるのは JOIN_MITER, JOIN_ROUND, JOIN_BEVEL のいずれか。

setlinecap(cap)

線の端の描画方法を cap に設定する。cap として指定できるのは CAP_BUTT, CAP_ROUND, CAP_SQUARE のいずれか。

setmiterlimit(limit)

miter limit を limit に設定する。

setlinewidth(width)

線の幅を width に設定する。

set_fillrule(rule)

塗りつぶしの方法を rule に設定する。rule として指定できるのは FILL_WINDING, FILL_EVENODD のいずれか。

save

現在のグラフィック関係の設定を保存する。

restore

グラフィック関係の設定を、一番最近保存したものに戻す。

initgraphics

グラフィック関係の設定を、初期設定に戻す。

translate(x, y)

座標原点を (x, y) に設定する。

scale(x, y)

座標系を水平方向、垂直方向にそれぞれ x, y だけ拡大/縮小する

rotate(phi)

座標系を角度 phi 度だけ回転する。

skew(alpha, beta)
concat(a, b, c, d, e, f)
setmatrix(a, b, c, d, e, f)

グラフィック/path 関係

moveto(x, y)

ポイントを (x, y) に移動する。

lineto(x, y)

現在のポイント位置から (x, y) まで線を引く。

curveto(x1, y1, x2, y2, x3, y3)

現在のポイント位置から (x3, y3) までベジエ曲線を引く。 (x1, y1)、(x2, y2) にはベジエ曲線の controll points を指定する。

circle(x, y, r)

中心座標 (x, y)、半径 r の円を描く。

arc(x, y, r, alpha1, alpha2)

中心座標 (x, y)、半径 r で角度 alpha1 度から alpha2 度までの円弧を反時計回りに描く。

arcn(x, y, r, alpha1, alpha2)

中心座標 (x, y)、半径 r で角度 alpha1 度から alpha2 度までの円弧を時計回りに描く。

rect(x, y, width, height)

左下角の座標が (x, y) で幅 width、高さ height の長方形を描く。

closepath

現在のポイント位置から path の開始点まで線を引いて path を閉じる。

stroke

現在の path を(実際に)描く。

closepath_stroke

現在の path を閉じてから描く。

fill

現在の path で閉じられた平面を塗りつぶす。

fill_stroke

現在の path で閉じられた平面を塗りつぶし、線も描く。

closepath_fill_stroke

現在の path を閉じて、その閉じられた平面を塗りつぶし、線も描く。

endpath

現在の path を(閉じずに)終わらせる。

clip

現在の path を clipping path として用いる。

グラフィック/色関係

setgray_fill(gray)

fill color を値 gray のグレースケールに設定する。

setgray_stroke(gray)

stroke color を値 gray のグレースケールに設定する。

setgray(gray)

fill color、stroke color 両方を値 gray のグレースケールに設定する。

setrgbcolor_fill(red, green, blue)

fill color を (red, green, blue) の RGB 値に設定する。

setrgbcolor_stroke(red, green, blue)

stroke color を (red, green, blue) の RGB 値に 設定する。

setrgbcolor(red, green, blue)

fill color、stroke color 両方を (red, green, blue) の RGB 値に設定する。

setcolor(type, color, c1[, c2, c3, c4])

color"gray" を指定すると値 c1 のグレースケールに、 "rgb" を指定すると (c1, c2, c3) の RGB 値に、 "cmyk" を指定すると (c1, c2, c3, c4) の CMYK 値に、 "spot" を指定すると ID c1、tint c2 のスポットカラーに、 "pattern" を指定すると ID c1 のパターンに設定する。 type には色設定の対象として、 "fill""stroke" あるいは "both" を指定する。

makespotcolor(name, len)
begin_pattern(width, height, xstep, ystep, type)
end_pattern
begin_template(width, height)
end_template

イメージ関係

open_image_file(type, filename, [str_par, int_par])

画像ファイル filename を開いてその画像の ID を返す。 type には画像フォーマットを文字列で指定する。

close_image(image)

ID image の画像を close する。

place_image(image, x, y, scale)

ID image の画像を座標 (x, y) に縮尺率 scale で 描画する。

add_thumbnail(image)

ID image の画像をサムネイルに追加する。

open_CCITT(filename, width, height, reverse, k, black)

CCITT ファイル filename を開いてその画像の ID を返す。

get_image_width(image)

ID image の画像の幅を返す。

get_image_height(image)

ID image の画像の高さを返す。

ハイパーテキスト・リンク関係

add_bookmark(text, parent, open)

現在のページを、text をタイトルとして bookmark に登録し、 その ID を返す。parent に既存の bookmark の ID を指定すると、 ネストした bookmark になり、0 を指定するとトップレベルに登録される。

set_transition(type)

現在のページの transition の種類を type に設定する。type は TRANSIT_NONE, TRANSIT_SPLIT, TRANSIT_BLINDS, TRANSIT_BOX, TRANSIT_WIPE, TRANSIT_DISSOLVE, TRANSIT_GLITTER, TRANSIT_REPLACE のいずれか。

set_duration(duration)

transition の duration を duration に設定する。

attach_file(llx, lly, urx, ury, fname, description, author, mimetype, icon)

file attachment を (llx, lly)、(urx, ury) の 2点を対角とする領域に張り付ける。icon は ICON_GRAPH, ICON_PAPERCLIP, ICON_PUSHPIN, ICON_TAG のいずれか。

add_note(llx, lly, urx, ury, contents, title, icon, open)

タイトル title、内容 contents の注釈を (llx, lly)、(urx, ury) の2点を対角とする領域に張り付ける。icon は ICON_COMMENT, ICON_INSERT, ICON_NOTE, ICON_PARAGRAPH, ICON_NEWPARAGRAPH, ICON_KEY, ICON_HELP のうちのいずれか。 open として false を指定すると最初がアイコン化された 状態になる。

add_pdflink(llx, lly, urx, ury, fname, page, dest)

別の PDF ファイル fnamepage ページへのリンクを張る。

add_launchlink(llx, lly, urx, ury, fname)

別の任意の種類のファイル fname へのリンクを張る。

add_locallink(llx, lly, urx, ury, page, dest)

同じ PDF ドキュメントの page ページへのリンクを張る。

add_weblink(llx, lly, urx, ury, url)

URL url の Web page へのリンクを張る。

set_border_style(style, width)

全ての注釈の border style を style に設定する。 style は BORDER_SOLID, BORDER_DASHED のいずれか。

set_border_color(red, green, blue)

border color を (red, green, blue) の RGB 値に 設定する。

set_border_dash(black, white)

border line の dash style を設定する。引数は setdash と同じ。

PDF::Constants module

PDF クラスに関する定数が定義してある。

MAJORVERSION

PDFlib の major version 番号。

MINORVERSION

PDFlib の minor version 番号。

VERSIONSTRING

PDFlib の version を表す文字列。

A0_WIDTH
A0_HEIGHT
A1_WIDTH
A1_HEIGHT
A2_WIDTH
A2_HEIGHT
A3_WIDTH
A3_HEIGHT
A4_WIDTH
A4_HEIGHT
A5_WIDTH
A5_HEIGHT
A6_WIDTH
A6_HEIGHT
B5_WIDTH
B5_HEIGHT
LETTER_WIDTH
LETTER_HEIGHT
LEGAL_WIDTH
LEGAL_HEIGHT
LEDGER_WIDTH
LEDGER_HEIGHT
P11X17_WIDTH
P11X17_HEIGHT

それぞれの紙の横、縦の長さ