
         Ghostscript-2.6.1j に対する MJ-700V2C ドライバ


1996 年 11 月 2 日                                         久保  博


はじめに
--------

とりあえずのやっつけ仕事で、 gdevcdj.c のカラー対応の部分に gdevescp.c に
あった ESC/P V2 のプリンタ制御コードをねじこんで、 MJ-700V2C でカラー印字が
できるドライバ mj700v2c.dev を作りました。以来 fj.sources  にて投稿を重ね、
今回で７度目の配布になります。

初回に投稿したものは、CMY の三色で印刷していましたが、今回配布するものは
CMYK の四色で印刷します。私の感覚では、この方が美しいです。（ただし、
CMY 三色で印刷する機能も復活させました。）

また、その２のパッチまででは、空行に対する処理にバグがありましたが、
今回は、ちゃんと空行を出力するようにしました。

また、その３のパッチまででは、 360dpi にしか対応していませんでしたが、
今回は、 180dpi, 360dpi, 720dpi に対応しています。

また、その４のパッチでは ESC/P V2 用のドライバ部分を gdevcdj.c とは
独立したファイルに記述しました。そのため、 BJC-600J 用パッチは必要
ありません。

gdevmjc ver. 0.5 では、これまでいい加減にしていたＡ４用紙に対する
マージン幅を真面目に計算して、印刷結果がＡ４の紙面に収まるようにしま
した。また、作者自身すら忘れていたＡ４対応のコンパイルオプションにつ
いての記述を付け加えました。 (^_^)

gdevmjc ver. 0.6 では、マイクロウィーブと縮小ドットモードに対応しました。
また、A2, A3 ノビ, A3, A4, B4, B5 の用紙サイズに対応しました。
（のつもりです。）

gdevmjc ver. 0.7 では、MJ-500C のような黒色インクを使わないカラー印刷を
行なう機種に対応しました。また、グレースケール印刷に対応しました。
これらの機能は、元にした gdevcdj.c + bjc600 patch にあった機能を復活した
ものです。また、 DEC の AXP でコンパイルした時に生じる不具合を取り去りま
した。

gdevmjc ver 0.8 では、Sun OS 附属の cc でもコンパイルできるようにしました。
また、「結晶化アルゴリズム」によるディザリングを行なうようにし、合わせて
色補正を行なうことで、色の再現性が向上しました。

たぶん、海外仕様の Stylus のカラー対応機種にも出力できるのではないかと
ふんでいます。


このドライバを利用するに当たって必要なもの
----------------------------------------

	ghostscript-2.6.1.tar.gz
	ghostscript-fonts.2.6.1.tar.gz
	ghostscript-2.6.1.fix-01.gz
	ghostscript-2.6.1.fix-02.gz
	ghostscript-2.6.1.fix-03.gz
	ghostscript-2.6.1.fix-04.gz
	gs261j10.tar.gz


作り方
------

作り方は、

0. gs-2.6.1 を適当なディレクトリに展開する。

1. gs-2.6.1 に fix patch を 4 つとも当てる。

2. gs-2.6.1 日本語化パッチを当てる。

4. gdevmjc.c を gs-2.6.1 を展開したディレクトリに置く。

5. gdevmjc.mak を Makefile の最後に付け加える。デフォルトでの出力用紙を
   A4 サイズにする時は、 コメントにしたがって、コンパイルオプションに
   -DA4 を追加するように書き換える。

6. 自分のサイト用に Makefile を調整し、 DEVICE_DEVS に 
   mjc180 , mjc360 , mjc720, mj500c のうち必要なものを加える。

   例.     DEVICE_DEVS=mjc180.dev mjc360.dev mjc720.dev mj500c.dev

   ただし、 mjc???.dev は ??? dpi での出力用ドライバです。


7. make する。

です。あとは、 ghostscript-2.6.1 の中にある INSTALL と 日本語化パッチに
ついてくる gs261j.??? に書いてある通りにすれば、うまく動くはずです。
デバイス名 ( -sDEVICE= で指定する) は、 mjc180 , mjc360 , mjc720 , mj500c
です。

また、gs を日本語化する必要がなければ、 2. は省略してもいいでしょう。

使い方
------

(注意) 印刷時に gdevmjc.ps を最初に  gs に与えるようにして下さい。

例。360dpi で出力する。

% gs -sDEVICE=mjc360 -sOutputFile=tiger.mj gdevmjc.ps tiger.ps

例。360dpi でマイクロウィーブをオン、縮小ドットモードで出力する。

% gs -sDEVICE=mjc360 -dMicroWeave=1 -dDotSize=1 -sOutputFile=tiger.mj gdevmjc.ps tiger.ps

例。720dpi でマイクロウィーブをオンで出力する。

% gs -sDEVICE=mjc360 -dMicroWeave=1 -dDotSize=0 -sOutputFile=tiger.mj gdevmjc.ps tiger.ps

また、色の調整などに関するいくつかのオプションが有効です。詳しくは、
gdevmjc.c の記述を参考にして下さい。以下に例を挙げます。


例。 720dpi で単方向印字指定、マゼンタを少し薄くする。

% gs -sDEVICE=mjc720 -dMagenta=896 -dDirection=1 -sOutputFile=tiger.mj gdevmjc.ps tiger.ps


例。 180dpi で、マゼンタを少し薄く、シアンを少し濃くし、標準出力に
出力する。

% gs -sDEVICE=mjc180 -dMagenta=896 -dCyan=1280 -sOutputFile=- gdevmjc.ps tiger.ps

例。360dpi で MJ-500C に出力する。

% gs -sDEVICE=mjc360 -dColorComponent=3 -sOutputFile=tiger.mj gdevmjc.ps tiger.ps

もしくは

% gs -sDEVICE=mj500c -sOutputFile=tiger.mj gdevmjc.ps tiger.ps


例。360dpi でグレースケールで出力する。

% gs -sDEVICE=mjc360 -dColorComponent=1 -sOutputFile=tiger.mj gdevmjc.ps tiger.ps


バグと問題点について
--------------------

Sun のシリアルポートから出力すると、かなり時間がかかります。

EPSON が配布している MS-Windows 用のプリンタドライバのような
気の効いたことはできません。


その他
------

ソースが汚い、バグがある、機能が足りない、出力が美しくないなど、ケチは
たくさんつくと思います。そんな時は、

 h-kubo@kuee.kyoto-u.ac.jp

まで電子メールを出してみて下さい。また、使用してみての感想
などはどしどし送って下さい。今後の参考にさせて頂きます。


御協力をお願いいたします
------------------------

gdevmjc をインストールした環境についての情報を収集して、 FAQ を
編集しています。 gdevmjc をうまくインストールすることができましたら、
上記のメールアドレスまで、インストールしたマシン名、 OS 名、コンパイラ、
Ghostscript のバージョン、使用したプリンタ、プリンタとの接続形態など
を御報告下さるよう御協力をお願いいたします。収集した情報は、

http://www-lab23.kuee.kyoto-u.ac.jp/h-kubo/MJ700V2C.FAQ

にまとめて掲載いたします。

謝辞
----

 Ghostscript とそのドライバの作者の皆様に感謝いたします。

 特に、George Cameron さんの書かれた gdevcdj.c と Richard Brown さんの
 書かれた gdevescp.c のコードをそのまま利用させて頂いた部分が数多くあり
 ます。ありがとうございました。

 version 0.6 でのマイクロウィーブと縮小ドットモードについては、
 大阪市立大学工学部の野崎哲也さんと富士ゼロックス株式会社の東幸一
 さんに有益な情報をお寄せいただきました。ありがとうございしました。

 version 0.8 での K&R cc 対応では、川藤＠アンリツさんからパッチを頂き
 ました。

 version 0.8  で導入した「結晶化アルゴリズム」と色補正は、加賀和孝
 さんと 野崎哲也さんの手によるものです。

