次のページ 前のページ 目次へ

5. よくある質問に対する答え

Q1. 階段現象 (staircase effect) を防止する方法は?

A1. 階段現象 (訳注:行頭が揃わずに、各行が階段状にギザギザになって印刷されて しまう現象) が起るのは、行の終了として認識する記号がプリンタによって異なる ためです。プリンタのなかには、キャリッジリターン (CR) とラインフィード (LF) のシーケンスで行末が終了すると思っているものがある反面 (DOS スタイル)、 UNIX 系システムで利用されるラインフィードのみのシーケンスで行末が終了する と思っているものもあります。これを解決する最も簡単な方法は、 お使いのプリンタがこれらふたつのスタイルをなんらか方法で切り替えることが できるか否かを確認することです。切り替え方法は 2 種類あり、DIP スイッチを 付け変えるか、プリントジョブ開始時にエスケープシーケンスを送るかのいずれか です。後者の場合には、フィルタを作成する必要があります (Q2 を参照)。

簡単な解決方法は、コマンドラインでフィルタを使うことです。例えば、 次のようにします。

$ cat thesis.txt | todos | lpr

Q2. フィルタとは?

A2. フィルタとは、標準入力 (stdin) からの読み込みを行い、その入力に 何らかの処理を施した上で、標準出力 (stdout) に書き出しを行う プログラムのことです。フィルタは様々な用途で利用されていて、テキストの 整形もそのひとつです。

Q3. マジック フィルタとは?

A3. マジックフィルタとは、ファイルタイプに応じて前処理を行うフィルタの ことです。 例えば、単なるテキストファイルの場合は、通常の方法でそのままファイルを印刷 します。もしファイルが PostScript 等のファイルなら、(ghostscript などの) 別の方法を使って印刷します。マジックフィルタの典型例は、magicfilter と APSfilter です。この種のフィルタを使う際に注意すべきなのは、フィルタ自体を インストールする前に、フィルタが使用するプログラムを予めインストールしておく 必要があるということです。

というのも、magicfilter がインストールされるとき、magicfilter はシステムを 走査して特定のプログラム (例えば ghostscript などのプログラム - これが 見つかると、PostScript データを扱えることが分かるわけです) がインストール されているか確認し、その上で検出したプログラムに基づいてビルドされるように なっています。各種印刷ファイルを全て扱えるようにするには、最低限以下の プログラムがインストールされている必要があるでしょう。

Q4. Windows 印刷システムはどうですか? Linux で動きますか?

A4. 場合によります。Windows 印刷システム (WPS) のコマンドだけしか受け付けない プリンタは、Linux では動きません。WPS に加えてそれ以外のコマンドも受け付ける プリンタ (Canon BJC 610 等) の場合は、WPS フォーマット以外のモードに設定されて いれば Linux でも動きます。それ以外のプリンタ (HP DeskJet 820Cxi/Cse 等) は、Linux では動きません。前述した通り、Linux は Win95 マシンのプリントサーバ として動かすことができます (Samba についての項目を見て下さい)。Win95 には そうしたプリンタのドライバが含まれているからです。

Q5. ひどい! 6 ページ以上の文書を印刷しようとすると、「ファイルが 大きすぎる」というエラーになる。

A5. /etc/printcap ファイルのオプションのひとつに、印刷ファイルの 最大サイズに関するものがあります。初期設定は 1000 ディスクブロック (約 500k 程度?) となっています。PostScript 形式のファイルなどでは、 画像を含めて 6 〜 8 ページで容量オーバーになることがあります。 プリンタ定義の項目に次の行が追加されているかどうか確認してください。

mx=0

印刷ファイルの容量を制限するのは、スプールパーティションが満杯になるのを 防ぐためです。これを防ぐ別の方法として、lpr がスプールディレクトリ から印刷ファイルに対してソフトリンクを張るようにするというのがあります。 その場合は、lpr コマンドを実行するたびに -s オプションを 付けるのを忘れないようにしてください。


次のページ 前のページ 目次へ