LIPS & ESC/Page & NPDL & RPDL 対応 Ghostscript デバイスドライバ

このソフトウェアは Ghostscript 5.10/5.50 用のデバイスドライバとして作られています。

デバイスドライバとしてラスター版デバイスの lips2p、lips3、bjc880j、lips4、 escpage、lp2000、npdl、rpdl デバイスと、 ベクター版デバイスの lips4v が含まれています。

各機種とデバイスの対応は、LIPS 対応プリンタと出力デバイスESC/Page 対応プリンタと出力デバイスNPDL 対応プリンタと出力デバイスRPDL 対応プリンタと出力デバイス、 を見て下さい。


インデックス


配布条件

このソフトウェアの配布条件は GNU General Public License (GPL) Ver.2 に準じます。

また、このドライバの一時配布先は当面 <URI:http://www.bukka.p.chiba-u.ac.jp/~ohmori/> とします。

このソフトウェアに関しての問い合わせは大森紀人 <URI:mailto:nono@kondara.org>にお願いします。


gdevlips4-1.2.0 との違い

lips3.dev lips4c.dev lips4.devに関して、gdevlips4-1.2.0 での次のような不具合が 直っています。

また次のような機能が追加されています。


epag-3.08 との違い

ESC/Page ドライバ部分は epag-3.08 をベースに若干のバグフィックスをしました。 さらに複数部印刷を効率的に出力できるようにしました。白黒反転印刷に対応しました。 また、epag-3.08 はかなりエラー処理が甘いのでそこにも手を入れてあります。

ESC/Page 用のデバイスが二つに増えているのは Ghostscript の仕様に合わせるためです。 逆にいうと epag-3.08 は Ghostscript の仕様に合っていません。 (例えば LP-1700S では epag-3.08 では -r600 オプションを指定しただけでは 600 dpi 印刷が正常にできません。)


gdevnpdl-1.6.2 との違い

このドライバに含まれる npdl.dev は gdevnpdl-1.6.2 に次のような機能が追加されています。

また、gdevnpdl-1.6.2 の次の機能はこのドライバではサポートされません。

また、解像度のデフォルトが 240 dpi になっているところが異なります。 (gdevnpdl-1.6.2 では 600 dpi)


LIPS 対応プリンタと出力デバイス

LIPS 対応プリンタと出力デバイス名/解像度のリストです。 これは、あくまでも規格上出力できるものをリストしただけで、全てのプリンタで実際に出力できることを確認したわけではないので注意して下さい。

機種デバイス名解像度 (dpi)備考
LBP-B406Slips2p240x240
lips3300x300拡張RAM及び拡張ROMの増設が必要
LBP-B406Dlips2p240x240
lips3300x300拡張RAM及び拡張ROMの増設が必要
LBP-B406Elips3300x300
LBP-B406Glips3300x300
LBP-B406E IIlips3300x300
LBP-B406G IIlips3300x300
LBP-A404lips2p240x240
lips3300x300拡張RAM及び拡張ROMの増設が必要
LBP-B404Elips3300x300
LBP-A404G IIlips3300x300
LBP-A404Flips3300x300
LBP-A405Jr.lips3300x300
LBP-A304Elips3300x300
LBP-A304E IIlips3300x300
LBP-A304G IIlips3300x300
LBP-A309G IIlips3300x300
LBP-310lips3300x300
LBP-320lips3300x300
LBP-320Prolips3300x300
LBP-350lips3300x300
LBP-730lips4300x300, 600x600
lips4v300x300, 600x600MaxiMem 非対応なのでパスクリッピング時のメモリ不足に注意
LBP-720lips4300x300, 600x600
lips4v300x300, 600x600MaxiMem 非対応なのでパスクリッピング時のメモリ不足に注意
LBP-450lips4300x300, 600x600
lips4v300x300, 600x600MaxiMem 非対応なのでパスクリッピング時のメモリ不足に注意
LBP-830lips4300x300, 600x600
lips4v300x300, 600x600MaxiMem 非対応なのでパスクリッピング時のメモリ不足に注意
LBP-430lips4300x300, 600x600
lips4v300x300, 600x600
LBP-930lips4300x300, 600x600
lips4v300x300, 600x600
LBP-750lips4300x300, 600x600
lips4v300x300, 600x600
LBP-740lips4300x300, 600x600
lips4v300x300, 600x600
LBP-930EXlips4300x300, 600x600
lips4v300x300, 600x600
LBP-850lips4300x300, 600x600, 1200x12001200 dpi 時は lips4v のほうがいい?
lips4v300x300, 600x600, 1200x1200
LBP-840lips4300x300, 600x600, 1200x12001200 dpi 時は lips4v のほうがいい?
lips4v300x300, 600x600, 1200x1200
LBP-910lips4300x300, 600x600, 1200x12001200 dpi 時は lips4v のほうがいい?
lips4v300x300, 600x600, 1200x1200
LBP-880lips4300x300, 600x600, 1200x12001200 dpi 時は lips4v のほうがいい?
lips4v300x300, 600x600, 1200x1200
LBP-870lips4300x300, 600x600, 1200x12001200 dpi 時は lips4v のほうがいい?
lips4v300x300, 600x600, 1200x1200
LBP-470lips4300x300, 600x600, 1200x12001200 dpi 時は lips4v のほうがいい?
lips4v300x300, 600x600, 1200x1200
LBP-740elips4300x300, 600x600
lips4v300x300, 600x600
LBP-950lips4300x300, 600x600
lips4v300x300, 600x600
LBP-2030lips4300x300, 600x600カラー出力は -dBitsPerPixel=24 オプションで。(このドライバでは非常に遅いです。)
lips4v300x300, 600x600カラー出力は -dBitsPerPixel=24 オプションで。MaxiMem 非対応なのでパスクリッピング時のメモリ不足に注意
LBP-2160lips4300x300, 600x600カラー出力は -dBitsPerPixel=24 オプションで。(このドライバでは非常に遅いです。)
lips4v300x300, 600x600カラー出力は -dBitsPerPixel=24 オプションで。
LBP-2040lips4300x300, 600x600カラー出力は -dBitsPerPixel=24 オプションで。(このドライバでは非常に遅いです。)
lips4v300x300, 600x600カラー出力は -dBitsPerPixel=24 オプションで。
LBP-2260lips4300x300, 600x600カラー出力は -dBitsPerPixel=24 オプションで。(このドライバでは非常に遅いです。)
lips4v300x300, 600x600カラー出力は -dBitsPerPixel=24 オプションで。
BJC-880J bjc880j360x360カラー出力は -dBitsPerPixel=24 オプションで。(非常に遅いです。)
BJC-680J bjc880j360x360カラー出力は -dBitsPerPixel=24 オプションで。(非常に遅いです。)

ESC/Page 対応プリンタと出力デバイス

ESC/Page 対応プリンタと出力デバイス名/解像度のリストです。 これは、あくまでも規格上出力できるものをリストしただけで、全てのプリンタで実際に出力できることを確認したわけではないので注意して下さい。

機種デバイス名解像度 (dpi)備考
LP-7000lp2000240x240
LP-7000Glp2000240x240
LP-2000lp2000300x300
LP-3000lp2000300x300
LP-1500escpage300x300
LP-1500Sescpage300x300
LP-8000escpage300x300
LP-8000Sescpage300x300
LP-8000SEescpage300x300
LP-8000SXescpage300x300
LP-1000escpage300x300
LP-1600escpage300x300, 600x600
LP-1700escpage300x300, 600x600
LP-1700Sescpage300x300, 600x600
LP-1800escpage300x300, 600x600
LP-800escpage300x300, 600x600
LP-8200escpage300x300, 600x600
LP-8300escpage300x300, 600x600
LP-8300Sescpage300x300, 600x600
LP-8400escpage300x300, 600x600
LP-8500escpage300x300, 600x600
LP-8600escpage300x300, 600x600
LP-9000escpage300x300, 600x600
LP-9200escpage300x300, 600x600
LP-9200Sescpage300x300, 600x600
LP-9200SXescpage300x300, 600x600
LP-9300escpage300x300, 600x600
LP-9600escpage300x300, 600x600
LP-9600Sescpage300x300, 600x600
LP-8600FX/FXNescpage300x300, 600x600
LP-8400FX/FXNescpage300x300, 600x600
LP-8300Fescpage300x300, 600x600
LP-1900/Nescpage300x300, 600x600
LP-8000Cescpage300x300, 600x600カラー出力はできません
LP-8200Cescpage300x300, 600x600カラー出力はできません

NPDL 対応プリンタと出力デバイス

NPDL 対応プリンタと出力デバイス名/解像度のリストです。 これは、あくまでも規格上出力できるものをリストしただけで、全てのプリンタで実際に出力できることを確認したわけではないので注意して下さい。

機種デバイス名解像度 (dpi)備考
PC-PR1000npdl240x240白黒反転印刷(-dNegativePrint)に非対応
PC-PR2000npdl240x240白黒反転印刷(-dNegativePrint)に非対応
PC-PR1000/2npdl240x240白黒反転印刷(-dNegativePrint)に非対応
PC-PR2000/2npdl240x240
PC-PR2000/4npdl400x400
PC-PR4000/4npdl400x400
PC-PR3000PS/4Fnpdl400x400PostScript にも対応
PC-PR1000/4npdl400x400
PC-PR3000PS/4npdl400x400PostScript にも対応
PC-PR4000E/4npdl400x400
PC-PR1000E/4Rnpdl400x400
PC-PR1000E/4npdl400x400
PC-PR1000FX/4npdl400x400
PC-PR2000/4Rnpdl400x400
PC-PR2000/4Wnpdl400x400
PC-PR2000/6Wnpdl600x600
PC-PR1000E/4Wnpdl400x400
MultiWriter 1000EW (PC-PR1000EW)npdl400x400
MultiWriter 2000E (PC-PR2000E)npdl400x400
MultiWriter 2000FW (PC-PR2000FW)npdl600x600
MultiWriter 2000NW (PC-PR2000NW)npdl400x400
MultiWriter 2200NW2 (PC-PR2200NW2)npdl400x400
MultiWriter 2400 (PC-PR2400)npdl400x400
MultiWriter 2000X (PC-PR2000X)npdl600x600
MultiWriter 2200X (PC-PR2200X)npdl600x600
MultiWriter 2400X (PC-PR2400X)npdl400x400
MultiWriter 2200X2 (PR-L2200X2)npdl600x600
MultiWriter 2200XE (PR-L2200X2)npdl600x600
MultiWriter 2000X2 (PR-L2000X2)npdl600x600
MultiWriter 1400X (PR-L1400X)npdl600x600
MultiWriter 6050 (PC-L6050A)npdl400x400, 600x600
MultiWriter 4050 (PR-L4050)npdl400x400, 600x600
MultiWriter 2050 (PR-L2050)npdl600x600
MultiWriter 2250 (PR-L2250)npdl600x600
MultiWriter 2650 (PR-L2650)npdl600x600
MultiWriter 2650E (PR-L2650E)npdl600x600
MultiSpart 3500 (PR-MF3500)npdl600x600
MultiSpart 3500S (PR-MF3500S)npdl600x600
MultiWriter 4050M (PR-4050M)npdl600x600
MultiWriter 2650M (PR-L2650M)npdl600x600
MultiWriter 2250H (PR-L2250H)npdl600x600
MultiWriter 1250 (PR-L1250)npdl600x600

RPDL 対応プリンタと出力デバイス

RPDL 対応プリンタと出力デバイス名/解像度のリストです。 これは、あくまでも規格上出力できるものをリストしただけで、全てのプリンタで実際に出力できることを確認したわけではないので注意して下さい。 (特に複合機の Imagio シリーズ)

機種デバイス名解像度 (dpi)備考
PC LASER SP-7rpdl240x240
PC LASER SP-8rpdl240x240
PC LASER SP-10PSrpdl240x240, 400x400
PC LASER SP-10PS mkIIrpdl240x240, 400x400
PC LASER SP-10PS Pro シリーズrpdl240x240, 400x400, 600x600
PC LASER SP-9 シリーズrpdl240x240, 400x400, 600x600
PC LASER SP-9 IIrpdl240x240, 400x400, 600x600
PC LASER SP-10PS Pro IIrpdl240x240, 400x400, 600x600
PC LASER SP-90rpdl240x240, 400x400, 600x600
PC LASER NX-70rpdl240x240, 400x400, 600x600
PC LASER NX-100rpdl240x240, 400x400, 600x600
PC LASER NX-110rpdl240x240, 400x400, 600x600
PC LASER NX-210rpdl240x240, 400x400, 600x600
PC LASER NX-510rpdl240x240, 400x400, 600x600
PC LASER NX-600rpdl240x240, 400x400, 600x600
PC LASER NX-610rpdl240x240, 400x400, 600x6001,200 dpi 印刷(RPDL R-PS モード)は未対応
PC LASER NX-700rpdl240x240, 400x400, 600x600
PC LASER NX-710rpdl240x240, 400x400, 600x6001,200 dpi 印刷(RPDL R-PS モード)は未対応
PC LASER NX-800rpdl240x240, 400x400, 600x600
PC LASER NX-900rpdl240x240, 400x400, 600x600
PC LASER NX-910rpdl240x240, 400x400, 600x600
PC LASER NX-1000rpdl240x240, 400x400, 600x600
PC LASER NX-1100rpdl240x240, 400x400, 600x600

対応していないプリンタ

このドライバでは、次のプリンタはサポートしていません。


インストール

  1. Ghostscript のソースディレクトリに gdevespg.c、 gdevl4r.c、 gdevl4v.c、gdevlips.c、gdevlips.h、 gdevlprn.c 、gdevlprn.h、gdevnpdl.c、gdevrpdl.c をコピーします。(要するに *.c *.h をコピーします。) Ghostscript 5.10/5.50 の場合はそれぞれ gs5.10/ gs5.50/、 Ghostscript 6.01 の場合は gs6.01/src/ にコピーします。
          例:
          cp *.c *.h "Ghostscript のディレクトリ"
    
  2. Ghostscript 5.50/6.01 の場合は gdevlips.mak を contrib.mak に追加します。
          例:
          cat gdevlips.mak >>contrib.mak
    
  3. Ghostscript 5.10 の場合は gdevlips.mak を Makefile に追加します。
          例:
          cat gdevlips.mak >>makefile
    
  4. Makefile の DEVICE_DEVS にデバイスとその機能に述べられるのデバイスのうち必要なものを記述します。
  5. Ghostscript 6.01 の場合は、$(DD)lips2p.dev のように頭に $(DD) をつけくわえます。
  6. B4、B5、B6 サイズなどの用紙を扱う場合は gs_statd.ps にパッチをあてます。
  7. (Ghostscript 6.01 では、jisb4, jisb5, jisb6 などのサイズ名を使用します)
          例:
           patch <gs_statd.dif
    
  8. Ghostscript をコンパイルし、インストールします。

デバイスとその機能

ラスター版ドライバ

lips2p.dev
LIPS II+ のコードを出力します。
lips3.dev
LIPS III のコードを出力します。
bjc880j.dev
LIPS IVc (BJC-680J/880J 用)のコードを出力します。カラー出力にも対応しています。
lips4.dev
LIPS IV のコードを出力します。カラー出力にも対応しています。
lp2000.dev
ESC/Page のコードを出力します。(LP-2000/LP-3000/LP-7000/LP-7000G 用です。)
escpage.dev
ESC/Page のコードを出力します。対応機種はESC/Page 対応プリンタと出力デバイスを参照のこと。
npdl.dev
NPDL のコードを出力します。対応機種はNPDL 対応プリンタと出力デバイスを参照のこと。
rpdl.dev
RPDL のコードを出力します。対応機種はRPDL 対応プリンタと出力デバイスを参照のこと。

ベクター版ドライバ

lips4v.dev
LIPS IV のコードを出力します。カラー出力にも対応しています。

使用方法/使用オプション

以下にかかれているオプションは PostScript ファイルの中のオペレータでも変更されることがあります。 lpd のフィルターとして使う場合はこの中で -sDEVICE-r のみを指定するとよいでしょう。

LIPS・ESC/Page・NPDL・RPDL ドライバ共通オプション

-sDEVICE
出力するデバイスの変更に使用します。最低限これだけは指定して下さい。
-sPAPERSIZE
出力する用紙サイズの変更に使用します
-dNumCopies
印刷部数を指定する場合に使用します
-r
解像度を指定する場合に使用します
-dDuplex
両面印刷する場合に使用します
-dTumble
両面印刷する場合にとじ方向を変更する場合に使用します
-dNegativePrint
白黒反転印刷ができます。

ESC/Page ドライバのオプション

-dRITOff
RIT (輪郭補正機能)をオフにする場合に使用します

LIPS ドライバのオプション

-dBitsPerPixel
LIPS IV においてモノクロとカラー出力を切替えるために使用します
-dManualFeed
給紙トレイから給紙する場合に使用します
-dCasset
給紙するトレイ/カセットを指定する場合に使用します
-sUserName
プリンタのパネルに表示する文字を変更する場合に使用します
-sMediaType
LBP-2160/2260 /LBP-2040 で出力する用紙の種類を指定するために使用します。
-dOutputFaceUp
LBP-2160/2260 でフェイスアップトレイに出力するために使用します。
-dNup
N 面印刷をする場合に使用します
-dPJL
PJL を出力する場合に使用します
-dTonerDensity
トナー濃度調節をする場合に -dPJL とともに使用します
-dTonerSaving
トナー節約をする場合に -dPJL とともに使用します

NPDL ドライバのオプション

-dManualFeed
給紙トレイから給紙する場合に使用します

LIPS・ESC/Page・NPDL・RPDL ドライバ共通オプション

デバイス変更

このドライバを使用するためには -sDEVICE オプションでデバイスを変更する必要があります。それぞれ次のように指定します。

-sDEVICE=lips2p
lips2p デバイスを使用します
-sDEVICE=lips3
lips3 デバイスを使用します
-sDEVICE=bjc880j
bjc880j デバイスを使用します
-sDEVICE=lips4
lips4 デバイスを使用します
-sDEVICE=lips4v
lips4v デバイスを使用します
-sDEVICE=lp2000
lp2000 デバイスを使用します
-sDEVICE=escpage
escpage デバイスを使用します
-sDEVICE=npdl
npdl デバイスを使用します
-sDEVICE=rpdl
rpdl デバイスを使用します

デフォルト用紙サイズ変更(デフォルト:A4サイズ)

このドライバでは-sPAPERSIZEオプションかsetpagedeviceオペレータによって 指定したサイズを用紙方向も含めて正しく扱うことができます。 ただし、機種によって対応する用紙サイズに制限がありますのでどの用紙サイズが使え るかは使用しているプリンタの説明書を参照して下さい。(例えば、A4 機である LBP-450 では A3 の用紙では出力できませんし、LBP-2160/2260 では官製はがきには対応していません。)

また、-sPAPERSIZE オプションはデフォルトの用紙サイズを変更するだけです。 用紙サイズを固定したい場合は -dFIXEDMEDIA オプションとともに用いて下さい。

次のオプションが指定されたときすべてのドライバで プリンタに正しく用紙サイズの情報が送られます。 (ただし、B サイズと官製はがきは付属のパッチをあてること。 Ghostscript 6.01 ではパッチなして、JIS B サイズが扱えます。)

-sPAPERSIZE=a3
A3
-sPAPERSIZE=a4
A4
-sPAPERSIZE=a5
A5
-sPAPERSIZE=b4
B4
-sPAPERSIZE=b5
B5
-sPAPERSIZE=jisb4
B4 (for Ghostscript 6.0)
-sPAPERSIZE=jisb5
B5 (for Ghostscript 6.0)
-sPAPERSIZE=letter
レター
-sPAPERSIZE=postcard
官製はがき

LIPS と ESC/Page のドライバでは次のサイズにも対応しています。

-sPAPERSIZE=legal
リーガル
-sPAPERSIZE=ledger
レジャー
-sPAPERSIZE=b6
B6
-sPAPERSIZE=jisb6
B6 (for Ghostscript 6.0)

LIPS のドライバのみ次のサイズに対応しています。

-sPAPERSIZE=envyou4
洋形4号(封筒)

任意の用紙サイズは次のようにして指定します。

-gnumber1xnumber2
-dDEVICEWIDTH=number1-dDEVICEHEIGHT=number2 を指定した場合も意味は同じです。 それぞれピクセル単位で用紙の幅(number1)と 高さ(number2)を指定して下さい。

LIPS ドライバに関しては官製はがきサイズより小さいサイズや A3 サイズより 大きなサイズは LIPS の規格上印刷できないことになっているので、 そのようなサイズが指定された場合は処理を行ないません。(エラーになります)


複数部印刷(デフォルト:1部)

このドライバでは複数部印刷においてプリンタのコピーモードを使用し、高速に印刷されます。

コマンドラインでは、-dNumCopies=numberとして 印刷部数numberを指定して下さい。numberの最大値は 次のようになっています。これ以上の値を指定しても最大値の部数しか印刷されません。

LIPS、ESC/Page プリンタ
255
NPDL プリンタ
99
RPDL プリンタ
機種による

解像度変更(デフォルトは下記)

-r解像度 オプションで解像度を変更することができます。

lips2p
240
lips3
300
bjc880j
60〜360 (デフォルト 360 dpi)
lips4
60〜600、1200 (デフォルト 600 dpi)
lips4v
60〜600、1200 (デフォルト 600 dpi)
lp2000
60〜300 (デフォルト 300 dpi)
escpage
60〜600 (デフォルト 300 dpi)
npdl
160、200、240、400、600 (デフォルト 240 dpi)
rpdl
240、400、600 (デフォルト 240 dpi)

LIPS IV で 高解像度 (600 dpi、1200 dpi) 印字を行なう場合は LIPS IV 出力における高解像度印字に関する注意を読んで下さい。 もし内蔵メモリが足りないようでしたら -r300 として 300 dpi で印刷することを おすすめします。

また、Ricoh の RPDL プリンタはプリンタが対応する RPDL のレベルによって選択できる解像度が異なります。 概ね次のようになっているようですが、個々のプリンタの解像度についてはそれぞれのプリンタのマニュアルを参照してください。


両面印刷(デフォルト:パネル設定)

プリンタの中には両面印刷ユニットを装備できるものがありますが、 その機能が使えます。とじ方は2種類選択できます。 この機能に関係するのは Duplex と Tumble です。

Ghostscript のオプションとして両面印刷を指定する場合には次のような オプションを使って下さい。

また、片面印刷を指定する場合には次のようなオプションを使って下さい。

とじ方向 (デフォルト: 長辺とじ)

両面印刷をするときとじ方向を長辺とじか短辺とじを指定できます。 デフォルトでは長辺とじです。短辺とじを指定する場合には次のような オプションを使って下さい。 片面印刷時にこのオプションを指定しても意味はありません。


白黒反転印刷 (デフォルト: 反転しない)

lips4.dev(モノクロのみ)、lp2000.dev、escpage.dev、npdl.dev(NPDL (level2)対応機種のみ) に限り次のオプションを入力することで白黒を反転させることができます。


ESC/Page ドライバのみ対応のオプション

RIT (輪郭補正機能)をオフにする (デフォルト: RIT を使う)

escpage.dev に限り次のオプションを使うことにより RIT (Resolution Improvement Technology、輪郭補正機能)をオフにすることができます。

通常は RIT はオンのまま使えばよいですが、パターン塗りつぶしなので意図した印刷結果と違うものが出力される場合はこの機能を使って RIT をオフにしてください。


LIPS ドライバのみ対応のオプション

モノクロとカラー出力の切替え(デフォルト:モノクロ)

このオプションは bjc880j、lips4、lips4v のみ対応しています。

-dBitsPerPixel=numberオプションによりモノクロと カラー出力の切替えができます。

bjc880j、lips4
-dBitsPerPixel=1
モノクロ出力 (デフォルト)
-dBitsPerPixel=24
カラー出力
lips4v
-dBitsPerPixel=8
モノクロ出力 (デフォルト)
-dBitsPerPixel=24
カラー出力

給紙方法の選択(デフォルト:自動選択)

このオプションは LIPS と NPDL のデバイスのみ対応しています。

-dManualFeedオプションによるMPトレイ(給紙トレイ)からの給紙と -dCassetオプションによる給紙カセットの選択に対応しました。 デフォルトでの給紙は自動選択になります。また、-dManualFeedオプションでの 指定は-dCassetによる指定よりも優先することに注意して下さい。

MPトレイ(給紙トレイ)からの給紙

次のようなオプションを指定することでMPトレイ(給紙トレイ)から 給紙できます。

給紙カセットの選択

このオプションは LIPS のデバイスのみ対応しています。

-dCasset=numberオプションまたは-DCasset= numberにより給紙カセットを 選択できます。 numberの指定は次のようになります。これら以外の数値を指定すると エラーになります。

-1
給紙カセットの選択をするコマンドを出力しない
0
自動給紙
1
手差し給紙(MPトレイ)
2
下段カセット給紙
3
上段カセット給紙
10
MPトレイ(手差し給紙に相当)
11
カセット1
12
カセット2
13
カセット3
14
カセット4
15
カセット5
16
カセット6
17
カセット7

-dCasset=-1 は -dCasset=0 では自動給紙が働かない場合に用いて下さい。 (少なくとも LBP-A405Jr. では用いる必要があるようです)

プログラマーズマニュアル 4.2 によると支障のない限り"0"または"10"〜"17"を用いて下さいということなので LIPS IV 搭載プリンタではそのようにしたほうがよいでしょう。


パネル表示変更(デフォルト:Ghostscript)

このオプションは LIPS のデバイスのみ対応しています。

プリンタのステータス表示部に表示するコメントを-dUserNameオプションを 用いて動的に表示することができるようになりました。これによって Ghostscriptを印刷のフィルターとして使っている場合、 次のようなインプットフィルターを使うことによって印刷時にユーザ名を プリンタのステータス表示部に表示できるようになります。

#!/bin/sh

user=/dev/null

#
# Get username from filter parameters
#
while [ $# != 0 ]
do  case "$1" in
    -n)   user=$2 ; shift ;;
    *)    ;;
    esac
    shift
done

gs -q -sDEVICE=lips4 -dSAFER -dNOPAUSE -sUserName=$user -sOutputFile=- -

exit 0

用紙種類指定

このオプションは LBP-2160/2260/2040 に対応しています。

LBP-2160/2260/LPB-2040 では普通紙、厚紙、OHP、光沢フィルムに対応していますが、 適切なコマンドを出力しないとトナーの定着に不都合が生じます。 次のオプションを用いてそれぞれの用紙に出力してください。 なお、普通紙以外を指定すると自動的に給紙トレイから給紙されるようになります。

-sMediaType=PlanePaper
普通紙
-sMediaType=CardBoard
厚紙
-sMediaType=OHP
OHP
-sMediaType=TransparencyFilm
OHP
-sMediaType=GlossyFilm
光沢フィルム

フェイスアップトレイの出力

このオプションは LBP-2160/2260 のみに対応しています。

LPB-2160/2260 では通常のフェイスダウントレイの他にフェイスアップトレイへの出力をサポートしています。次のオプションによりフェイスアップトレイに出力することができます。


n 面印刷 (デフォルト: パネル設定)

このオプションは LIPS IV のデバイスのみ対応しています。

[警告]これは LIPS IV の非公開機能を使っているため、使用には十分に注意して下さい。対応していない機種もあるかもしれません。 また、psnup でうまくいく PostScript ファイルの場合は、psnup を使いましょう。 psnup を使うほうが全ての面で優れています。 この機能は基本的には psnup でうまくいかない PostScript ファイルに使って下さい。 詳しくは FAQ の「 n 面印刷をするには、どうしたらいいの? 」を読んで下さい。 また、搭載メモリ量により、「システムメモリ フル」などのエラーになる可能性もあるかもしれません。

次のオプションを使うことにより、n 面印刷が可能です。

-dNup=1
1 面印刷 (デフォルト)
-dNup=2
2 面印刷
-dNup=4
4 面印刷

[作者からの助言]この機能で 4 面印刷をする場合、300 dpi と 600 dpi の出力に明らかな差はないので、300 dpi に解像度を落すとより速く出力できます。2 面印刷においてはこの限りではありません。 1,200 dpi と 600 dpi の差はどうなっているか分かりません。


フォントダウンロード(デフォルト: しない)

このオプションは lips4v のみ対応しています。

ベクター版デバイス lips4v ではビットマップフォントをダウンロードすることにより、同じ文字が繰り返しでてくる場合、より高速に印刷できるようにすることができます。特に英語の論文などではこの効果は絶大です。 しかし、LIPS IV の制約によりクリッピング処理を行なう場合、少しでもクリッピング領域内にある文字はクリッピング領域外の部分があったとしても丸々描かれてしまうという不具合があります。 クリッピング領域を使いこなした図形を描くような場合はこのオプションは使わない方がよいです。 しかしながら、クリッピング領域で文字カットしながら描くという処理は行なわないユーザの方が多いと思います。

また、18 point 以下のキャラクターしかダウンロードは行ないません。

次のオプションを使うことにより、フォントのダウンロードが可能です。


PJL 出力 (デフォルト: 出力しない)

[警告]これは非公開機能を使っているため、使用には十分に注意して下さい。対応していない機種もあります。 少なくとも LIPS IV 搭載機種では全てのデバイス(lips*.dev)で、 この機能が使えるようです。

次のオプションを使うことにより PJL を出力します。 PJL を出力することによりプリンタの LIPS モードへの切替を制御できます。 しかしながら、LASER SHOT の LIPS モードの自動認識はかなり優秀なので必ずしも このオプションを使う必要はありません。

また、PJL を用いることにより、トナー濃度調節機能トナー節約機能を Ghostscriptドライバで用いることができるようになります。

トナー濃度調節 (デフォルト: パネル設定)

次のオプションを使うことにより、トナー濃度調節が可能です。

-dPJL -dTonerDensity=n
n は 0 から 8, 0 はパネルの設定。数字が大きいほど濃くなります。
トナー節約 (デフォルト: パネル設定)

次のオプションを使うことにより、トナー節約が可能です

逆に次のオプションを使うことにより、トナー節約をしないことが可能です

何も指定しない場合はプリンタのパネル設定に従います。


Netatalk・CAP と Ghostscript + gdevlips

Netatalk や CAP を用いて Ghostscript + gdevlips を用いる場合、 通常 LaserWriter 8 や Adobe PS などのプリンタドライバを使用しますが、 プリンタ記述ファイル(PPD ファイル)で適正なものを書けば上記のオプションは全て Macintosh から指定できるようになります。 また新たにプリンタ記述ファイルを書かなくても既存のものを利用すればかなりのことができます。

また、Ghostscript ドライバの中には LaserWrite 8 の出力する Landscape が回転できないものがありますが、 このドライバではきちんと回転して正常に出力するようになっているので、その点は御安心下さい。

例としてCanon LASER SHOT LBP-730PS用のプリンタ記述ファイルを用いた場合、 変更なしで次の機能が利用できます。

給紙方法選択オプションのうち-dManualFeedオプションはPostScript言語の作法に 従っていますが、-dCassetオプションはそうではないので注意して下さい。 -dCasset を用いるように PPD を記述すれば使えるようになると思います。


変更履歴

gdevlips-2.4.0 (2000/11/02 release)

gdevlips-2.3.6 (2000/2/5 release)

gdevlips-2.3.5 (1999/9/6 release)

gdevlips-2.3.4 (1999/7/18 release)

gdevlips-2.3.3 (1999/6/22 release)

gdevlips-2.3.2 (1999/5/18 release)

gdevlips-2.3.1 (1999/5/16 release)

gdevlips-2.3.0 (1999/5/10 release)

gdevlips-2.2.1 (1999/4/28 release)

gdevlips-2.2.0 (1999/4/8 release)

gdevlips-2.1.2 (1999/3/1 release)

gdevlips-2.1.1 (1999/2/23 release)

gdevlips-2.1.0 (1999/2/13 release)

gdevlips-2.0.12 (1999/2/11 release)

gdevlips-2.0.11 (1999/2/9 release)

gdevlips-2.0.10 (1999/2/9 release)

gdevlips-2.0.9 (1999/2/8 release)

gdevlips-2.0.8 (1999/2/7 release)

gdevlips-2.0.7 (1999/2/4 release)

gdevlips-2.0.6 (1999/1/30 release)

gdevlips-2.0.5 (1999/1/28 release)

gdevlips-2.0.4 (1999/1/16 release)

gdevlips-2.0.3 (1999/1/11 release)

gdevlips-2.0.2 (1999/1/8 release)

gdevlips-2.0.1 (1998/11/30 release)

gdevlips-2.0.0 (1998/11/16 release)

gdevlips-2.0.0pre1 (1998/10/10 release)

gdevlips4-19981104 (release 27)

gdevlips4-19981017 (release 26)

gdevlips4-19981015 (release 25)

gdevlips4-19981012 (release 24)

gdevlips4-19981009 (release 23)

gdevlips4-19981006 (release 22)

gdevlips4-19981005 (release 21)

gdevlips4-19980924 (release 20)

gdevlips4-19980922 (release 19)

gdevlips4-19980908 (release 18)

gdevlips4-19980904 (release 17)

gdevlips4-19980822 (release 16)

gdevlips4-19980821 (release 15)

gdevlips4-19980729 (release 14)

gdevlips4-19980716 (release 13)

gdevlips4-19980707 (release 12)

gdevlips4-19980704 (release 11)

gdevlips4-19980623 (release 10)

gdevlips4-19980612 (release 9)

gdevlips4-19980429 (release 8)

gdevlips4-19980413 (release 7)

gdevlips4-19980403 (release 6)

gdevlips4-19980401-2 (release 5)

gdevlips4-19980401 (release 4)

gdevlips4-19980331-2 (release 3)

gdevlips4-19980331 (release 2)

gdevlips4-19980330 (release 1)


LIPS IV 出力における高解像度印字に関する注意

600dpi 印字や 1200dpi 印字を行う場合は, プリンタに搭載されている内蔵 メモリの容量に注意して下さい。

これは内蔵メモリの容量が少ない場合に、 プリンタがデータ量の多さに対応できず自動的に解像度を落して印字させるからです (印字データに依存するので一概には言えません)。 この処理が行われると, 印字解像度が変わる他に 2 点のデメリットがあります。

これらを避けるためにも、搭載メモリに見合った解像度での印字をお勧めします。 高解像度で印字を行うために必要なメモリ容量は、 「プリンタ機能マニュアル」へ `印字保証メモリ' として書かれています。 出力用紙サイズや両面印字の有無によって変化する点も注意して下さい。


バグ

ここにリストされているバグは作者が把握しているバグです。 これ以外のバグがないという意味ではないので注意して下さい。

ここにリストされている以外でバグを発見しましたら 作者まで報告をお願いします。


[bjc880j.dev]

1. ランドスケープ回転時に印刷位置がちょっとずれる

他の LIPS のドライバでは上下左右のマージンが均一なのでランドスケープは そのまま回転してやれば印刷位置があいますが、 BJC-680J、BJC-880J ではマージンが違うので少しずれてしまいます。 回転時に厳密に位置を計算すればずれない?


[lips4v.dev]

1. パスのクリッピング処理時のメモリ不足 (システムメモリフル エラー)

矩形以外のパスで多少複雑なクリッピング処理しただけでプリンタがメモリ不足に陥る。 例えば Tgif で円をパターンフィルして出力した PostScript ファイルでこの現象がみられる。

これは Ghostsciprt 5.10 が出力するクリッピングパスが効率悪いことと、 LIPS IV のパスクリッピング処理がメモリーを食い過ぎるために起こります。

※このバグは Ghostscript 5.50 ではパスのクリッピング処理が効率よくなったために多少ましになっています。 また、キヤノンによると MaxiMem 搭載機ではクリッピングに関するメモリー効率も良くなっているそうなのでこの問題は解決されているかもしれません。(未確認)


2. 幅がゼロのパスをフィルしたとき何も描かれない

PostScript では幅がゼロのパスをフィルしたときも描かれなければならないが、描かれない。

LIPS IV では描かれない仕様です。

※Ghostscript に附属の zeroline.ps を印刷するとこのバグが分かります。


3. Projecting square cap のバグ

線の接合部で、setlinecap で 2 (Projecting square cap) を指定した時、パスをクローズ した部分の線接合がうまくいかない。また、クローズする座標がパスの原点から 引き伸ばした方向にずれる。

LIPS IV のバグです。

※Ghostscript に附属の lines.ps を印刷するとこのバグが分かります。


4. Round cap のバグ

線の接合部でsetlinecap で 1 (Round cap) を指定して、setlinejoin で 2 (Bevel join)を指定したとき、 パスをクローズした部分の線接合は 「ベベル(切り落とし)」 にならなければいけないところ「丸」になってしまう。

LIPS IV のバグです。

※Ghostscript に附属の lines.ps を印刷するとこのバグが分かります。


5. 線の太さが違う

LIPS IV の制限で線の太さの上限は 0.85 インチとなっています。 PostScript にはそのような制限がないので、極端に太い線を描くときに 出力の違いが出てしまいます。

また、Ghostscript の ベクタードライバのバグにより縦横のスケールが異なる場合、 線の太さが違ってきてしまいす。

rectstroke オペレータを使った場合で縦と横の太さが違う場合も正常に描かれません。(縦と横の太さが同じになってしまいます。)


6. lips4v ドライバでグレースケール出力するときにカラーパターンを描いた場合色がおかしいことがある

多分、Ghostscript のバグです。カラー出力 (-dBitsPerPixel=24) ではこのバグは見られません。


FAQ

プリンタの出力は速くならないの?

LIPS IV 機の場合 -r300 オプションをつけて解像度を 300 dpi (クイック) にすると速くなります。(当然画質は落ちます)

LIPS IV 機で 600 dpi 印刷する場合は lips4 ドライバを用いるのが良いでしょう。 lips4v ドライバを使っても速度的なメリットはありません。

LIPS IV 機で 1,200 dpi 印刷する場合は lips4v.dev を使ったほうが 速いかもしれませんが、私は使ったことないので分かりません。

Color LASER SHOT でカラー印刷する場合は lips4.dev でなく lips4v.dev を使った方が高速に出力できます。 (しかし、ベクター版ドライバは制限が多いので注意してください。)


プリンタの内蔵フォントは使えないの?

使えません。


n 面印刷をするには、どうしたらいいの?

PSUtils というソフトウェアに含まれる psnup を用います。 PSUtils は PostScript ファイルの中から特定のページを抽出したり、 ページの並びを変更したりできるコマンド群です。

PSUtils は次のところから得られます。

psnup は次のように使います。より詳しいことはマニュアルを読んで下さい。

psnup -2 [infile[outfile]]
2 ページを 1 ページにまとめて印刷します
psnup -4 [infile[outfile]]
4 ページを 1 ページにまとめて印刷します
psnup -8 [infile[outfile]]
8 ページを 1 ページにまとめて印刷します

ただし、psnup でうまくいかない PostScript ファイルもあります。 そのような場合に LIPS IV に限り、-dNup オプションにより 2 面印刷と 4 面印刷が可能です。 しかし、これは非公開機能を使っていたり、印字速度が遅いという問題がありますので可能な限り psnup を用いましょう。


用紙サイズの拡大、縮小印刷をするにはどうするんですか?

PSUtils に含まれるコマンド psresize を用います。

PSUtils は次のところから得られます。

psresize は A3・A4・A5・レター・リーガルや任意のサイズに対応しています。 下記にいくつか使用例を挙げます。くわしくはマニュアルを参照して下さい。

psresize -q -PA4 -pletter in.ps > out.ps
A4 サイズをレターサイズにします。
psresize -q -PA3 -pA4 in.ps > out.ps
A3 サイズを A4 サイズにします。
psresize -q -W729 -H1032 -w516 -h729 in.ps > out.ps
B4 サイズを B5 サイズにします。

NPDL 搭載プリンタの中には指定された用紙がホッパ(給紙カセット)にない場合で、 縮小印刷可能な用紙サイズはある場合、縮小印刷されるものもあります。


印刷位置を調整するにはどうしたらいいですか?

印刷位置がずれてしまう場合は、次の方法のうちどれかを用いて調整します。 なお、Ghostscript の原点は用紙の左上ですので左上からの印刷位置があうように調整してください。

  1. プリンタのパネル設定の「縦補正」「横補正」の機能を用いる
  2. Ghostscript の PageOffset オペレータで調整する。

プリンタのパネル設定の「縦補正」「横補正」の機能を用いる場合、Ghostscript の他に印刷するソフトウェアを使うとそのソフトウェアでも補正が効いてしまうので注意が必要です。

Ghostscript で印刷位置を変更したい場合は、ファイル /usr/local/etc/offset.ps などと名前をつけたファイルを作って次のような内容を記述します。

<<
/PageOffset [0.0 0.0]
>> setpagedevice

次にこのファイルの [0.0 0.0] となっている部分にずらしたい長さを記述します。 単位はポイント(1/72 inch、約 0.35 mm)です。例えば右に 3 mm、上に 1.5 mm 印刷位置をずらしたい場合は、

3.0 × 25.4 ÷ 72 = 8.5039...
1.5 × 25.4 ÷ 72 = 4.2519...
なので、
<<
/PageOffset [8.5 -4.25]
>> setpagedevice
と記述します。

そして、Ghostscript を起動するたびにこの offset.ps を呼び出して下さい。 例えば次のようにします。

gs -q -dSAFER -dNOPAUSE -sDEVICE=lips4 -sOutputFile=- offset.ps -

B4 または B5 サイズの用紙指定がうまくいかないんだけど

インストールのところで述べられているように、gs_statd.ps にパッチをあてて下さい。 Ghostscript 標準の Bサイズは ISOのBサイズであって JISのBサイズではありません。


ラスター版デバイスとベクター版デバイスの違いは?

ラスター版デバイスは Ghostscript が作る、ページとほぼ同じ大きさの1枚のビットマップを印刷するデバイスです。 LIPS の命令としては主にラスター・イメージ描画命令しか使っていません。 それに対してベクター版デバイスはより高機能な LIPS の命令を使って印刷するデバイスです。 それぞれに長所と短所があるので使い分けて下さい。

ベクター版デバイスが LIPS の命令として使っているのは次のとおりです。

上記のような機能によってベクター版デバイスはラスターデバイスと比較すると次のような特徴があります。(多少の例外はあります。)


LIPS IV 以外ドライバのベクター版は作らないの?

作りません。より正確にいうと作れません。 ベクター版ドライバを作るためには PDL が PostScript に近い機能をもって いなければいけませんが、LIPS II+、LIPS III、LIPS IVc、NPDL、RPDL では機能が足らないので作れないのです。

ESC/Page に関しては、 エプソンコーワ株式会社の Web Pageで、一部のプリンタ用の ベクタードライバのソースが入手できます。 (また、同じサイトで ESC/Page-Color のソースも入手できます。)


lbp2030.dev はどこいったの?

lbp2030.dev は lips4.dev のカラー出力と出力する内容が同じになったので廃止しました。 しかしながら、Color LASER SHOT で出力する場合は ベクトル版デバイスの lips4v.dev で出力するほうが 10 倍以上速いと思います。


lips3fig、lips4cfig、lips4fig がないんだけど

*fig.dev は dvipr でしか用いられません。また、dvipr 自体はすでに時代遅れの ソフトウェアになりつつあります。 よってサポートしないことにしました。


どうして LIPS II+ 対応ドライバは lips2+ や lips2plus という名前じゃないの?

Ghostscript ではデバイスの名前は1から8文字と決まっています。 また、アンダースコア(_)以外の記号は使えないことになっています。


謝辞

伊藤祥晴氏には圧縮ルーチン部分の提供、スーパーファイン LIPS のテストなどを手伝っていただきました。 また、LIPS IV 出力における高解像度印字に関する注意も伊藤氏が書かれた文書です。

二木紀行氏にはプログラミング上の相談にのっていただきました。 またベクター版デバイスの品質向上に協力していただきました。

成松宏氏作の Ghostscript ドライバ epag-3.08 のコードから出力アルゴリズム部分と用紙サイズ決定部分を利用させていただきました。

渡部修氏作の Ghostscript ドライバ gdevnpdl-1.5 のコードをもとに npdl ドライバを作成させていただきました。

斎藤英夫氏の Ghostscript ドライバ gdevnpdl-1.5 への 両面印刷対応パッチを利用させていただきました。

このソフトウェアの改善に関して、以下の方々から貴重な意見をいただきました。

太田芳彦、石丸哲也、山口一郎、伊藤直史、竹野茂治、熊谷正朗、山内仁、 寺川愛印 、三岩幸夫、檜垣将和、筧楽麿、Katsuya Tanaka、萩平哲、中川誠(敬称略)


参考文献

  1. PostScript Language Reference Manual SECOUND EDITION, Adobe Systems Incorporated
  2. LASER SHOT プログラマーズマニュアル ソフトウェア概説書 4.1, Canon
  3. LASER SHOT プログラマーズマニュアル ソフトウェア概説書 4.2, Canon
  4. LASER SHOT プログラマーズマニュアル コマンドリファレンス 4.1, Canon
  5. LASER SHOT プログラマーズマニュアル コマンドリファレンス 4.2, Canon
  6. LASER SHOT プログラマーズマニュアル クックブック 4.1, Canon
  7. LASER SHOT プログラマーズマニュアル クックブック 4.2, Canon
  8. ESC/Page リファレンスマニュアル 第4版, EPSON
  9. EPSON Remote モード(P) リファレンスマニュアル, EPSON
  10. 日本語ページプリンタ言語 NPDL(Level2) リファレンスマニュアル (PC-PRNPDL2-RM Rev.02), NEC
  11. RPDL コマンドリファレンス, Ricoh

Last modified: Tue Apr 11 00:00:00 JST 2000

大森紀人 Project Vine/Kondara Project <URI:mailto:nono@kondara.org>