So-net無料ブログ作成

水平・垂直線を描く [PostScript]

直線を描く


PostScriptで水平線02-01水平線.png
【サンプルコード】
%!PS-Adobe-3.0 EPSF-3.0 %%BoundingBox: 0 0 240 240 newpath % パスの初期化 20 120 move % 始点へ移動 220 120 linneto % 始点と終点の間にパスを引く stroke % 線を描画


PostScriptで水平線を描いてみましょう。コード内の赤文字のコメントを参照してください。

%!PS-Adobe-3.0 EPSF-3.0はPostscriptのバージョンがPostscript3、EPS3.0フォーマットを表しています。これがないとAdobe Illustratorでは開くことができません。
%%BoundingBox: 0 0 240 240はパス全体を囲む領域の指定で、左下の座標が(0,0) 原点で、右上の座標が(240, 240) の正方形を表しています。デフォルトで単位はポイントです。
上記2行はEPSァイルで必須のコメントです。

newpathは新しいパスを開始する時に使用します。
パスは線を引いたり、塗りつぶし図形を定義するもので、直線と曲線から構成されます。

movetoは始点、linetoは終点を指定します。2つの数値はx座標とy座標です。
直線を引く場合は必ず始点が必要です。

この時点では線は引かれていますが、描画されていません。
strokeを使って初めて描画されます。
strokeを行うとデータは消費されてなくなります。
この線はデフォルトで線幅1ポイント・色が黒となります。

newpathやmoveto、strokeなどはオペレータ(演算子)、またオペレータの前の数値等は演算の対象でオペランドと(被演算子)言います。

02-01-水平線の仕組み.png

【オペレータの説明】
newpathパスを初期化する
x1 y1 moveto始点を(x1,y1)座標値に設定する
x2 y2 lineto線分を(x2,y2)座標値まで追加する
strokeパスに沿って線を描画する

strokeは線幅、色、先端・接続の形状、破線パターン等のパラメータを参照します。 パスを引く時(構築時)には参照されません。 strokeで描画が終了すると、newpathが呼び出されて、パスがクリアされます。 なのでstroke後に新たに線分を追加する場合はnewpathは必要ないということです。


今度は垂直線を描いてみましょう。単に座標を変更するだけです。

02-03垂直線.png
【サンプルコード】
%!PS-Adobe-3.0 EPSF-3.0 %%BoundingBox: 0 0 240 240 newpath % パスの初期化 120 100 move % 始点へ移動 120 -100 linneto % 始点と終点の間にパスを引く stroke % 線を描画

タグ:PostScript
nice!(0)  コメント(0)  トラックバック(0) 

nice! 0

コメント 0

コメントを書く

お名前:[必須]
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

トラックバックの受付は締め切りました