JFP ユーザーズガイド

日本語プリンタに関する設定

JFP では、LP 印刷サービスを使用して、ドットマトリックス漢字プリンタ (EPSON VP-5085 、 NEC PC-PR201)、日本語ページプリンタ (Canon LASERSHOT)、日本語 PostScript プリンタで日本語テキストを印刷するために、これらの変換フィルタ群を提供します。

日本語 dumb プリンタのサポート

JFP では、LP 印刷サービスを使用して、ドットマトリックス漢字プリンタ (EPSON VP-5085、 NEC PC-PR201)、日本語ページプリンタ (Canon LASERSHOT) で日本語テキストを印刷できます。

EPSON VP-5085 用のデータベースは EPSON ESC/P の ESC/P24-J84 に準拠したコントロールコード、NEC PR201 用のデータベースは NEC 201PL に準拠したコントロールコードを使用しています。そのため JFP では、これらのコントロールコードをサポートする他のプリンタでも日本語テキストを印刷できます。

提供されるファイル

JFP では、日本語 dumb プリンタをサポートするために以下のファイルを提供します。

表 4-1 日本語 dumb プリンタのサポート用に提供されるファイル

プロセッサの種類 

キーボードの種類 

/usr/share/lib/terminfo/c/canon-ls-a408

Canon LASERSHOT A408 用の terminfo データベース (Canon LASERSHOT の LIPS に準拠)

/usr/share/lib/terminfo/e/epson-vp5085

EPSON-VP5085 用の terminfo データベース (EPSON ESC/P の ESC/P24-J84 に準拠)

/usr/share/lib/terminfo/n/nec-pr201

NEC PR201 用の terminfo データベース (NEC 201PL に準拠)

/usr/lib/lp/text/jprconv

日本語テキスト印刷フィルタ 

/usr/lib/lp/text/jprconv.conf

日本語テキスト印刷フィルタ用設定ファイル 

/etc/lp/fd/jprconv.fd

日本語テキスト印刷フィルタ記述子ファイル 

/usr/lib/lp/model/jstandard

日本語プリンタ・インタフェースプログラム 

lp のプリンタ固有オプション

日本語プリンタ・インタフェースプログラムでは、標準のインタフェースプログラムに表 4-2 に示すプリンタ固有のオプションが追加されています。その他のオプションは標準インタフェースプログラムと同じです。詳細は、lp(1) のマニュアルページを参照してください。

表 4-2 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

jprconv フィルタ固有のオプション

以下のフィルタ固有のオプションが lp を通して利用可能です。

表 4-3 jprconv フィルタ固有のオプション

オプション 

内容 

-y PCK

指定したファイルの文字コードを PCK に指定 

-y eucJP

指定したファイルの文字コードを eucJP に指定 

-y UTF-8

指定したファイルの文字コードを UTF-8 に指定 

フィルタ固有のオプションの使用例を以下に示します。

sun% lp -y PCK textfile.pck

制限事項

日本語テキスト印刷フィルタを使用する場合、次の制限事項があります。

制限事項

日本語 PostScript プリンタのサポート

JFP では、日本語 PostScript プリンタで日本語テキストを印刷できます。日本語 PostScript プリンタに日本語テキストを印刷する方法は、jtops(1) を用いてクライアント側で PostScript に変換して、プリンタサーバーに渡す方法とサーバー側で変換する方法があります。ここでは、サーバー側で変換する方法を使用する場合のプリンタの設定方法について説明します。

提供されるファイル

JFP では、日本語 PostScript プリンタをサポートするために以下のファイルを提供します。

表 4-4 日本語 PostScript プリンタのサポート用に提供されるファイル

/usr/share/lib/terminfo/c/canon-ls-a408

Canon LASERSHOT A408 用の terminfo データベース (Canon LASERSHOT の LIPS に準拠)

/usr/lib/lp/postscript/jpostprint

日本語テキストを日本語 PostScript に変換するフィルタ 

/usr/lib/lp/postscript/jpostprint.conf

上記フィルタの設定ファイル 

/etc/lp/fd/jpostprint.fd

上記フィルタの記述子ファイル 

jpostprint フィルタ固有のオプション

以下のフィルタ固有のオプションが lp を通して利用可能です。

表 4-5 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

制限事項

プリンタの追加方法

日本語テキストを印刷するには、プリンタを正しく追加する必要があります。この場合、ローカルプリンタとして追加するか、リモートプリンタとして追加するかによって追加方法が異なります。

まず、各プリンタに共通する手順を説明します。


注 -

x86 上にプリンタデバイスが存在しない場合は、『Solaris 情報ライブラリ (Intel 版)』の「デバイスの構成」を参照してあらかじめプリンタデバイスを正しく作成しておく必要があります。


  1. システムの電源を切ります。

  2. システムとプリンタをプリンタケーブルで接続します。

  3. システムの電源を入れ、Solaris を起動します。

  4. スーパーユーザーになります。


    注 -

    一般ユーザーでシステム管理ツール (Admintool) を使用する際は、sysadmin グループ (GID 14) の一員になる必要があります。


  5. まだ起動していなければ、Solaris CDE または OpenWindows を起動します。

次に、各プリンタに固有の手順について説明します。

ローカルプリンタとして追加する場合

Admintool を使用してローカルプリンタを追加する方法を説明します。


注 -

Admintool の詳細は、『Solaris のシステム管理』を参照してください。


この説明では、プリンタ名を vp5085、プリンタタイプを epson-vp5085、デバイス名を /dev/term/a と仮定しています。

以下に手順を示します。

  1. Admintool を起動します。

    sun# admintool &
    

    Graphic
  2. 「ブラウズ」上をクリックして、「プリンタ」を選択します。

  3. 「編集」上をクリックして「追加」を選択し、さらに「ローカルプリンタ...」を選択します。

    以下のウィンドウが表示されます。

    Graphic
  4. 「プリンタ名」テキストフィールドに、ローカルプリンタ名を入力します (この例では vp5085)。

  5. 「プリンタポート」上でマウスのメニューボタンを押し、該当するデバイスを選択します (この例では /dev/term/a)。

  6. 「プリンタタイプ」上でマウスのメニューボタンを押し、「その他...」を選択します。そして、表示されるポップアップウィンドウに、以下の表から該当するプリンタタイプを入力し、「了解」ボタンを押します (この例では、epson-vp5085)。

    表 4-6 プリンタタイプ

    コントロールコード

    プリンタタイプ

    Canon LASERSHOT 

    canon-ls-a408 

    EPSON ESC/P 

    epson-vp5085 

    NEC 201PL 

    nec-pr201 

    日本語 PostScript 

    PostScript 

  7. 「ファイルの形式」上でマウスのメニューボタンを押し、「None」を選択します。

  8. プリンタを、デフォルトプリンタとしてシステムに追加したい場合は、オプションの「デフォルトプリンタ」のチェックボックスをチェックします。

  9. 「了解」ボタンをクリックします。

    Graphic
  10. 次のように入力して、印刷フィルタを登録します。

    日本語 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
    

  11. 必要に応じて、インタフェースプログラムの構成を変更します。

    常に、バナーページを印刷しないなどの場合は、インタフェースプログラムを次のように編集してください。

    sun# cd /usr/lib/lp/model
    sun# vi jstandard
    

    "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"
    :

  12. 次のように入力してインタフェースプログラムを登録します。

    -p の後には、手順 4のプリンタ名の設定で入力したプリンタ名を入力します (この例では vp5085)。

    sun# lpadmin -p vp5085 -i /usr/lib/lp/model/jstandard
    

  13. 手順 5 の印刷ポートの設定でデバイスとして /dev/bpp0 以外を指定した場合は、次のように入力して、stty オプションを設定します。

    sun# lpadmin -p vp5085 -o "stty=-opost"
    

  14. システムをリブートします。

    sun# sync;sync;sync;reboot
    

リモートプリンタとして追加する場合

ここでは、Admintool を使用してリモートプリンタを追加する方法を説明します。


注 -

Admintool の詳細は、『Solaris のシステム管理』を参照してください。


以下に手順を示します。

  1. Admintool を起動します。

    sun# admintool &
    

    Graphic
  2. 「ブラウズ」上をクリックして、「プリンタ」を選択します。

  3. 「編集」上をクリックして「追加」を選択し、さらに「プリンタへのアクセス...」を選択します。

    以下のウィンドウが表示されます。

    Graphic
  4. 「プリンタ名」テキストフィールドに、リモートプリンタ名を入力します (この例では vp5085)。

  5. 「印刷サーバ」テキストフィールドに、リモートプリンタを接続するシステム名を入力します (この例では hiraki)。

  6. プリンタをシステムのデフォルトプリンタにしたい場合は、オプションの「デフォルトプリンタ」のチェックボックスをチェックします。

  7. 「了解」ボタンをクリックします。

  8. printers.conf ファイルを編集します。

    sun# cd /etc
    sun# vi printers.conf
    

    vi などで printers.conf ファイルの該当するサーバー部分 ":bsdaddr=hiraki,sparc140:" に、以下のように「Solaris」を追加します。

    :bsdaddr=hiraki,sparc140,Solaris:
    

以上の手順が終了すると、lp コマンドを使用して、追加したリモートプリンタに出力できます。ここで設定したプリンタの利用法に関しては、第 6 章「日本語環境用 SunOS コマンド」を参照してください。

JIS X 0212、ユーザー定義文字、ベンダー定義文字の印刷サポート

JFP では、日本語 dumb プリンタや日本語 PostScript プリンタでの、JIS X 0212、ユーザー定義文字、およびベンダー定義文字を含む日本語テキストの印刷をサポートしています。これらの文字を印刷するためには、そのフォントをプリンタサーバー上に正しくインストールする必要があります。ここでは、これらのフォントのインストール方法について説明します。

ユーザー定義文字とベンダー定義文字の定義領域に関しては、第 2 章「日本語ロケール」を参照してください。また、ユーザー定義文字の作成方法は、第 14 章「ユーザー定義文字の登録 (Solaris 外字ツール)」を参照してください。

日本語 dumb プリンタで使用する場合

ユーザー定義文字のフォントは sdtudctool(1) で出力される PCF フォント、JIS X 0212 とベンダー定義文字のフォントは SUNWjxcft に含まれる24 ドットの PCF フォントだけが使用できます。

フォントのインストール方法

プリンタサーバー上で以下を実行します。

  1. SUNWjxcft パッケージがインストールされているかどうかを確認します。

    sun# pkginfo SUNWjxcft
    

  2. SUNWjxcft パッケージがインストールされている場合は、次のようなメッセージが表示されます。

    sun# SUNWjxcft Japanese X Window System common (not required) fonts
    

  3. ここで SUNWjxcft が見つからなかった場合は、次のコマンドを実行します。

    sun# pkgadd -d <Solaris CD>/Product SUNWjxcft
    

    上記 <Solaris CD> は、Solaris CD のインストールイメージがあるディレクトリを指定します。

  1. sdtudctool でユーザー定義文字フォントを作成します。

  2. 作成したフォントをインストールします。

    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
    

日本語 PostScript プリンタで使用する場合

ユーザー定義文字のフォントは sdtudctool(1) で出力される Type1 フォント、 JIS X 0212 とベンダー定義文字のフォントは SUNWjcs3f に含まれるType1 フォントだけが使用できます。

フォントのインストール方法

プリンタサーバー上で以下を実行します。

  1. SUNWjcs3f パッケージがインストールされているかどうかを確認します。

    sun# pkginfo SUNWjcs3f
    

  2. SUNWjcs3f パッケージがインストールされている場合は次のようなメッセージが表示されます。

    sun# SUNWjcs3f Japanese JIS X0212 Type1 fonts for printing
    

  3. ここで SUNWjcs3f が見つからなかった場合は、次のコマンドを実行します。

    sun# pkgadd -d <Solaris CD>/Product SUNWjcs 
    

    上記 <Solaris CD> は、Solaris CD のインストールイメージがあるディレクトリを指定します。

  1. sdtudctool でユーザー定義文字フォントを作成します。

  2. 作成したフォントをインストールします。

    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 にある外字フォントが使用されます。