この章では、旧来の日本語プリンタの設定方法について説明します。このバージョンの Solaris オペレーティンシステムでは Solaris 印刷システムに RIP 機能と PPD ファイルサポートが追加され、多彩なプリンタがサポートされています。これより、日本語 Postscript ファイルを Solaris 印刷システムに送ることで、Postscript プリンタ以外の日本語プリンタでも印刷が可能になります。詳細は、『Solaris のシステム管理 (印刷)』の「PPD ファイルに関連付けられたプリンタの設定」を参照してください。
Solaris オペレーティングシステムは、LP 印刷サービスを使用して、ドットマトリックス漢字プリンタ (EPSON VP-5085 、 NEC PC-PR201)、日本語ページプリンタ (Canon LASERSHOT)、日本語 PostScript プリンタで日本語テキストを印刷するために、これらの変換フィルタ群を提供します。
Solaris オペレーティングシステムでは、LP 印刷サービスを使用して、ドットマトリックス漢字プリンタ (EPSON VP-5085、 NEC PC-PR201)、日本語ページプリンタ (Canon LASERSHOT) で日本語テキストを印刷できます。
EPSON VP-5085 用のデータベースは EPSON ESC/P の ESC/P24-J84 に準拠したコントロールコード、NEC PR201 用のデータベースは NEC 201PL に準拠したコントロールコードを使用しています。このため、これらのコントロールコードをサポートする他のプリンタでも日本語テキストを印刷できます。
日本語プリンタ・インタフェースプログラムでは、標準のインタフェースプログラムのほか表 7–1 に示すプリンタ固有のオプションが追加されています。その他のオプションは標準インタフェースプログラムと同じです。詳細は、lp(1) のマニュアルページを参照してください。
表 7–1 lp のプリンタ固有オプション
オプション |
内容 |
---|---|
x=cols |
左マージンを cols カラムに設定する |
landscape |
用紙を横長にして印刷する (Canon LASERSHOT にのみ有効) |
プリンタ固有のオプションの使用例を以下に示します。
sun% lp -o x=30 textfile.txt sun% pr -2 -l46 -w170 -t textfile.txt | lp -o nobanner -o landscape |
以下のフィルタ固有のオプションが lp を通して利用可能です。
表 7–2 jprconv フィルタ固有のオプション
オプション |
内容 |
---|---|
-y PCK |
指定したファイルの文字コードを PCK に指定 |
-y eucJP |
指定したファイルの文字コードを eucJP に指定 |
-y UTF-8 |
指定したファイルの文字コードを UTF-8 に指定 |
フィルタ固有のオプションの使用例を以下に示します。
sun% lp -y PCK textfile.pck |
日本語テキスト印刷フィルタを使用する場合、次の制限事項があります。
制限事項
PostScript ファイルを印刷できない
lp のプリンタ固有オプションでは、length、width、lpi、および cpi がサポートされない
UTF-8 では、日本語 EUC で表現できる文字のみ印刷可能
Solaris オペレーティングシステムでは、日本語 PostScript プリンタで日本語テキストを印刷できます。日本語 PostScript プリンタに日本語テキストを印刷する方法は 2 通りあります。1 つは、jtops(1) または mp(1)を使ってクライアント側で PostScript に変換し、プリンタサーバーに渡す方法であり、もう 1 つは、サーバー側で変換する方法です。ここでは、サーバー側で変換する場合のプリンタの設定方法について説明します。
lp では、以下のフィルタ固有のオプションを利用できます。
表 7–3 jpostprint フィルタ固有のオプション
オプション |
内容 |
---|---|
-o length=len |
1 ページの行数を len に指定 |
-P page-list |
page-list で指定するページ範囲を印刷 |
-y group |
1 ページあたり 2 個の論理ページで印刷 |
-y group=n |
1 ページあたり n 個の論理ページで印刷 |
-y portrait |
縦長で印刷 |
-y landscape |
横長で印刷 |
-y magnify=n |
n 倍に拡大して印刷 |
-y PCK |
指定したファイルの文字コードを PCK に指定 |
-y eucJP |
指定したファイルの文字コードを eucJP に指定 |
-y UTF-8 |
指定したファイルの文字コードを UTF-8 に指定 |
フィルタ固有のオプションの使用例を以下に示します。
sun% lp -P 2,3 -y PCK textfile.pck |
UTF-8 では、日本語 EUC で表現できる文字のみ印刷可能
日本語テキストを印刷するには、プリンタを正しく追加する必要があります。プリンタの追加方法は、ローカルプリンタとして追加するかリモートプリンタとして追加するかによって異なります。
この説明では、プリンタ名を vp5085、プリンタタイプを epson-vp5085、デバイス名を /dev/term/a と仮定しています。
dtterm などの端末エミュレータを起動し、以下を実行します。
sun# lpadmin -p vp5085 -v /dev/term/a -T epson-vp5085 -I None \ -i /usr/lib/lp/model/jstandard sun# lpadmin -d vp5085 sun# accept vp5085 sun# enable vp5085 |
なお、terminfo (-T) と content (-I) は使用するプリンタによって異なります。以下の表を参考にしてください。
コントロールコード |
terminfo (-T) |
content (-I) |
---|---|---|
Canon LASERSHOT |
canon-ls-a408 |
None |
EPSON ESC/P |
epson-vp5085 |
None |
NEC 201PL |
nec-pr201 |
None |
日本語 PostScript |
PS |
postscript |
日本語 dumb プリンタの場合 :
sun# cd /etc/lp/fd sun# lpfilter -f jprconv -F jprconv.fd |
日本語 PostScript プリンタの場合 :
sun# cd /etc/lp/fd sun# lpfilter -x -f postprint sun# lpfilter -f jpostprint -F jpostprint.fd |
*) PCK また UTF-8 のファイルをデフォルトで使用するには jprconv.fd または jpostprint.fd の LC_ALL=ja を LC_ALL=ja_JP.PCK または LC_ALL=ja_JP.UTF-8 に変更してから lpfilter を実行してください。
*) jpostprint を使用する場合は、jpostprint.fd のPrinters の項に使用するプリンタ名を明記してください。ps というプリンタを使用する場合は、Printers:ps となります。
必要に応じて、インタフェースプログラムの構成を変更します。
sun# cd /etc/lp/interfaces sun# vi vp5085 |
たとえば、常にバナーページを印刷しない場合は、インタフェースプログラムを編集して、「Default nobanner」の「nobanner="no"」の部分を「nobanner="yes"」に変更します。
: # # Default nobanner # nobanner="no" : banner page will be printed as default # nobanner="yes" : banner page will not be printed as default # nobanner="yes" : |
*) PCK また UTF-8 のファイルをデフォルトで使用するには 、インタフェースプログラムの LC_ALL=ja を LC_ALL=ja_JP.PCK または LC_ALL=ja_JP.UTF-8 に変更しください。
手順 1 でデバイス名 (lpadmin コマンドのオプション -v の引数) として /dev/bpp0 または /dev/null 以外を指定した場合は、次のように入力して、stty オプションを設定します。
sun# lpadmin -p vp5085 -o "stty=-opost" |
システムをリブートします。
sun# sync;sync;sync;reboot |
dtterm などの端末エミュレータを起動し、以下を実行します。
sun# lpadmin -p vp5085 -s hiraki\!vp5085 |
/etc/printers.conf ファイルを確認します。
printers.conf ファイルの該当するサーバー部分に以下のように「Solaris」が入っていることを確認します。
vp5085:\ :bsdaddr=hirari,vp5085,Solaris: |
以上の手順を終了すると、lp コマンドを使用して、追加したリモートプリンタに出力できます。
ネットワークプリンタとして登録します。
以下の例は、日本語 PostScript プリンタをネットワーク経由で接続した場合の例です。プリンタ側には、あらかじめ以下のように設定されていると仮定します。
Host Name : nwpr2 Printer Name : pspr |
プリンタ側の設定方法については、各プリンタのマニュアルを参照してください。
sun# lpadmin -p pspr -I postscript -T PS -v /dev/null \ -i /usr/lib/lp/model/netstandard -o dest=nwpr2:pspr \ -o protocol=bsd sun# accept pspr sun# enable pspr |
ローカルプリンタの設定方法の手順 2 以降に従ってください。
Solaris オペレーティングシステムでは、日本語 dumb プリンタや日本語 PostScript プリンタでの日本語テキストの印刷をサポートしています。日本語テキストには、JIS X 0212、ユーザー定義文字、ベンダー定義文字を含めることができます。これらの文字を印刷するためには、そのフォントをプリンタサーバー上に正しくインストールする必要があります。ここでは、これらのフォントのインストール方法について説明します。
ユーザー定義文字の作成方法については、第 6 章ユーザー定義文字の登録 (Solaris 外字ツール)を参照してください。
ユーザー定義文字のフォントとしては sdtudctool(1) で出力される PCF フォント、JIS X 0212 とベンダー定義文字のフォントとしては SUNWjxcft に含まれる24 ドットの PCF フォントだけが使用できます。
プリンタサーバー上で次のように操作します。
SUNWjxcft パッケージがインストールされているかどうかを確認します。
sun# pkginfo SUNWjxcft |
SUNWjxcft パッケージがインストールされている場合は、次のようなメッセージが表示されます。
SUNWjxcft Japanese X Window System common fonts |
ここで SUNWjxcft が見つからなかった場合は、次のコマンドを実行します。
sun# pkgadd -d<Solaris CD>/Product SUNWjxcft |
上記 <Solaris CD> には、Solaris CD のインストールイメージがあるディレクトリを指定します。
プリンタサーバー上で次のように操作します。
sdtudctool でユーザー定義文字フォントを作成します。
作成したフォントをインストールします。
sun% cd $HOME/.Xlocale/$LANG/fonts/UDC/Bitmaps sun% su sun# mkdir -p /usr/openwin/lib/locale/$LANG/X11/fonts/UDC/Bitmaps sun# cp UDC24.pcf /usr/openwin/lib/locale/$LANG/X11/fonts/UDC/Bitmaps |
ユーザー定義文字のフォントとしては sdtudctool(1) で出力される Type1 フォント、 JIS X 0212 とベンダー定義文字のフォントとしては SUNWjcs3f に含まれる Type1 フォントだけが使用できます。
プリンタサーバー上で次のように操作します。
SUNWjcs3f パッケージがインストールされているかどうかを確認します。
sun# pkginfo SUNWjcs3f |
SUNWjcs3f パッケージがインストールされている場合は次のようなメッセージが表示されます。
SUNWjcs3f Japanese JIS X0212 Type1 fonts for printing |
ここで SUNWjcs3f が見つからなかった場合は、次のコマンドを実行します。
sun# pkgadd -d<Solaris CD>/Product SUNWjcs3f |
上記 <Solaris CD> には、Solaris CD のインストールイメージがあるディレクトリを指定します。
プリンタサーバー上で次のように操作します。
sdtudctool でユーザー定義文字フォントを作成します。
作成したフォントをインストールします。
sun% cd $HOME/.Xlocale/$LANG/fonts/UDC/Type1 sun% su sun# mkdir -p /usr/openwin/lib/locale/$LANG/X11/fonts/UDC/Type1 sun# cp UDC*.pfa /usr/openwin/lib/locale/$LANG/X11/fonts/UDC/Type1 |
jpostprint を起動し、クライアント側で PostScript ファイルに変換することにより、プリンタサーバーとは異なった独自の外字を印刷することもできます。
sun% /usr/lib/lp/postscript/jpostprint <テキストファイル名> |
この場合は、$HOME/.Xlocale/$LANG/fonts/UDC/Type1 にある外字フォントが使用されます。