Linux

<4.プリンタの設定>

現在(H15年3月30日)、CANON BJC455Jで印刷を試みていますが、完全なところまでいきません。しかし、一部忘れそうなので 忘れないうちに設定過程をまとめておきます。
プリンタの設定には、利用方法、接続方法、PostScript対応か非対応,プリンタのメーカ、種類により 設定方法が異なります。

1.プリンタの種類

1)プリンタの利用方法での分類
a)ローカルプリンタ
パソコンに、直接接続して利用する方法のプリンタ。
b)リモートプリンタ
他のパソコンを経由して利用する方法のプリンタ。
c)ネットワークプリンタ
Ethernetインターフェイスを介し、ネットワークに接続して利用するプリンタ。

2)プリンタの接続方法での分類
a)シリアルインタフェースケーブル接続(RS-232など)
丸い差込口のケーブル
b)パラレルインタフェイスケーブル接続(SCSIなど)
平べったく大きな差込口のケーブル
c)USBインタフェースケーブル接続
平べったい小さな差込口のケーブル。
私の持ってるプリンタの古いものは、シリアルとパラレル接続が可能です。新しいものはパラレルとSUB接続 できます。通信速度は、おおよそUSB>パラレル>シリアルの順のようです。

3)印刷方法での分類
a)レーザープリンタ
b)インクジェットプリンタ

4)PostScript対応か否かでの分類
a)PostScript対応プリンタ
b)PostScript非対応プリンタ
LinuxではPostScript形式が印刷ファイルの形式です。そして、PostScript対応プリンタはPostScript形式ファイルを そのまま印刷できるプリンタです。ただし、PostScript対応プリンタは高価です。
一方、PostScript非対応プリンタ(一般的プリンタ)は安価ですが、PostScript形式では印刷できません。 そこで、PostScriptファイルをPostScript非対応プリンタで印刷できるファイルに変換する必要があります。
GhostScript は PostScriptファイルをPostScript非対応プリンタで印刷できるファイルに変換するソフトです。
この変換に各プリンタ用のフィルタを使います。例えばエプソンのプリンタであればPostScript → ESC/Pに変換フィルタ。 (ESC/Pとはセイコーエプソンのプリンタ用コントローコード体系)

2.プリンタの設定

下の条件でプリンタ設定しました。条件が変われば設定方法も違うでしょう。
1)プリンタの利用方法     ローカルプリンタ
2)プリンタの接続方法     パラレルインタフェイスケーブル接続
3)PostScript非対応プリンタ  インクジェットプリンタの場合
ORCA
「プリンターの設定について」の「Ghostscript(ゴーストスクリプト)」の設定方法を試みたのですが うまくいかなかったので別な方法をとりました。
初めはlprパッケージを利用しましたがうまくいかず、拡張版であるlprngを使いました。
一方、プリンタシステムにはCUPSという方法もあります。将来は、lprではなくCUPSに移行していくとのでは という記述もみられます。

1)カーネルの変更
当初、カーネル2.2.20でプリンタ設定していたのですが、私のパソコンの場合は標準のものでは プリンタを認識できなかったのでカーネル2.4.20に変えています。Debianをインスト−ル する時vanilla,compactなどの他を選択すればよかったのかもしれません。
2)magicfilterとlprngのインストール
lprngはlprの拡張版で、リモートプリンタの設定の場合、lprより簡単にできるようです。
magicfilterは、/etc/printcapを自動的に作成して適切なフィルターを設定してくれるソフトです。
magicfilterとlprngのインストール
#apt-get install lprng
#apt-get install magicfilter

TeX と 印刷
LPRngを使おう
プリンタの設定

プリンタのフィルターは下記を参考にして下さい。
LINUX研究所
CANON BJC-455Jは、bjc600のフィルターが対応しています。

3)magicfilterの実行
#magicfilterconfig

Ful name, 'done' when done        [HP Laser jet 4L]:CANON BJC-445J
Short name,name of the spool directory  [hplj41     ]:bjc455j
Full device path (or remote machine name) [/dev/lp1    ]:/dev/lp0
---------------------------------------------------------------------------
The input filter to the useed      [lje41      ]:bj600
紛らわしいのですが、bjc600でなくbj600です。

後は、Returnキーを押していけばうまくいくはずなのですが、私の場合下記が表示され/etc/printcap は作成されませんでした。
---------------------------------------------------------------------------
1.Stop the running lpr:
#/etc/init.d/lpr stop || /etc/init.d/lprng stop
2.Save the old printcap:
#mv /etc/printcap /etc/printcap.orig
3.Install magicfilter's printcap
#mv /var/tmp/printcap /etc/printcap
4.Start lpr:
#/etc/init.d/lpr start || /etc/init.d/lprng start
---------------------------------------------------------------------------

上記指示に従って
# /etc/init.d/lprng stop
#mv /etc/printcap /etc/printcap.orig
#mv /var/tmp/printcap /etc/printcap
# /etc/init.d/lprng start
この操作で/etc/printcapが作成されます。/var/tmp/printcapに作成されたもの
/var/tmp/printcap
lp|bjc455j|CANON BJC455J:\
:lp=/dev/lp0/:sd=/var/spool/lpd/bjc455j:\
:sh:pw#80:pl#72:px#1440:mx#0:\
:if=/etc/magicfilter/bj600-filter:\
:af=/var/log/lp-acct:lf=/var/log/lp-errs:

4)フィルターの編集
#vi /etc/magicfilter/bj600-filter
---------------------------------------------------------------------------
#PostScript
0 %! filter/usr/bin/gs -q -dSAFER -dNOPAUSE ......
0 \004%! filter/usr/bin/gs -q -dSAFER -dNOPAUSE ......
---------------------------------------------------------------------------
-dKANJIを挿入します。
---------------------------------------------------------------------------
#PostScript
0 %! filter/usr/bin/gs -q -dKANJI -dSAFER -dNOPAUSE ......
0 \004%! filter/usr/bin/gs -q -dKANJI -dSAFER -dNOPAUSE ......
---------------------------------------------------------------------------
#/etc/init.d/lprng restart

「gedit」で作った文字を印刷したら、英数字は印刷できるのですが日本語が文字化けして印刷できません。

5)フォントのため??
英数字が印刷されるということは、日本語フォントがないから??。
Debian 3.0 (woody) リリース情報およびエラッタ
上記に従ってdefoma、gs-cjk-resource、 cmap-adobe-japan1、日本語 TrueType フォントをインストール
「gedit」で文字を印刷したものの同じ様に英数字が印刷されるだけでした。

XーWindowーSystemの初期設定では、TrueType フォントを使うための機能拡張モジュールの「xtt」 が選択されていなかったはずなのでそのためか?。「dpkg-reconfigure xserver-xfree86」でx-window-systemを再設定 、機能拡張モジュールで「xtt」を選択。ところがx-window-systemが壊れてしまいました。

上記ページの二番目の方法。
#apt-get install gsfonts-wadalab-common gsfonts-wadalab-mincho gsfonts-wadalab-gothic
root で
#/usr/sbin/gsfonts-wadalab-config install を実行。
「gv」「gs-ja」もインストール。
# gv でgvを起動し、gs−jaにある/usr/share/gs-ja/7.05vflib/vflib/article9.psを表示
日本国憲法が一部ゴミがあるが表示されて、印刷すれば印刷できます。
「gedit」で作った文字は相変わらず英数字は印刷しますが、日本語は文字化けします。
「a2ps」をインストールして「gedit」で作ったファイルをPSファイルに変換してみるも同じ。
turblinuxのページに「a2psで変換した日本語の文書を印刷できません」 とあったり。
emacsのエディタのHPが多いから、geditよりそちらが情報が多いかな???。

6)うまく設定できなかった状態
1)カーネル2.2.20、lprでプリンタ設定
「ORCA」のプリンタ設定方法に従って設定。設定終了後か再起動後か忘れましたけど、プリンタが暴走。
わけの分からない英数字を印刷し続けました。これが総て印刷されれば正常に動くかと待ったりも したのですが、意味ありませんでした。
「#dmesg」でデバイスの状態を見ると
parport0:PC-style at Ox378 .....
parport0:detected irg 7,......
プリンタが認識されていない。
2)カーネル2.4.20、lprでプリンタ設定
カーネルを2.4へ移行すると
parport0:PC-style at Ox378 .....
parport0:Printer,Canon BJC-455J......
プリンタが認識されたが、印刷できない。
プリンタが認識されていない場合は、vanilla,compactなどの別なものを使うかカーネル変える 必要があります。
3)lprngとmagicfilterで設定。
「ORCA」の設定方式をあきらめて、lprngとmagicfilterで設定。英数字は印刷されるが日本語が 印刷されない。

(H15年3月30日 記)



トップページ

趣味のトップページ

娯楽室の各部屋
Linuxへ戻る

Scriptの解説 Scriptのゲーム Aplletの解説 Aplletのゲーム 物置部屋