curs_print(3x) curs_print(3x)
mcprint
- バイナリデータをプリンタに出力する
#include <curses.h>
int mcprint(char *data, int len);
この関数は、mc5p または mc4 と mc5 機能項目 (ケーパビリティ)
があればそれらを使って、与えられたデータを端末に接続された
プリンタへ送ります。
mcprint のコードには、プリンタのフロー制御をしたり、
プリンタがどれだけバッファを使うかを知る手段がないことに
注意してください。
アプリケーションはプリンタへの出力速度をプリンタの連続的な
処理能力以下に保つ責任があります。(一般的に、プリンタの
公称定格 CPS (文字数/秒) の半分くらい。)
ドットマトリクス・プリンタと毎分 6 ページのレーザプリンタは
一般的に 80 CPS を処理するので、手堅い見積りとしては、
80 字の行を出力するごとに 1 秒間休止することです。
mcprint 関数は、なんらかの理由で書き込み動作を中止したとき
ERR を返します。
この場合、errno には write(2) に関連したエラーか、次のうち
1 つを含むでしょう。
ENODEV
出力をプリンタへ切り替える機能がありません
ENOMEM
プリンタ書き込みバッファのために十分なメモリを
確保できませんでした
mcprint が成功すると、実際にプリンタへ出力した文字数を
返します。
mcprint 呼び出しは ncurses(3x) のために設計されており、
SVr4 curses, 4.4BSD curses, その他 curses の以前の
バージョンにはありません。
mc5p, mc4, mc5 機能項目のパディングは解釈されません。
curses(3x)
curs_print(3x)