Attention Please PJE向け マジック・プリンターフィルター Pack Rel.0.1

1998/01/05 江後田基広 egota@linet.gr.jp

 このドキュメントは、PJE (ならびに Plagiaware) で、バブル・ジェットなど
PostScriptではないプリンタを利用して「PostScriptファイル」、「DVIファイル」
、「ESC/P」などの日本語印刷を手軽に行うための説明を行います。

1. 配布ファイル

 usr/doc/BJ-MagicPrint/README.euc	: 本ドキュメント(EUC)
 usr/doc/BJ-MagicPrint/README.sjs	: 本ドキュメント(ShiftJIS)
 etc/BJ-Magic_printcap		: /etc/printcap 差し替え用ファイル
 usr/local/lib/magic_pf		: Canon-BJ用 マジックフィルター
 usr/local/lib/dvipf			: 汎用 DVIフィルター
 usr/local/lib/gsf_bjc600		: Canoa-BJ用 PostScript フィルター

2. 機種依存

 筆者の持っているプリンタが Canon-BJC430J であるため、Canon-BJシリーズ
の内 BJC-400,410,420,430,600,610,620 ではそのまま動くはずですが、その他
の機種ではいくぶんかの手直しが(少なくとも)
 usr/local/lib/magic_pf		: Canon-BJ用 マジックフィルター
 usr/local/lib/gsf_bjc600		: Canoa-BJ用 PostScript フィルター
で必要となるでしょう。

Linuxに接続したプリンタを有効に利用するための文書が /usr/doc/JF/ 以下に
インストールされていますので詳細は、

(文献-1) /usr/doc/JF/JPprinting-mini-HOWTO.euc.gz
      Japanese Printing mini HOWTO
               Rel.0.0.1a
               1996/08/22
               はね ひでや
         wing@aries.bekkoame.or.jp

(文献-2) /usr/doc/JF/Printing-HOWTO.euc.gz
    The Japanese Version of Linux Printing HOWTO
    Grant Taylor, 
                     v3.10, 10 Sept 1996
      田所 裕之 訳 (tadokoro@ask.or.jp / tadokoro@nms.ac.jp)

(文献-3) /usr/doc/JF/Printing-Usage-HOWTO.euc.gz
    Linux Printing Usage HOWTO
      by Mark Komarinski 
       v1.11, 2 February 1996
     日本語訳:佐藤亮一(GFG02131@niftyserve.or.jp)

などを御覧ください。なを、これら有効な文書の最新版は
JFの部屋から参照してください。

3. 利用方法

3-1. インストール

 root権限を持つユーザで「/」(ルートディレクトリ)で解凍するか、installpkg
コマンドでインストールしてください。

    % su
    # cd / ; pwd
    /
    # tar zxfv BJ-MagicPrint_pje-0.01.tgz
            または、
    # installpkg BJ-MagicPrint_pje-0.01.tgz

3-2. 設定

1) プリンタ・フィルターのインストールを確認してください。

    # cd /usr/local/lib
    # ls -l magic-pf dvipf gsf_bjc600
    -rwxr-xr-x root/root       500 1998-01-05 22:17 usr/local/lib/magic_pf
    -rwxr-xr-x root/root       176 1998-01-05 22:19 usr/local/lib/dvipf
    -rwxr-xr-x root/root       116 1998-01-03 01:17 usr/local/lib/gsf_bjc600

2) /etc/printcap を入れ換えてください。

    # cd /etc ; pwd
    /etc
    # mv printcap printcap.orig
    # ln -fs BJ-Magic_printcap printcap

3) スプールディレクトリ(/var/spool/lpd/lp)を確認し無ければ作成します。

    # cd /var/spool ; pwd
    /var/spool
    # ls -l lpd/lp
    total 2
    -rw-r--r--   1 egota    users          19 Jan  5 15:11 lock
    -rw-rw-r--   1 egota    users          25 Jan  5 15:11 status

    もし、
    /bin/ls: lpd/lp: No such file or directory
    と表示されたら作成してください。
      # mkdir lpd/lp
      # ls -l lpd/lp
      total 0

 □ Canon-BJ400以上の型番のプリンタであれば設定完了です。■

3-3. 調整

 Canon-BJプリンタ以外の方は「PostScript」が印刷できないと思います。
その場合、自分の持っているプリンタのタイプが GhostScript でサポート
されているか確認
      # gs -h
してから、
   usr/local/lib/gsf_bjc600	: Canoa-BJ用 PostScript フィルター
を自分のプリンタ機種用に用意してください。
 これには「(文献-1) /usr/doc/JF/JPprinting-mini-HOWTO.euc.gz」が有効な
手助けをしてくれるはずです。

 そして今、新たにあなたが作成された「XX用 PostScript フィルター」を
   usr/local/lib/magic_pf	: マジックフィルター
に記述し編集してください。

 修正を加える箇所は、最初の部分の一箇所のみです。
-----------------(/usr/local/lib/magic_pf)----------------
1: #!/bin/sh
2: # DVI(TeX) filter
3: DVI_FILTER=/usr/sbin/dvipf
4: # PostScript filter
5: PS_FILTER=/usr/local/lib/gsf_bjc600
6: #
...snip...
-----------------(/usr/local/lib/magic_pf)----------------
 この例では「5:」に 記述された gsf_bjc600 をあなたの
「XX用 PostScript フィルター」に入れ換えるのみです。

 □ 「5:」をコメントアウトし、1行挿入した /usr/local/lib/magic_pf と、
  あなたが作成した「XX用 PostScript フィルター」ファイルをメール頂けると
  幸いです。                               ■

3-4. マジック・プリンタ・フィルター

 本パッケージで利用したマジック・プリンタ・フィルターは、以前

真鍋@豊技大さん が UNIX USER誌(ソフトバンク) で解説されていた物です。
 何時まで公開されているかは存じませんが、現在のところは読めています。

1) fileコマンド でプリントしたいファイルのタイプを調べ、
2) "ESC/P" が含まれていれば /usr/bin/prコマンド
3) "DVI" が含まれていれば、/usr/local/lib/dvipf
3) "PostScript" が含まれていれば、/usr/local/lib/gsf_bjc600
4) それ以外は、/usr/sbin/escpfコマンド
をフィルタに動作します。

 但し、元のフィルタと DVIファイル の印刷に違いがあります。
元々の dvipf では dviprt を利用しているのですが、筆者は dvi2ps で
一度「PostScript形式」に変換してから印刷という無駄な処理となっています。

筆者のスキルの問題ですので、良きアドバイスが頂戴できれば積極的に
採用させて頂きたいと存じます。

4. 印刷テスト

 設定が完了していれば印刷は非常に簡単です。

    % lpr 印刷したいファイル [Enter]
または
    % lpr -Plp 印刷したいファイル [Enter]

とすれば、「日本語まじりテキスト」、「PostScript」、「TeXなどのDVI形式」
を勝手に判断して、標準のプリンタ(通常 /etc/printcap の lp エントリ) で
印刷できるはずです。
 筆者の Canon BJC-430J では、カラー・カートリッジ をプリンタに装着して
カラー印刷も問題なく行えています。

 当然ですが Netscape Communicator で html の印刷もカラーで可能です。

(1)「日本語まじりテキスト」の印刷テスト
  「メール」やら「muleで作成した日本語まじり文」でも良いですし、
 /usr/doc/PJE/00README.euc.gz などでもテストできますよね...:-)

(2)「PostScript形式」の印刷テスト
  /usr/doc/faq/faq/linux-faq.ps.gz はあると思いますが、なければ
    % locate *.ps 
  で探してください。
  Netscape でホームページが表示できるなら、それを印刷しても良い
 ですね...;-)

(3)「TeXなどのDVI形式」の印刷テスト
  /usr/doc/faq/faq/META-FAQ.dvi.gz など如何がでしょう?
 無ければこれも
    % locate *.dvi 
 で探してみましょう。

4-1. 「日本語まじりテキスト」が印刷できない。

 PJE (および Plagiaware) では、はねひでや さん作の escpf が、
/usr/sbin/ディレクトリ以下にインストールされています。このため、
本パッケージでは /usr/sbin/escpf の存在を前提にして magic_pf を
作成しました。
 もしも、/usr/sbin/escpf が存在しない場合には、(文献-1)を参考に
escpf をインストールしてください。
 /usr/sbin/ディレクトリ以外にインストールされている場合には、
/usr/local/.lib/.magic_pf の記述を修正してください。

-----------------(/usr/local/lib/magic_pf)----------------
1: #!/bin/sh
2: # DVI(TeX) filter
3: DVI_FILTER=/usr/sbin/dvipf
4: # PostScript filter
5: PS_FILTER=/usr/local/lib/gsf_bjc600
6: # Text filter
7: TEXT_FILTER=/usr/sbin/escpf
...snip...
-----------------(/usr/local/lib/magic_pf)----------------
例えば、「7: TEXT_FILTER」を修正します。

4-2. 「PostScript形式」が印刷できない。

 Canon-BJシリーズ 以外のプリンタなら、もう一度「3-3. 調整」を参考にして
自分のプリンタにあった GhostScript の設定をしてください。
 繰り返しますが「(文献-1) /usr/doc/JF/JPprinting-mini-HOWTO.euc.gz」を
参考にしてください。

4-3. 「LaTeXなどの DVI形式」が印刷できない。

 「3-4. マジック・プリンタ・フィルター」で解説しましたが、magic_pf では
dvi2psコマンドを利用して、DVI形式 を PostScript形式 に変換して、これを
/usr/local/lib/gsf-bjc600 に渡しています。

(1)「PostScript形式」が印刷できますか?
 もしまだ「PostScript形式」の印刷ができていなければ「DVI形式」の印刷も
できません。「4-2.」に戻って確認してください。

(2)「PostScript形式」は印刷できているのに「DVI形式」が印刷できない?
 PJE (および Plagiaware)では、/usr/local/bin/ディレクトリ以下に dvi2ps
コマンドがインストールされます。
 本パッケージの /usr/local/lib/dvipf はこれを前提にしています。
もし dvi2ps コマンドがインストールされていないと dvipf は動きません。
dvi2psコマンドをインストールしてください。
 /usr/local/bin/ディレクトリ以外に dvips があるなら linkを貼ってしまう
のが手っ取り早いでしょう。/usr/local/bin/ディレクトリが嫌なら 
/usr/local/lib/dvipf を修正してください。

5. 最後に

 お決まりですが、当然 無保証 です。ご自分の責任範囲でご利用ください。

--
 Portable LiNUX World in Japan. ┏━
 EGOTA Motohiro<egota@ylug.org> ┣━┏┓┏┓╋┏┓
 http://www.linet.gr.jp/~egota/ ┗━┗┫┗┛┗┗┻
 mailto:egota@linet.gr.jp      ┗┛
------------------------------------+-------------------------------------
私は皆さんに誇りを持って申し上げます|Name: 江後田 基広 (Motohiro Egota)
が、このレッスンは決して一言たりとも|E-Mail:egota@linet.gr.jp
私の創造の産物などではありません。 | http://www.linet.gr.jp/~egota/
   - Patrick Douglas Crispen -  |in Let'sNote (AL-N1T513J5 +Travel4GB)
PGP public fingerprint:  B9 2A 24 F6 6B 6E 33 1D  7D F2 0F 8D 29 08 7C D8
------------------------------------+-------------------------------------

MailTo: 江後田基広

Portable LiNUX World Home Page<--- ポータブルLinuxの世界