  SANE-outline-JP
  川岸 良治 < kawagisi@yk.rim.or.jp <mailto:kawag-
  isi@yk.rim.or.jp> >
  <  <http://www.yk.rim.or.jp/~kawagisi/> >
  第2版 1999年7月13日作成

  この文書は、スキャナ用 API の規格である SANE の概要と、そのパッケージ
  の使い方を簡単に紹介したものです。

  1.  はじめに

       この文書は、スキャナ用 API の規格である SANE の概要と、その
       パッケージの使い方を簡単に紹介したものです。SANE のホームペ
       ージや SANE のパッケージに付属のドキュメントには、非常に多く
       の情報がありますが、このドキュメントでは SANE に興味を持った
       初心者が最初に知りたいと思うであろう SANE のインストール、使
       い方など必要最小限のものにとどめています。

       SANE に関して書かれたものとして、以下のようなものがありま
       す。

       ■ SANE のホームページ  <http://www.mostang.com/sane/>

       FAQ
       Tutorial
       Programmer's Manual
       など
       開発者向けのメーリングリストもあります。

  ■ XSANE のホームページ <http://www.wolfsburg.de/~rauch/sane/sane-
  xsane.html>

  ■ SANE に関する日本語のドキュメント一覧

       (1) SANE-outline-JP (このドキュメント)

       SANE のインストール、使い方など。

  (2) SANE-tutorial-JP

       Linux Journal Issue 47, March 1998 に載った SANE を紹介した
       文献で SANE のホームページで "Tutorial" として公開されている
       ものを翻訳。 JF <  <http://www.linux.or.jp/JF/> > にありま
       す。

  (3) 「Software Design」 1999年7月号34頁 「Linux で画像作成」樋口 千洋
  著
  (4) 「gimp入門」 三浦 一則著、(株)毎日コミュニケーションズ刊
  (5) 「THE GIMP FOR LINUX」 渡辺裕一、古俣信行共著、エーアイ出版刊
  (6) 「GIMP パーフェクトガイド」 Michael J.Hammel著／豊福 剛 訳、エム
  ディエヌコーポレーション刊

  (3)〜(6) は何れも GIMP の解説の中で SANE のインストール、GIMP のプラグ
  インとしての使い方などを紹介しています。

  ■ SANE も含め Linux で使える各種スキャナ用ソフトを紹介したドキュメン
  トとして "Scanner-HOWTO-INDEX" が JF <  <http://www.linux.or.jp/JF/> >
  にあります。

  2.  SANE とは何か

  (SANE のホームページの Introduction より)

       SANE は `Scanner Access Now Easy' の略で、フラットベッドス
       キャナ、ハンドヘルドスキャナ、ビデオカメラ、スチルカメラ、フ
       レームグラバ(画面キャプチャ) 等のようなラスター・イメージス
       キャナ・ハードウェアへのアクセスを標準化した API (Applica-
       tion Programming Interface)です。

       スキャナのインタフェースとして Windows の TWAIN がよく知られ
       ています。 TWAIN はデバイスドライバとユーザインタフェースが
       一体であるのに対して SANE では分離されていて、ドライバを
       Backend、ユーザインタフェースを Frontend と呼んでいます。

       SANE は `Scanner Access Now Easy' の頭文字ではあるが、今日の
       スキャナハードウェアとアプリケーションに要求される全ての機能
       を提供する API の実装が容易にできるという意味で、希望はもち
       ろん SANE は確かに sane である (正気の、考え方の健全な、良識
       ある、分別ある)ということです。

  (SANE のホームページの Tutorial より)

       10 台の異なるデバイスをサポートする、5 種類のアプリケーショ
       ンが欲しいとします。古いアプローチでは、5×10=50 で 50 もの
       プログラムを書かなければなりませんが、SANE では 5+10=15 で
       15 のプログラムを書くだけでよいのです。 SANE はユーザにもメ
       リットがあります。ユーザは自分が最も好きなアプリケーションを
       選択する自由が得られ、ユーザがアクセス可能な全ての画像取込み
       デバイスを制御するために使用できます。つまり SANE は、使用中
       の特定のデバイスに同じ一貫したインタフェースの独立性を与えて
       くれるのです。

       また、SANE ではコマンドラインのインタフェースや、ネットワー
       ク経由のスキャンもサポートしています。

       SANE は、GPL(GNU General Public License) のもとで配布されて
       います。

       対応するプラットホームは以下の通りです。

       AIX,
       Digital Unix,
       FreeBSD,
       HP Apolo Domain/OS,
       HP-UX,
       IRIX,
       Linux (Alpha, m68k, PPC, SPARC, x86),
       NetBSD,
       OpenStep/m68k,
       OpenStep/x86,
       OS/2,
       SCO OpenServer,
       Solaris/Intel,
       Solaris/SPARC,
       SunOS/SPARC

  3.  Backend と Frontend

  3.1.  SANE の Backend がサポートするデバイス

       SANE の パッケージに含まれる Backend (ドライバ) がサポートす
       る機器は現時点で以下のようなものがあります。これにはαテスト
       段階のドライバやデジタルカメラ等スキャナ以外のものも含まれて
       います。

       (SANE のホームページの Supported Scanners より)

    ---------------------------------------------------------------
    メーカ        モデル
    ---------------------------------------------------------------
    Abaton        Scan 300/GS, Scan 300/S
    AGFA          Focus GS Scanner, Focus Lineart Scanne, Focus II,
                  Focus Color,      Focus Color Plus
                  Arcus II, StudioScan II, StudioScan IIsi
                  SnapScan 300, SnapScan 310, SnapScan 600,
                  SnapScan 1236s
    Apple         Apple Scanner, OneScanner, ColorOneScanner
    Artec/Ultima  AT3, A6000C, A6000C PLUS, AT6, AT12
    BlackWidow    BW4800SP
    Canon         CanoScan 300, CanoScan 600, CanoScan 2700F
    Connectix     QuickCam
    (dll)         Dynamic loading of shared-library backends.
    Epson         GT-5500, GT-7000
    Escom         Image Scanner 256
    HP            HP ScanJet Plus,
                  HP ScanJet IIc, HP ScanJet IIp, HP ScanJet IIcx,
                  HP ScanJet 3c,  HP ScanJet 4c,  HP ScanJet 6100C,
                  HP ScanJet 3p,  HP ScanJet 4p,  HP ScanJet 5p,
                  HP ScanJet 6200C, HP ScanJet 6250C,
                  HP PhotoSmart PhotoScanner
    Kodak         DC210, DC25, DC20
    Linotype Hell Jade, Jade2, Saphir, Saphir2, Saphir Ultra,
                  Saphir Ultra II, Saphir HiRes, Opal, Opal Ultra
    Microtek      Scanmaker E6,   Scanmaker E3,  Scanmaker E2,
                  Scanmaker 35t+, Scanmaker III, Scanmaker IISP,
                  Scanmaker IIHR, Scanmaker IIG, Scanmaker II
                  Scanmaker 600Z(S), Scanmaker 600G(S)
                  ScanMaker V300,    ScanMaker V310, ScanMaker V600,
                  ScanMaker E3plus,  ScanMaker X6,   ScanMaker X6EL,
                  ScanMaker 330,     ScanMaker 630,  ScanMaker 636
                  ScanMaker 9600XL,  Phantom 636
    Mustek        MFC-600S,   MFC-600CD, MFS-6000CX, MFS-6000SP,
                  MFS-8000SP, MFC-800S,  MFS-1200SP, MFS-12000CX,
                  SE-6000SP,  SE-12000SP
    (net)         Network access to saned servers
    Nikon         LS-20, LS-1000, AX-210
    PINT          PINT デバイスドライバを使用したスキャナ
    Plustek       Plustek 4830, Plustek 9630, Plustek OpticPro 600
    (pnm)         Reads PNM files
    Polaroid      DMC
    Connectix     QuickCam
    Qtronix       Sagitta Gray, Sagitta Color
    Ricoh         ??
    Siemens       S9036, ST400
    Sharp         JX-610, JX-250, JX-330
    Tamarack      Artiscan 6000C, Artiscan 8000C, Artiscan 12000C,
    UMAX          Vista S6, Vista S6E, UMAX S-6E, UMAX S-6EG,
                  Vista-S8, Supervista S-12, UMAX S-12, UMAX S-12G,
                  Astra 600S, Astra 610S, Astra 1200S, Astra 1220S,
                  UC 630, UG 630, UG 80, UC 840, UC 1200S,
                  UC 1200SE, UC 1260, Mirage , Mirage II,
                  Mirage IIse, Vista-T630, PSD, Powerlook,
                  Powerlook III, PL-II, Powerlook 2000,
                  Powerlook 3000, Gemini D-16
    Vobis         HighScan
    Vobis/Highscreen  Scanboostar Premium
    Vuego         310S

  上記以外にも計画中 (planned) 作成中 ("wip" work-in-progress
  の略) のものがいくつかあります。詳しくは sane パッケージの
  PROJECTS というファイル、および doc ディレクトリ以下にある
  sane-???.man を御覧下さい。
  dll および net は、仮想デバイスドライバです。詳しくは SANE
  のホームページにある Tutorial の "4  How Does It Work?" をご
  覧下さい。

  3.2.  Frontend

       SANE の Backend と組み合わせて使用できる Frontend(ユーザイン
       タフェース) として以下のようなものがあります。

       (SANE のホームページの Supported Scanners より)

       (1) scanimage

       コマンドライン上で動作する。SANE のパッケージに含まれる。

  (2) xscanimage

       X 上で動作する。SANE の パッケージに含まれる。

  (3) xsane

       X 上で動作する。xscanimage をベースに機能追加したもの。
       <http://www.wolfsburg.de/~rauch/sane/sane-xsane.html>

  (4) Gimp

       xscanimage または xsane をプラグインとして使用する。

  (5) xcam

       デジタルカメラ用。SANE のパッケージに含まれる。

  (6) saned

       リモートスキャン用の SANE ネットワークデーモン。SANE のパッ
       ケージに含まれる。

  4.  パッケージの入手と展開

  4.1.  パッケージの入手先

       (1) SANE のホームページ

       <http://www.mostang.com/sane/>

  (2) SANE のソースパッケージは、下記にあります。

       ここには、tar.gz 形式のソースがあります。このドキュメントの
       作成時点での最新版は
       sane-1.0.1.tar.gz   21,Apr,1999  (973 KB)
       です。

  公式サイト：
  <ftp://ftp.mostang.com/pub/sane/>    (USA)
  <ftp://ftp.de.mostang.com/pub/sane/> (Germany)
  <ftp://ftp.no.mostang.com/pub/sane/> (Norway)

  ミラーサイト：
  <ftp://tsx-11.mit.edu/pub/linux/packages/sane>
  <ftp://metalab.unc.edu/pub/Linux/apps/graphics/capture/>
  <ftp://ftp.u-aizu.ac.jp/pub/misc/device/scsi/scanner/sane/>

  (3) SANE のバイナリパッケージは、下記にあります。

       RPM 形式
       <http://rufus.w3.org/linux/RPM/sane.html>

       DEB 形式
       <http://www.debian.org/Packages/unstable/graphics/sane.html>

       OS/2 用
       <http://www.quasarbbs.com/yuri/sane2.html>

  4.2.  パッケージの展開

       (1) tar.gz 形式のソースパッケージは、次のようにして展開しま
       す。

       $ su
       # cd /usr/local/src
       # tar zxvf ~/sane-x.x.x.tar.gz

       上記は ~/ ディレクトリにある sane-x.x.x.tar.gz を
       /usr/local/src ディレクトリ以下に展開する場合です。それ以外
       の時はそのディレクトリに合わせて変えてください。

  (2) RPM 形式、DEB 形式のバイナリパッケージは、それぞれの方法で展開しま
  す。

  5.  インストール

       ソースパッケージを展開したら以下のようにしてインストールしま
       す。バイナリパッケージの場合は、下記のビルド等の処理は不要で
       す。

  5.1.  必要なもの

  (README より)

       SANE をビルドするには以下のものが必要ですから確認しておきま
       しょう。

       ■ GNU make: バージョン 3.70 またはそれより新しいもの。
       【訳注】 $ make -v でバージョンを確認できます。

       ■ ANSI C コンパイラ: GNU C (gcc)

  ■ グラフィカルなフロントエンド (xscanimage と xcam) をビル
  ドするには GTK ライブラリ(libgtk, libgdk, libglib) と間連す
  るヘッダーファイルがインストールされている必要があります。

  ■ Gimp から xscanimage を呼び出して使いたい場合は、さらに
  libgimp (バージョン 0.99.13 またはそれ以上)と間連するヘッダ
  ーファイルがインストールされている必要があります。

  【訳注】これらのライブラリがインストールされているかどうかは
  /usr/lib を見れば分かります。

  GTKライブラリと Gimp は下記から入手できます。
  <ftp://ftp.gimp.org/pub/>

  5.2.  Configuration

  (README より)

       SANE のトップディレクトリ(先程の例では
       /usr/local/src/sane-X.XX)に移りコンフィグレーションのスクリ
       プトを実行します。

       # cd /usr/local/src/sane-X.XX
       # ./configure

       通常の GNU configure オプションに加えて下記の SANE 固有のオ
       プションがあります。

       --disable-shared

       シェアード(共有)ライブラリを使用しない。デバッグ時または、
       シェアードライブラリのビルドに問題がある場合に有効です。これ
       は暗黙的に --disable-dynamic もオンにします。

  --disable-dynamic

       (dll backend の中の)バックエンドをダイナミックローディングし
       ないようにします。通常 configure は適切なヘッダーファイルと
       ライブラリ (<dlfcn.h> と -dl)を見つけることができる場合はダ
       イナミックローディングをオンにします。

  --enable-preload

       DLL バックエンドにバックエンドをプリロードします。これはダイ
       ナミックローディングを利用できない場合のデバッグ、または実行
       時のリンクのオーバーヘッドを減らすのに役立ちます。ダイナミッ
       クローディング、またはシェアードライブラリが利用できないか、
       ディスエーブルになっている場合、このオプションは自動的にオン
       になります。

  これらの SANE-specific オプション以外にも標準のオプションがたくさんあ
  ります。どんなオプションがあるかは --help オプションで分かります。

  デバッグする場合は下記のように configure を実行することを推奨します。
  # CFLAGS="-g -O -Wall" ./configure --disable-shared

  【訳注】 PROBLEMS というファイルを読んでおくようにというメッセージが表
  示されます。何らかのトラブルが起こる前に一度目を通しておくと良いでしょ
  う。

  5.3.  ビルド、インストール、設定

  (README より)

       # make
       # make install

       デフォルトでは、これで各ファイルが次のディレクトリに置かれま
       す。
       /usr/local/lib/        ：SANE のライブラリ
       /usr/local/etc/sane.d/ ：設定ファイル
       /usr/local/man/        ：マニュアルページ

       これとは別の所に置きたい場合は、configure のオプションで変更
       できます。

       設定、トラブルシューティング、SANE の各コンポーネントに関す
       る情報は以下のマニュアルページを御覧下さい。

         -------------------  --------------------------------
         scanimage            scanimage(1)
         xscanimage           xscanimage(1)
         saned                saned(1)
         xcam                 man-page はありません。
                              frontend/xcam.README を参照。
         -------------------  --------------------------------
         Abaton   スキャナ    sane-abaton
         AGFA     スキャナ    sane-agfafocus
         Apple    スキャナ    sane-apple
         EPSON    スキャナ    sane-epson
         HP       スキャナ    sane-hp(5)      sane-scsi(5)
         MICROTEK スキャナ    sane-microtek   sane-microtek2
         Mustek   スキャナ    sane-mustek(5)  sane-scsi(5)
         PINT     スキャナ    sane-pint(5)
         Polaroid スキャナ    sane-dmc
         Sharp    スキャナ    sane-sharp
         UMAX     スキャナ    sane-umax(5)    sane-scsi(5)
         -------------------  --------------------------------
         Dynamic loading      sane-dll(5)
         Networking           sane-net(5)     saned(1)
         QuickCam カメラ      sane-qcam(5)
         Kodak    カメラ      sane-dc25
         frontend デバッグ用  sane-pnm
         -------------------  --------------------------------

       デフォルトの設定では、トップレベルのバックエンドとして sane-
       dll を使うという点に注意してください。ですから sane-dll(5)
       を読みながら始めるというのは良い考えです。トップレベルのバッ
       クエンドは /usr/local/lib/ の libsane.* へのシンボルリンクに
       よって決定されます。

  6.  find-scanner と scanimage で動作確認

       【訳注】SCSI スキャナの認識

       SCSI ホストアダプタ用のローレベルの SCSI カーネルドライバ
       と、 genelic (汎用) SCSI ドライバがモジュールとしてコンパイ
       ルされているなら、スキャナの電源を ON してから、ドライバモ
       ジュールをロードします。そうでなければ、スキャナの電源を ON
       してから、システムをリブートする必要があります。スキャナがシ
       ステムに認識されているかは、次のようにして確認できます。
    $ cat /proc/scsi/scsi
    Attached devices:
    Host: scsi0 Channel: 00 Id: 06 Lun: 00
      Vendor:          Model: Scanner          Rev: 1.80
      Type:   Scanner                          ANSI SCSI revision: 02

  【訳注終り】

  (README より)

  接続されているスキャナの SCSI デバイス名が分からない場合は
  tools ディレクトリにある find-scanner コマンドを試してみま
  しょう。通常は、引数無しでプログラムを起動すればよいでしょ
  う。このコマンドを起動すると下記とよく似た出力が得られる筈で
  す。

    # tools/find-scanner
    find-scanner: found "MUSTEK MFC-06000CZ 1.01" at device /dev/scanner
    find-scanner: found "MUSTEK MFC-06000CZ 1.01" at device /dev/sge

  【訳注】私の Microtek ScanMaker E3 での例

  # tools/find-scanner
  で、
  find-scanner: found scanner " Scanner 1.80" at device
  /dev/sga
  と表示され、スキャナが /dev/sga に接続されていることを認識し
  ました。
  これを /dev/scanner にリンクします。

  # ln -s /dev/sga /dev/scanner

  次に利用可能なデバイス名を表示させます。

    # scanimage -L
    device `microtek:/dev/scanner' is a Microtek ScanMaker E3 flatbed scanner
    device `microtek:/dev/sga' is a Microtek ScanMaker E3 flatbed scanner

  この場合 microtek:/dev/scanner がデバイス名です。
  【訳注終り】

  デバイスの認識で何らかの問題が起きた場合、それらの問題のデ
  バッグを助けるための色々な環境変数の設定を試して下さい。環境
  変数は関連するマニュアルページに記述されています。例え
  ば、Mustek のスキャナをテストする際に Mustek のスキャナのデ
  バッグに関する最大量の情報を得るには SANE_DEBUG_DLL,
  SANE_DEBUG_MUSTEK, SANE_DEBUG_SANEI_SCSI 環境変数を128 に
  セットしてから scanimage (または、デバッグしようとする全ての
  プログラム)を起動してください。

  /dev/scanner に Mustek のスキャナがある場合、scanimage を起
  動するには下記のようにします。

  # scanimage -d mustek:/dev/scanner -h

  これがうまくいけば次のようにして画像を取り込むことができま
  す。

  # scanimage -d mustek:/dev/scanner > t.pnm

  【訳注】一般ユーザもスキャナにアクセスできるようにするには？

  特に設定をしなければ、

    # ls -l /dev/sga
    crw-------   1 root   root   21,   0 Jul 19  1994 /dev/sga

  のように一般ユーザはアクセスできないようになっていると思いま
  す。これを

    # chmod 666 /dev/sga
    # ls -l /dev/sga
    crw-rw-rw-   1 root   root   21,   0 Jul 19  1994 /dev/sga

  のようにすれば一般ユーザも使用できるようになります。

  【訳注終り】

  7.  xscanimage

  7.1.  xscanimage を単独で使用する

       scanimage コマンドでスキャナが動作することが確認できたら、X
       上で xscanimage を使ってみましょう。 xscanimage は、プレビュ
       ー機能およびスキャナから取り込んだ画像を PNM フォーマット
       (PBM:白黒2階調画像、PGM:グレースケール、PPM: カラー の3つの
       フォーマットの総称)でセーブする機能があります。これらは
       xscanimage 単独でも動作しますし、後述のように Gimp などのプ
       ラグインとして呼び出して使うこともできます。起動は、

       $ xscanimage デバイス名 &

       と入力します。または引数無しで、単に

       $ xscanimage &

       で、利用可能なデバイスを一覧表示したウィンドウが表示されるの
       で、その中から選択します。コマンドのオプション、設定ファイル
       の内容など詳しくは、

       $ man xscanimage

       でマニュアルを御覧ください。

  7.2.  メニューの日本語化

       Gimp を始め GTK+-1.0.x を使ったアプリケーションでは GtkConv
       というパッチをあてることによりメニューの文字列を各国語に変換
       することが簡単にできます。英語アプリの文字列をどのように変換
       するかを定義したファイルを作成して menu.xxxx というファイル
       名で ~/.gtk ディレクトリに置くだけです。 xxxx の部分は、その
       アプリと同じ名前にします。従って Gimp の場合は
       ~/.gtk/menu.gimp で xscanimage の場合は、
  ~/.gtk/menu.xscanimage となります。また GTK+-1.0.x を使った
  アプリ全般に共通の内容を定義したmenu.default もあります。現
  在使用している Gimp が既に GtkConv で日本語化されている場合
  は、 menu.xxxx の内容を参考にするとよいでしょう。英語の文字
  列と日本語の文字列を TAB で区切るというのがポイントです。
  TAB で始まる行は、行末までコメントになります。

  なお、GTK+-1.2.x では I18N (国際化)されているので、上記の方
  法によるメニューの日本語化がうまくいくかどうかは分かりませ
  ん。インストール済みの GTK＋ のバージョンは、次のようにすれ
  ば表示されます。

  $ gtk-config --version

  詳しくは下記 GtkConv のホームページをご覧下さい。
  <http://www.hi-ho.ne.jp/~asura/menu/gtk.html>

  参考までに私が作った ~/.gtk/menu.xscanimage ファイルの内容を
  示します。

  ____________________________________________________________
          -*-coding: euc-japan -*-
          Time-stamp: <99/06/03 02:15:29 kawa>
          Copyright (C) 1999 Ryoji Kawagishi <kawagisi@yk.rim.or.jp>

  Preferences             設定
  Show advanced options   詳細オプションを表示
  Show tooltips           ツールチップスを表示
  Length unit             長さの単位
  millimeters             ミリメートル
  centimeters             センチメートル
  inches                  インチ
  Preview options...      プレビューオプション...
  Save device settings    デバイス設定を格納
  Restore device settings デバイス設定を読込む

  Output                  出力
  Filename                ファイル名
  Scan Mode               スキャンモード
  Scan mode               スキャンモード
  Color                   カラー
  Gray                    グレイ
  Halftone                中間調
  LineArt                 ラインアート
  Scan resolution [dpi]   スキャン解像度[dpi]
  Expanded Resolution     Expanded 解像度
  Scan speed              スキャン速度

  Enhancement             エンハンスメント
  Exposure [%]            露出 [%]
  Brightness [%]          明るさ [%]
  Contrast [%]            コントラスト [%]
  White level             白レベル
  Black level             黒レベル
  Midtone Level           中間調レベル

  Gamma Control           ガンマ制御
  Gamma Control Mode      ガンマ制御モード
  None                    無し
  Scalar                  スカラ
  Table                   テーブル
  How to specify gamma correction, if at all      ガンマ補正の指定方法

  Geometry                ジオメトリ
  Top-left x [cm]         左上 x [cm]
  Top-left y [cm]         左上 y [cm]
  Bottom-right x [cm]     右下 x [cm]
  Bottom-right y [cm]     右下 y [cm]
  Top-left x [mm]         左上 x [mm]
  Top-left y [mm]         左上 y [mm]
  Bottom-right x [mm]     右下 x [mm]
  Bottom-right y [mm]     右下 y [mm]
  Top-left x [in]         左上 x [インチ]
  Top-left y [in]         左上 y [in]
  Bottom-right x [in]     右下 x [in]
  Bottom-right y [in]     右下 y [in]

  Scan                    スキャン
  Preview Window          プレビュー窓
  ____________________________________________________________

  8.  Gimp で SANE(xscanimage)を使う

  (xscanimage の man ページより)

       Gimp の下で xscanimage を実行するには、xscanimage を Gimp の
       plug-ins ディレクトリの一つにコピーするだけです。ディスクス
       ペースを大切に使いたいなら、その代わりに symlink(シンボリッ
       クリンク) を作ることもできます。例えば、以下のコマンド：

       $ ln -s @BINDIR@/xscanimage ~/.gimp/plug-ins/

       は、xscanimage のバイナリ用の symlink をユーザの plug-ins
       ディレクトリに追加します。この symlink を作成すると、次回
       Gimp を起動した時に xscanimage は Gimp から問い合わせがあり
       ます。それ以降 xscanimage は "Xtns -> Acquire Image ->
       Device dialog..." メニューエントリを通して起動されます。

       【訳注１】上記のコマンドは具体的には、例えば
       $ su
       # ln -s /usr/local/bin/xscanimage ~/.gimp/plug-ins/
       のようになります。

       【訳注２】メニューの "Xtns -> Acquire Image" は、
       日本語化された Gimp では "拡張 -> 画像読取り" と表示されま
       す。

       【訳注終り】

       "Xtns -> Acquire Image" メニューの中に、xscanimage がクエリ
       ーされたときに利用できる SANE デバイスへのショートカットがあ
       ることに気付くでしょう。例えば最初の PNM 疑似デバイスは典型
       的に "Xtns -> Acquire" "Image -> pnm:0" ショートカットとして
       利用できます。Gimp はこれらのショートカットを
       ~/.gimp/pluginrc で見つけるという点に注意して下さい。従っ
       て、利用できるデバイスのリストを変更（例えば新しいスキャナを
       インストール）した場合、一般的にはこのキャッシュを再構築する
       ことが望ましいです。それには、xscanimage バイナリを touch で
       タイムスタンプを変更する、例えば

       $ touch  @BINDIR@/xscanimage

       のようにするか、または plug-ins キャッシュを削除、例えば

       $ rm ~/.gimp/plug-ins

       とします。いずれの方法でも、その後 Gimp を起動した際に
       pluginrc が再構築されます。

       【訳注３】 touch は指定したファイルのアクセス時刻（access
       time) と修正時刻（modificaion time）を現在の時刻に変更するコ
       マンドです。指定したファイルが存在しない場合は、空のファイ
       ル(サイズが０)を新規に作成します。［JMAN の日本語マニュアル
       ページより引用］

       【訳注４】 xscanimage コマンドのオプション、設定ファイルの内
       容など詳しくは、 $ man xscanimage でマニュアルを御覧下さい。

  9.  xsane

  9.1.  特徴

  (xsane のホームページより)

  xsane は、X でSANE を使うための新しい Frontend (GUI) です。
  Xsane には、以下の動作モードがあります。

  (1) Scan モード (スタンドアロン)

       scan モードは、画像をスキャンしファイルにセーブします。

  (2) Gimp プラグイン

       Gimp プラグインモードの場合、スキャンした画像は自動的に Gimp
       に転送されます。

  (3) Copy モード

       Copy モードの場合、スキャンした画像はポストスクリプト形式に
       変換されます。ポストスクリプトファイルは、プリンタシンボルの
       後にリストされたコマンドに標準入力としてパイプされます。

  (4) Fax モード

       Fax モードは、SANE 用の Frontend であり、hylafax または
       mgetty+sendfax のようなファクスプログラム用です。

  9.2.  入手

       下記から xsane-0.28.tar.gz を入手します。
       <http://www.wolfsburg.de/~rauch/sane/sane-xsane.html>

       xsane を使用するには gtk-1.0.x または 1.2.x と glib がインス
       トールされている必要があります。また xsane を Gimp のプラグ
       インとして使う場合は、 gtk-1.2.x と gimp-1.0.4 を使用するこ
       とを推奨します。

  9.3.  必要なもの

  (xsane のホームページより)

       ■ sane-1.0 または、それ以上。sane-1.0.1 を推奨。

       sane を rpm でインストールしている場合、xsane をコンパイルす
       るには sane-devel-rpm も必要です。

  ■ gtk-1.0.x または 1.2.x と glib がインストールされていること

       xsane と Gimp を使用したい場合は、gtk-1.2.x 以上と
       gimp-1.0.4 を推奨します。gimp-1.1.3 でも動作します(SuSE-6.1
       でテスト済)

  ■ jpeg サポート: jpeglib
  ■ png  サポート: lipng と libzlipng
  ■ tiff サポート: libtiff
  ■ gcc コンパイラ(gcc-v2.7.2.3 と gcc-egcs-1.1.2 でテスト済) g++/c++
  コンパイラは使わないこと。

  9.4.  コンパイルとインストール

       (1) アーカイブを展開します。

       $ tar zxvf xsane-x.xx.tar.gz

  (2) 展開したディレクトリに移動します。

       $ cd xsane-x.xx

  (3) コンパイルし、make します。

       $ ./configure
       $ make

  (4) root になって、インストールします。

       $ su
       # make install

  9.5.  起動と日本語化

       $ xsane &

       と入力します。

       Gimp の plug-in として使うには、下記のように xsane のバイナ
       リのシンボリックリンクをユーザの plug-ins ディレクトリに追加
       します。

       $ ln -s /usr/local/bin/xsane ~/.gimp/plug-ins/

       Gimp のメニューで "Xtns -> Acquire Image -> Device
       dialog..." を選択すると xsane が起動されます。

       メニューの日本語化は、xscanimage と同様です。xscanimage の日
       本語化に関する説明を参考にして ~/.gtk/menu.xsane を作成して
       下さい。

  9.6.  うまくいかない場合

  (xsane のホームページより)

       ■ libsane-dll.so.1 が見つからないというエラーメッセージが出
       る場合

       SANE ライブラリがどこにインストールされたのかを、システムに
       教える必要があります。linux の場合 /etc/ld.so.conf を編集
       し、ライブラリのパス (通常 /usr/local/lib/sane)を書いた行を
       追加してから、root 権限で # ldconfig を実行します。

       SuSE-linux ディストリビューションの場合、/etc/ld.so.conf.in
       を編集しライブラリにパス(通常 /usr/local/lib/sane)を教える行
       を追加します。次に、ルート権限で SuSEconfig をコールします。

  ■ オンライン・ヘルプビューアを選択できます。

       KDE を使用している場合は setup/display の kdehelp が使えま
       す。あらかじめ選択されているのは、リモートコマンドの使い方が
       付いた netscape です。SuSE システムでは、パスの中にあるのは
       "netscape" ではなく "Netscape" となっているものがあります。
       このような場合、下記のようにシンボリックリンクを張る必要があ
       ります。

       # ln -s /usr/bin/Netscape /usr/bin/netscape

       【訳注】日本語化した Netscape で起動コマンドが
       /usr/local/bin/jcommunicator となっている場合、上記と同様に

       # ln -s /usr/bin/jcommunicator /usr/bin/netscape

       とします。また、事前に Netscape Communicator を起動しておく
       必要があります。【訳注終り】

  ■ xsane のコンパイルで下記のようなエラーが出た場合：

       /usr/lib/libgimp.so: undefined reference to `g_debug'
       /usr/lib/libgimp.so: undefined reference to `g_message'
       /usr/lib/libgimp.so: undefined reference to `g_warning'
       /usr/lib/libgimp.so: undefined reference to `g_error'

       これは gtk をアップデートしたけれど、Gimp を正しいバージョン
       にしなかったのです。Gimp を 1.0.4 以上にアップデートしましょ
       う。

  10.  この文書について

       この文書は

       (1) SANE のホームページ  <http://www.mostang.com/sane/>
       (2) sane-1.0.1.tar.gz パッケージ内のドキュメント (README,
       xscanimage の man ページ)
       (3) xsane-0.28.tar.gz パッケージ内のドキュメント

  から、その一部を引用、翻訳し、加筆したものです。引用および翻訳について
  は SANE プロジェクトの了承を得ました。

  履 歴：

       第1版 1999年7月 7日
       第2版 1999年7月13日 ~ が空白になってしまうのを修正。 <url>
       タグの記述方法を修正。

  版権等： 引用した元の文書と同様に、この文書も GPL(GNU General Public
  License) に従います。

  謝  辞：この文書の校正に際し、以下の JF メンバーの方からアドバイスを頂
  きました。有難うございます。

       早川  仁さん < uv9h-hykw@asahi-net.or.jp >
       中野 武雄さん < nakano@apm.seikei.ac.jp   >
       岡本 一幸さん < ikko-@pacific.rim.or.jp   >

  連絡先： この文書の誤り等の指摘、質問、改良に関する提案、ご意見等は
  Ｒ．川岸 < kawagisi@yk.rim.or.jp >
  または JF プロジェクト <JF@linux.or.jp> 宛にお願いします。

