CUPS

Fedora Core 4 では spooler に 従来の LPD(the Berkeley Line Printer Daemon) ではなく CUPS(the Common UNIX Printing System) が採用されていました。

man pages:
cupsd(8), backend(1), classes.conf(5), coupsd.conf(5), filter(1), mime.convs(5), mime.types(5), printers.conf(5),
Documentation:
http://localhost:631/documentation.html
online:
http://www.cups.org/documentation.php

プリンタは http://localhost:631/admin より追加できます。手元のプリンタは Canon BJC-455J ですがCanonのドライバはありませんでした。設定できるのは Generic --> textonly のみです。従来のやり方(LPD)ですと /etc/printcap に記述するのですが /etc/init.d/cups を restart すると消えてなくなってしまいます。/usr/share/cups/model 以下に *.ppd というasciiのファイルがないといけないようです。 自分で書くのはちょっと大変なので探してみました。

http://www.linuxprinting.org

このページから Canon BJC-600PPDファイル を取ってきます。

# cp Canon-BJC-600-bjc600.ppd /usr/share/cups/model/
# ls /usr/share/cups/model/
Canon-BJC-600-bjc600.ppd  epson24.ppd.gz  okidata9.ppd.gzstphoto2.ppd.gz
deskjet2.ppd.gzepson9.ppd.gzpostscript.ppd.gz  stphoto.ppd.gz
deskjet.ppd.gzlaserjet.ppd.gzstcolor2.ppd.gz textonly.ppd
dymo.ppd.gzokidat24.ppd.gzstcolor.ppd.gzzebra.ppd.gz

再度 http://localhost:631/admin よりbjc600を追加し Test Page を印刷します。印刷結果は良好でした。ただし印刷できるのは欧文のみで日本語は 印刷できません。

$ gs -h
GNU Ghostscript 7.07 (2003-05-17)
~
Search Path:
. : /usr/share/ghostscript/7.07/lib : /usr/share/ghostscript/fonts :
/usr/share/fonts/default/ghostscript : /usr/share/fonts/default/Type1 :
/usr/share/fonts/default/amspsfnt/pfb :
/usr/share/fonts/default/cmpsfont/pfb : /etc/ghostscript
For more information, see /usr/share/doc/ghostscript-7.07/Use.htm.
Report bugs to bug-gs@ghostscript.com, using the form in Bug-form.htm.

gs -hで短い説明が表示されます。 こちらのバージョンは7.07です。 バージョンによって違いがあるので注意してください。 以下は Ghostscript で漢字(日本語)を表示(印刷)する設定の一例です。

  1. /usr/share/ghostscript/fonts/ に *.ttc または *.ttf などのTrueType フォントを置きます。ここで注意しなければならないのはフォントの著作権です。 例えばあるフォントはそのベンダのOS以外では使用を認めていません。   また別のフォントは表示はかまわないが印刷は禁止などの制限があります。 参考:フリーな和文フォント
  2. /usr/share/ghostscript/7.07/lib/CIDFnmap に以下の2行を追加。
    /Ryumin-Light(??mincho.ttc);
    /gothicBBB-Medium(??gothic.ttc);
    <注> ??mincho.ttc, ??gothic.ttc の部分は /usr/share/ghostscript/fonts に置いたフォント名に置き換えてください。 (gs -h で表示される Search Path: で表示される場所。) 空白はtabで区切ります。 ghostscriptバージョン8.51ではCIDFnmapではなくcidfmapで書式も違います。

日本語が表示できるかテストをします。Postscriptのサンプルは /usr/share/printconf/tests/ にあります。test-euc.ps, test-jis.ps, test-sjis.ps です。 gs ではなぜかwindowが浮いてきませんので display を使いました。(*注1) display は ImageMagick のツール群(convert, identify, composite, montage, compare, display, animate, import, conjure)の一つです。
--> テスト結果(test-sjis.png 20k)

注意しなければならないのはPostscriptに変換するとき テキストが utf8 だと漢字(日本語)が全部四角になるので nkf などで (*注2) utf8 以外(jis, euc, sjis)に変換しなければなりません。 Fedora Core 4 ではデフォルトが utf8 になっています。

*注1

Fedora Core 4ではPostScript,PDFを表示するにはEvinceが用意されています。

`gs -sDEVICE=x11 sample.ps` のように -sDEVICE=x11 が必要。また -dNOSAFFER が必要かも。

*注2

文字コードの変換にはiconvを使います。

$ uname -oirsp
Linux 2.6.13-prep i686 i386 GNU/Linux
$ which iconv
/usr/bin/iconv
$ rpm -qf /usr/bin/iconv
glibc-common-2.3.5-10
 
> uname -mrs
FreeBSD 4.10-RELEASE i386
> pkg_info -W iconv
/usr/local/bin/iconv was installed by package libiconv-1.9.1_3

iconv -l で扱うことのできるすべてのコードが表示されます。例えばutf8のファイル(utf8.txt)をeuc に変換するには

$ iconv -f UTF-8 -t EUC-JP utf8.txt

とします。変換されたものは標準出力されます。参考 : libiconv - GNU Project - Free Software Foundation(FSF)


Sun Oct 23 19:17:49 JST 2005
Fri Feb 10 10:14:19 JST 2006
Sat May 26 16:13:37 JST 2007
Home