Postscript のためのライブラリ

ここにあるライブラリは,小波秀雄が個人的に作って利用しているもの がほとんどで,それ以外に Adobe 社の公開資料である Blue Book に掲載されたものがひとつだけあります。 いずれも著作権は法律の規定に従って小波またはAdobe社にあります。 著作者を詐称しないことだけが,使用に際しての 条件です。それ以外の一切の制限や条件はなく, 自由に使うことが出来ます。

利用,および解読には Postscript プログラミングメモ などを参考にしてください。


目次:

簡単な例を見る

ライブラリの使い方

文字列を簡単に出力する — string.pslib

ライブラリ名
手続き名
使用上の注意
使い方の例

線分,矩形,平行四辺形(上下辺水平),方眼を描く — lines.pslib

ライブラリ名
手続き名
使い方の例

さまざまの矢印を描く — arrows.pslib

ライブラリ名
手続き名
使い方の例
真っ直ぐな矢印
円弧状の矢印
曲線の矢印

簡単な例を見る

次の4つのファイルを同じディレクトリにダウンロードして, gsview で libtest.ps を表示させてください。

libtest.ps を編集するといろいろな描画ができます。 また,ライブラリそのものをいじりたければ lines.pslib, arrows.pslib, string.pslig を 編集しなおしてください。

ライブラリの使い方

これらのライブラリを利用するには,次のようなファイルを作成します。

文字列を簡単に出力する — string.pslib

カレントポイントに任意のサイズで英数字,シンボル,日本語の文字列を出力します。 左揃えと中央揃えとがあります。

ライブラリ名

string.pslib download

手続き名

gothic, mincho, roman, bold, bolditalic,helvetica, symbol (左揃え)
cgothic, cmincho, croman, cbold, cbolditalic, chelvetica,csymbol (中央揃え)

使用上の注意

Shift-JIS 用です。EUC で使うときには,次のように変更してください。

gothic → egothic
cgothic → cegothic

使い方の例

(string.pslib) run
x y moveto
(文字列) 12 mincho

線分,パス(連結した線分),矩形,平行四辺形(上下辺水平),方眼,円,楕円,ベジエ曲線などを描く — lines.pslib

ライブラリ名

lines.pslib download

手続き名

line(線分), box/rect(矩形), rbox/rrect (矩形,左下隅の座標と幅&高さ), cbox/crect (矩形,中心の座標と幅&高さ), parallelo(平行四辺形), grid(方眼), path(複数の点をつなぐ),bendoto(2つの直線を丸めた交点でつなぐ)

コマンド一覧

Grid x1 y1 x2 y2 sep grid

Line x1 y1 x2 y2 line

Path connected with points x1 y1 x2 y2 x3 y3 ... x_n y_n path stroke

Polygon from points x1 y1 x2 y2 x3 y3 ... x_n y_n path closepath stroke

Filled polygon from points x1 y1 x2 y2 x3 y3 ... x_n y_n path closepath fill

Box x1 y1 x2 y2 box fill/stroke

Box with width and height x1 y1 w h rbox fill/stroke

Box with center coordinates, width and height cx1 cy1 w h cbox fill/stroke

Round-corner rectangle x1 y1 x2 y2 corner_size roundrect

Parallelo x1 y1 x2 y2 dx parallelo fill/stroke

Circle x1 y1 rad circle fill/stroke

Ellipse x1 y1 a b ellipse fill/stroke

Bent curve connecing two lines x1 y1 x2 y2 x3 y3 x4 y4 r bendto % r: 0 - 1

Rectangular lattice x1 y1 x2 y2 width lattice

使い方の例

(lines.pslib) run
x1 y1 x2 y2 line
x1 y1 x2 y2 sep grid
x1 y1 x2 y2 box fill/stroke
x1 y1 x2 y2 dx  dy parallelo fill/stroke

下の平行四辺形は次のような記述で描画できます(u は適当な単位)。

2 u 2 u 10 u 7 u 2 u 1 u parallelo stroke
parallelo.png

4つの点を与えると,交点を丸めてつなぎます。 丸めの大きさは 4つめの引数(ここでは 0.2)で調節してください。

p1 p2 p3 p4 0.2 bendto stroke
bendto.png

さまざまの矢印を描く — arrows.pslib

まっすぐな矢印と, 円弧形の矢印を描画できます。 どの矢印も,鏃が片方に付いたものと,両方に付いたものとがあります。

これらは 小波が作ったものが大半ですが,一部に Blue Book (Adobe 社公開資料) 所載のものが入っています。

ライブラリ名

arrows.pslib download

手続き名

arrow (まっすぐな矢印 from "Blue Book"), arcarrow(円弧単方向), arcarrowb(両方向), curvearrow(Bezier 曲線の矢印単方向), curvearrowb(Bezier 曲線の矢印両方向),

使い方の例

座標などのパラメータの表現

イタリックで書かれた記号 x_from, dx などは座標などの数値を表すパラメータです.

次のパラメータは共通

stemthick :  軸の太さ 
headthick :  鏃の太さ 
headlength:  鏃の長さ 

真っ直ぐな矢印

片矢のタイプ
x_from, y_from: 根元 
x_to, y_to : 先端  
 x_from y_from x_to y_to stemthick headthick headlength arrow fill/stroke
両矢のタイプ
 x_from y_from x_to y_to stemthick headthick headlength arrowb fill/stroke
サンプルファイル(下は描画結果)
arrowsample.png

円弧状の矢印

cx, cy:  円弧の中心の座標 
radius:  円弧の半径 
from_angle: 開始角 
to_angle: 終了角 
片矢のタイプ
 cx cy radius from_angle to_angle stemthick headthick headlength arcarrow fill/stroke
両矢のタイプ
 cx cy radius from_angle to_angle stemthick headthick headlength arcarrowb fill/stroke
サンプルファイル(下はこれによる描画結果)
arcarrowsample.png

曲線の矢印

パラメータの意味については図を参考にしてください。 片矢のタイプ
x0 y0 x1 y1 x2 y2 x3 y3  curvearrow
(注意!この矢印は fill 型のものしかない)
両矢のタイプ
x0 y0 x1 y1 x2 y2 x3 y3  curvearrowb
(注意!この矢印は fill 型のものしかない)
サンプルファイル(下はこれによる描画の結果)
curvedarrowsample.png

図中の p0 等は x0 y0 等の座標の組