Provided by: manpages-ja_0.5.0.0.20221215+dfsg-1_all
名称
grops - groff 用 PostScript ドライバ
書式
grops [ -glmv ] [ -bn ] [ -cn ] [ -wn ] [ -Fdir ] [ -Pprologue ] [ files... ] コマンドラインオプションとパラメータの間に空白を含めることが可能です。
解説
grops は GNU troff の出力を PostScript に変換します。 通常 grops は groff コマンドを -Tps オプション付きで起動した時に起動されます。 (groff のデフォルトです。) ファイルを指定しない と、 grops は標準入力を読みます。 ファイル名 - を指定しても、 grops は標準入力を読みます。 PostScript 出力は標準出力に書きます。 grops を groff から起動する場合、 groff -P によ り、オプションを grops に渡せます。
オプション
-bn 不良なスプーラとプレビュアのための対処をします。 通常、 grops は Document Structuring Conventions version 3.0 を満たす出力を生成します。 値 n は、不良プログ ラムが受理可能な出力を grops が行うように制御します。 値 0 は grops に何も対処しな いようにさせます。 %%BeginDocumentSetup と %%EndDocumentSetup のコメントを生成して はならない場合 1 を加えます; 初期バージョンの TranScript は %%EndProlog コメントと 最初の %%Page コメントとの間で混乱させられましたので、これが必要です。 インクルード されたファイルで %! から始まる行を取り除かねばならない時には 2 を加えます; Sun の pageview プレビュアで必要です。 インクルードされたファイルから %%Page, %%Trailer, %%EndProlog コメントを取り除かねばならない時には 4 を加えます; %%BeginDocument と %%EndDocument のコメントを理解しないスプーラに対して必要です。 PostScript 出力の最 初の行が %!PS-Adobe-3.0 ではなく %!PS-Adobe-2.0 でなければならない時には 8 を加えま す; Sun の Newsprint をページ逆順を要求するプリンタと共に使用する時に必要です。 デ フォルト値は broken n コマンドを DESC ファイルに記述することで指定可能です。 そうでない場合はデフォルト値 は 0 です。 -cn 各ページを n 部ずつ印刷します。 -g ページ長を予測します。 ページ長を予測する PostScript コードを生成します。 イメージ 領域が垂直位置でページの中心に有る時のみ、予測は正しいはずです。 このオプションによ り、変更無しで letter (8.5×11) と A4 の両方に印刷可能な文書を生成可能です。 -l 文書をランドスケープ形式にて印刷します。 -m 文書に対し手動フィードを有効にします。 -Fdir 序文、フォント、デバイス記述ファイルの検索パスの前に、ディレクトリ dir/devname を追 加します。 name はデバイス名であり、通常 ps です。 -Pprologue-file (フォントパス中の) ファイル prologue-file を、デフォルトの序文ファイル prologue の 代りに、序文として使用します。 本オプションは、環境変数 GROPS_PROLOGUE に優先しま す。 -wn 線の太さを M の横幅 (em) の 1000 分の n にて描画します。 -v バージョン番号を表示します。
使用法
R, I, B, BI と呼ばれるスタイルがフォント位置 1 から 4 までにマウントされます。 フォントは ファミリ A, BM, C, H, HN, N, P, T にまとめられ、これらのスタイル中にメンバを持ちます: AR AvantGarde-Book AI AvantGarde-BookOblique AB AvantGarde-Demi ABI AvantGarde-DemiOblique BMR Bookman-Light BMI Bookman-LightItalic BMB Bookman-Demi BMBI Bookman-DemiItalic CR Courier CI Courier-Oblique CB Courier-Bold CBI Courier-BoldOblique HR Helvetica HI Helvetica-Oblique HB Helvetica-Bold HBI Helvetica-BoldOblique HNR Helvetica-Narrow HNI Helvetica-Narrow-Oblique HNB Helvetica-Narrow-Bold HNBI Helvetica-Narrow-BoldOblique NR NewCenturySchlbk-Roman NI NewCenturySchlbk-Italic NB NewCenturySchlbk-Bold NBI NewCenturySchlbk-BoldItalic PR Palatino-Roman PI Palatino-Italic PB Palatino-Bold PBI Palatino-BoldItalic TR Times-Roman TI Times-Italic TB Times-Bold TBI Times-BoldItalic ファミリのメンバではない以下のフォントもあります: ZCMI ZapfChancery-MediumItalic SS および S と呼ばれる特別なフォントも有ります。 Zapf Dingbats は ZD として、逆バージョン の ZapfDingbats (シンボルが逆向き) は ZDR として使用可能です; これらのフォントのほとんどの 文字は名前が無いので、 \N にてアクセスせねばなりません。 grops は \X エスケープシーケンスにより生成された様々な X コマンドを理解します; grops は ps: タグから始まるコマンドのみを翻訳します: \X'ps: exec code' code 中の任意の PostScript コマンドを実行します。 code 実行前に PostScript の現在位 置は \X の位置に設定されます。 原点はページの左上になり、y 座標はページを下ると増加 します。 プロシジャ u は、groff の単位を有効な座標系のものに変更するように定義され ます。 例えば、 .nr x 1i \X'ps: exec \nx u 0 rlineto stroke' は 1 インチ長の水平線を描画します。 code はグラフィックステートを変更し得ます が、ページの終端までしか継続しません。 def と mdef により指定される定義を含む辞書 は、辞書スタックの頭に有るでしょう。 あなたのコードがこの辞書に定義を付加するなら、 \X'ps mdef n' を使用して、そのための空間を割り当てる必要が有ります。 定義はページの 終りまでしか継続しません。 \Y エスケープシーケンスをマクロを名付ける引数と共に使う と、 code を複数行に渡らせることが出来ます。 例えば、 .nr x 1i .de y ps: exec \nx u 0 rlineto stroke .. \Yy は 1 インチ長の水平線を描画する別の方法です。 \X'ps: file name' exec コマンドと同様ですが、コードをファイル name から読みます。 \X'ps: def code' code の PostScript 定義をプロログ部に置きます。 \X コマンドに対し最大 1 定義までで す。 長い定義は複数の \X コマンドに渡り分割できます; 全ての code 引数は、改行で区切 られ、単純に連結されます。 定義は、 exec コマンド実行時に辞書スタックに自動的にプッ シュされる辞書に置かれます。 \Y エスケープシーケンスをマクロを名付ける引数と共に使 うと、 code を複数行に渡らせることが出来ます。 \X'ps: mdef n code' def と同様ですが、 code は n 個まで定義を保持し得ます。 grops は何個の定義を code が含むのかを知る必要が有るので、これらを含む適切な大きさの PostScript 辞書 を生成で きます。 \X'ps: import file llx lly urx ury width [ height ]' PostScript グラフィックスを file からインポートします。 引数 llx, lly, urx, ury は、デフォルトの PostScript 座標系における グラフィックのバウンディングボックスを与 えます; すべて整数である必要が有ります; llx と lly はグラフィックの左下の x y 座標 です; urx と ury はグラフィックの右上の x y 座標です; width と height は整数であ り、groff の単位でグラフィックの幅と高さを与えます。 グラフィックは延び縮みして、こ の幅と高さになり、 グラフィックの左下角は \X コマンドにて関連づけられた場所に位置し ます。 引数 height を省略すると、x y 方向が同等に縮尺され、 指定した幅になります。 \X コマンドの内容は troff が解釈しないことに注意して下さい; グラフィックのための垂 直方向の空白は自動的に付加されず、 width と height の引数にスケーリングインジケータ を付加することは許されません。 PostScript ファイルが Adobe Document Structuring Conventions から成り、 %%BoundingBox コメントを含む場合、 psbb リクエスト実行によ り、groff 中でバウンディングボックスを自動的に取得可能です。 -mps マクロ ( grops が groff コマンドから起動された時には自動的にロードされます) は、 画像を容易にインポート出来るようにする PSPIC マクロをインクルードします。 フォーマットは以下です。 .PSPIC [ -L | -R | -I n ] file [ width [ height ]] file は画像を含むファイル名; width と height は要求する画像の横幅と高さです。 引数 width と height にはスケーリングインジケータを付けても構いません; デフォルトのス ケーリングインジケータは i です。 このマクロは、 画像の幅が width 以下および 画像の 高さが height 以下の範囲において、画像を x y 方向同等で縮尺します。 デフォルト で、画像は水平的に中心に置かれます。 -L および -R はそれぞれ画像を左寄せおよび右寄 せします。 -I オプションは、画像を n だけインデントします。 \X'ps: invis' \X'ps: endinvis' これらの \X コマンドにて囲まれたテキストと描画コマンドは出力を生成しません。 このコ マンドは、 troff の出力を grops で処理する前に見るために有ります; プレビュアがある 文字または構造を表示できない時、 これらの \X コマンドで囲むことにより、 代わりの文 字または構造をプレビュー用に使えます。 例えば、標準の X11 フォントには含まれませんので、 gxditview は \(em 文字を正しく表 示できません; この問題は以下のリクエストを実行することにより解決できます。 .char \(em \X'ps: invis'\ \Z'\v'-.25m'\h'.05m'\D'l .9m 0'\h'.05m''\ \X'ps: endinvis'\(em この場合、 gxditview は \(em 文字を表示できず線を引きますが、 grops は \(em 文字を 印刷し線を無視します。 grops への入力は troff (1) の出力形式である必要が有ります。 これは groff_out (5) に記載し てあります。 また、使用するデバイスに関するデバイス及びフォントの記述ファイルは 仕様に合致 する必要が有ります。 ps デバイスに対して提供されているデバイス及びフォントの記述ファイルは 完全にこの仕様に合致します。 afmtodit(1) を使って AFM ファイルからフォントファイルを生成可 能です。 解像度は、整数値かつ sizescale の 72 倍の倍数である必要が有ります。 ps デバイスは 解像度 72000 および sizescale 1000 を使用します。 デバイス記述ファイルはコマンド paperlength n を含む必要が有ります。これは生成される出力が、ページ長 n マシン単位に適していることを意味 します。 各フォント記述ファイルはコマンド internalname psname を含む必要が有ります。これは PostScript におけるフォント名が psname であることを意味しま す。 また、コマンド encoding enc_file を含む場合も有ります。これは PostScript フォントが enc_file に記載されたエンコード方式で再 度エンコードする必要が有ることを意味します; このファイルは以下の形式の行のシーケンスから成 ります: pschar code ここで pschar は PostScript における文字名であり、 code はエンコードにおける位置を 10 進整 数で表したものです。 フォントファイルにおいて与えられる各文字のコードは、 エンコードファイ ルにおける文字のコードに対応するか、 もしくは PostScript フォントが再度エンコードされてい ない場合は デフォルトエンコードにおけるコードに対応する必要が有ります。 このコードを \N エ スケープシーケンスと共に troff 中で使うことにより文字を選択可能です。 これは、文字が groff での名前を持たなくても可能です。 フォントファイル中の全ての文字は PostScript フォント中に 存在することが 必要であり、 フォントファイル中で与えられる幅は PostScript フォントで使用さ れる幅に マッチする必要が有ります。 grops は、groff における名前が space である文字をブラ ンク (ページ上に何も印を付けない) であるとしています; これにより、効率の良い小さな PostScript 出力が得られます。 grops は文書印刷に必要なダウンロード可能なフォントを自動的にインクルードします。 要求時に grops にインクルードされるダウンロード可能な全てのフォントは /usr/share/groff_font/devps/download に列挙する必要が有ります; これは以下の形式の複数の行 から成ります。 font filename ここで font はフォントの PostScript における名前であり、 filename はフォントを含むファイル の名前です; # から始まる行と空行は無視されます; フィールドはタブもしくは空白により区切りま す; filename の検索は、groff のフォントメトリックファイルの検索と同じ方式で行われます。 download ファイル自身も同じ方式で検索されます。 ダウンロード可能なフォントもしくはインポートされた文書を含むファイルが Adobe Document Structuring Conventions を満たす場合、 grops はファイル中のコメントを十分解釈し、出力もこ れを満たすようにします。 また、 download ファイルに列挙された必要なフォントリソースおよび ファイルリソースを提供します。 また、リソース間の依存関係を扱うことも可能です。 例えば、ダ ウンロード可能な Garamond フォントおよび ダウンロード可能な Garamond-Outline フォントが有 り、 後者が前者に依存すると仮定すると (概して、後者は前者のフォント辞書をコピーして PaintType を変更したものと 定義されます)、PostScript 文書中で Garamond が Garamond-Outline より前に 現れる必要が有ります。 grops がこれを自動的に扱うためには、 Garamond-Outline 用の ダウンロード可能なフォントファイルが Garamond に依存することを Document Structuring Conventions を使用して示します。 例えば以下のように始めることで示します。 %!PS-Adobe-3.0 Resource-Font %%DocumentNeededResources: font Garamond %%EndComments %%IncludeResource: font Garamond この場合、Garamond と Garamond-Outline を download ファイルに列挙する必要が有ります。 ダウ ンロード可能なフォントは、自身の名前を %%DocumentSuppliedResources コメントに含んではなり ません。 grops は %%DocumentFonts コメントを解釈しません。 %%DocumentNeededResources, %%DocumentSuppliedResources, %%IncludeResource, %%BeginResource, %%EndResource コメント (もしくは古い %%DocumentNeededFonts, %%DocumentSuppliedFonts, %%IncludeFont, %%BeginFont, %%EndFont コメント) は使用されます。
環境変数
GROPS_PROLOGUE foo に設定されている場合、 grops は (フォントパス中の) ファイル foo をデフォルトの 序文ファイル prologue の代りに使用します。 オプション -P は、この環境変数に優先しま す。
関連ファイル
/usr/share/groff_font/devps/DESC デバイス記述ファイル。 /usr/share/groff_font/devps/F フォント F のフォント記述ファイル。 /usr/share/groff_font/devps/download ダウンロード可能なフォントのリスト。 /usr/share/groff_font/devps/text.enc テキストフォント用のエンコード方法。 /usr/share/tmac/ps.tmac grops が使用するマクロ; troffrc により自動的にロード されます。 /usr/share/tmac/pspic.tmac PSPIC マクロの定義。 ps.tmac から自動的にロードされ ます。 /usr/share/tmac/psold.tmac 古い PostScript プリンタには存在しない文字 (例えば `eth' や `thorn') の使用を禁止するマクロ。 /usr/share/tmac/tmac.psnew tmac.psold の効果を打ち消すマクロ。 /tmp/gropsXXXXXX 一時ファイル。
関連項目
afmtodit(1), groff(1), troff(1), psbb(1), groff_out(5), groff_font(5), groff_char(7)