etc/pslib for dcl-5

   94/03/31(numaguti) 沼口 敦

* etc/pslib の中身とさしかえてください.
* TOP の Mkinclude に
  
AWK             = /usr/local/bin/gawk
SED             = sed

  を加えてください.
  make install で, AWK の path を必要なら変更して
  $DCLDIR/bin にインストールします.

* 簡単なドキュメント
  * 各コマンドのヘルプは, 引数を help として起動すると出てきます.

** dclps2kdraw : kdraw に変換
 usage : % dclps2kdraw <file>

kdraw で編集可能な形に変換する.
kdraw は特殊なPSファイル(コメントとしてkdraw独自の命令が入っている)
を入出力として使っており, その形に合わせておけば, 
kdraw により編集が可能となる.
dclpsfont によって PS に変換された文字列は変換されない.

** dclpscat : 複数のファイルを1つのファイルに
 usage : % dclpscat <file>...

複数のファイルからなる一連の図を1つのファイルの複数ページの出力の形にする.
2ページめ以降のヘッダを削除し, 連接する.

** dclpsfix : コメント削除, kdraw の後処理 
 usage : % dclpsfix <file>

TeX に組み込んだ時のプリンタのバグに対処するため, BoundigBox 以外の
%% コメントを削除. また, kdraw で編集した dcl.ps由来のファイルで,
そのままだとトーンが汚くなるので後処理を行う.

** dclpsfont : PS フォント変換                   
 usage : % dclpsfont [f=<font id>..] [<option>=<value>...] <file>

dcl で書かれた文字を PS フォントに変換する.
たくさんオプションがあり, フォントが選択できる.
オプションにより, 上付き, 下付き文字にも対応可.
ギリシャ文字も出力される.

** dclpsline : 線のスタイル(join,cap)変更
 usage : % dclpsline [lc=<0,1,2,b,r,p] [lj=<0,1,2,m,r,b>] [ml=<num>] <file>
Options:
+       lj : 0|m: miter join, 1|r: round join, 2|b: bevel join [0]
+       ml : miterlimit for lj=0|m [10]
+       lc : 0|b: butt cap,   1|r: round cap,  2|p: proj. square cap [0]

線のスタイルは, 数字または頭文字で指定.

** dclpsmerge : 複数ページの図を1ページに重ねる  
 usage : % dclpsmerge <file>..

複数のファイルまたは1つのファイルの中の一連の図を
重ね合わせて1枚の図にする.

** dclpsrmcm : バックグラウンド, 外枠の除去      
usage : % dclpsrmcm <file>

バックグラウンド(通常は白)と, 四隅のコーナーマークを削除する.

** dclpsrot : 90度回転                        
usage : % dclpsrot <file>

TeX に取り込むなどのために, 図を 90度回転する.

** dclpsselect : ページの選択               
usage : % dclpsselect [p=<page>] [from=<page>] [to=<page>] <file>
Options:
+        p : select single page [0]
+       to : select range of page to: [0]
+     from : select range of page from: [0]

1つのファイルの中に複数ページのPSが入っている場合,
それからあるページ, またはある範囲のページを選択する. 

** dclpsseparate : ページ毎のファイルに分割      
usage : % dclpsseparate <file>

1つのファイルの中に複数ページのPSが入っている場合,
それを1ページからなる複数のファイルに分割する.
出力は, dcl.001.ps, dcl.002.ps ... となる.

** dclpsunrot : 90度回転undo                  
usage : % dclpsunrot <file>

dclpsrot で90度回転した図を元に戻す.

awk の対応表

                                                      SunOS
                                                    awk   nawk  gawk
     dclps2kdraw : kdraw に変換                      ×    ○   ○
        dclpscat : 複数のファイルを1つのファイルに   ○    ○   ○
        dclpsfix : コメント削除, kdraw の後処理      ○    ○   ○
       dclpsfont : PS フォント変換                   ×    ×   ○
       dclpsline : 線のスタイル(join,cap)変更        ○    ×   ○
      dclpsmerge : 複数ページの図を1ページに重ねる   ○    ○   ○
       dclpsrmcm : バックグラウンド, 外枠の除去      ○    ○   ○
        dclpsrot : 90度回転                          ○    ○   ○
     dclpsselect : ページの選択                      ○    ×   ○
   dclpsseparate : ページ毎のファイルに分割          ×    ○   ○
      dclpsunrot : 90度回転undo                      ×    ○   ○

上記で, awk では help によるヘルプができない.

SUN awk では, sub() コマンドや関数定義などが使えない.
SUN nawk は awk の上位互換とうたっているが, 実は違う.
コマンドラインでパラメータ変数の値が指定できないという致命的な問題点がある.
gawk はほぼ awk, nawk の上位互換.

