ここにあるライブラリは,小波秀雄が個人的に作って利用しているもの がほとんどで,それ以外に Adobe 社の公開資料である Blue Book に掲載されたものがひとつだけあります。 いずれも著作権は法律の規定に従って小波またはAdobe社にあります。 著作者を詐称しないことだけが,使用に際しての 条件です。それ以外の一切の制限や条件はなく, 自由に使うことが出来ます。
利用,および解読には Postscript プログラミングメモ などを参考にしてください。
線分,矩形,平行四辺形(上下辺水平),方眼を描く — lines.pslib
ライブラリ名次の4つのファイルを同じディレクトリにダウンロードして, gsview で libtest.ps を表示させてください。
libtest.ps を編集するといろいろな描画ができます。 また,ライブラリそのものをいじりたければ lines.pslib, arrows.pslib, string.pslig を 編集しなおしてください。
これらのライブラリを利用するには,次のようなファイルを作成します。
%!PS-Adobe-3.0 EPSF-3.0 %%BoundingBox: 0 0 300 270BoundingBOX の数値は画面の広さの指定です。72 で 1 inch(25.45mm) になります。
(lines.pslib) runこれで lines.pslibで定義されている 手続きを利用することができます。
(lines.pslib) run grid -50 -50 400 400 10 grid
カレントポイントに任意のサイズで英数字,シンボル,日本語の文字列を出力します。 左揃えと中央揃えとがあります。
Shift-JIS 用です。EUC で使うときには,次のように変更してください。
gothic → egothic cgothic → cegothic
(string.pslib) run x y moveto (文字列) 12 mincho
line(線分), box(矩形), parallelo(平行四辺形), grid(方眼), bendto(2本の線分の交点を丸めてつなぐ)
fill/stroke となっているのは,どちらかを使うという意味です。
(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
4つの点を与えると,交点を丸めてつなぎます。 丸めの大きさは 4つめの引数(ここでは 0.2)で調節してください。
p1 p2 p3 p4 0.2 bendto stroke
まっすぐな矢印と, 円弧形の矢印を描画できます。 どの矢印も,鏃が片方に付いたものと,両方に付いたものとがあります。
これらは 小波が作ったものが大半ですが,一部に Blue Book (Adobe 社公開資料) 所載のものが入っています。
arrow (まっすぐな矢印 from "Blue Book"), arcarrow(円弧単方向), arcarrowb(両方向), curvearrow(Bezier 曲線の矢印単方向), curvearrowb(Bezier 曲線の矢印両方向),
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サンプルファイル(下は描画結果)
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サンプルファイル(下はこれによる描画結果)
x0 y0 x1 y1 x2 y2 x3 y3 curvearrow (注意!この矢印は fill 型のものしかない)両矢のタイプ
x0 y0 x1 y1 x2 y2 x3 y3 curvearrowb (注意!この矢印は fill 型のものしかない)サンプルファイル(下はこれによる描画の結果)
図中の p0 等は x0 y0 等の座標の組