まず始めに、プリンタを扱う上で、知っておいた方が良いことをまとめました。
テキストファイルの種類と言うと大げさですが、テキストファイルには、通称 で SJIS, JIS, EUC の 3 種類の漢字コードがあります。
別名 MS 漢字、別名のとおり DOS/Windows 等で主に使用されます。
Internet 上のメールやニュースで主に使用されます。
UNIX マシン上での使用を考えてつくられたコード体系です。
よく、テキストファイルを
cat file > /dev/lp1 |
等とやって、英数字は出るが漢字が出ません、と言った質問を目にします。こ れは、ファイル上の漢字コードをプリンタが理解できないために起こります。 例えば、EUC でエンコードされたファイルは、最上位ビットが立っていれば漢 字となりますが(正確にはチョッチ違いますので、興味がある方は調べて見て下 さい)、それをプリンタが理解できないわけです。そこで、プリンタが理解でき るようにテキストファイルを変換しなければなりません。 変換は、プリンタ制御コードの埋め込みと漢字コードの変換等の処理を行ない ますが、これらはプリンタが、どの制御コードをサポートしているかにより異な ります。次に、国内の主要なプリンタ制御コードを示します。
EPSON が開発したドットプリンタ用の制御コード体系
EPSON が開発したページプリンタ用の制御コード体系 (ESC/Pとは互換性は無い)
Canon のページプリンタ用制御コード体系
NEC PC 型番プリンタの制御コード体系
NEC N 型番プリンタ用の制御コード
実際の変換は、次の章で説明する lpr のフィルタが行なってくれますから、 普段は意識する必要はありませんが、所有のプリンタが、どの制御コードを持っ ているかは * 必ず * 把握しておかねばなりません。
Important: また、ESC/P スーパー(ESC/PS)と言うモードがあるプリンタがあります。これ は ESC/P, ESC/Page(ページプリンタのみ), PCPR201 を自動的に区別するモード となっています。しかし、実際には区別するのでなく、ソフトウェアからモード 移行の制御コードを発行しているのです(希に自動的に区別する場合もあります が)。
ですから、ESC/PS に対応したフィルタを使用しない場合は、プリンタのモー ドを手動で切り替える必要があります。