============================================================================= scanner-HOWTO-tkscan (第2版) "TkScan" コマンドライン・スキャナドライバ用 GUI プログラム このドキュメントは、コマンドライン・スキャナドライバ用の GUI プログラム である TkScan Version 0.8 に付属の下記の3つのドキュメントを作者 Hang-Bae Kim 氏の許可を得て翻訳したものです。 なお README.tcl と GUIDE.tcl は TkScan のオンラインヘルプです。 A tcl/tk GUI for command-line scanner driver Written by Hang-Bae Kim (hbkim@delta.ft.uam.es) Copying policy : GNU Public License (1) README 元のファイル名: README.tcl (TkScan Version 0.8 に付属) ファイルの日付: Jun,4,1997 作者 : Hang-Bae Kim (hbkim@delta.ft.uam.es) (2) Installation 元のファイル名: INSTALL (TkScan Version 0.8 に付属) ファイルの日付: Jun,7,1997 作者 : Hang-Bae Kim (hbkim@delta.ft.uam.es) (3) How to use TkScan version 0.8 元のファイル名: GUIDE.tcl (TkScan Version 0.8 に付属) ファイルの日付: Jun,6,1997 作者 : Hang-Bae Kim (hbkim@delta.ft.uam.es) 作成日 : 1998年5月2日 翻訳者 : 川岸 良治 ============================================================================= 【訳注1】--------------- ファイルの入手と展開 ------------------------------ TkScan Version 0.8 (ファイル名 tkscan-0.8.tar.gz)は下記から入手できます。 ftp://sunsite.unc.edu/pub/Linux/apps/graphics/capture/tkscan-0.8.tar.gz または Linux の 3枚組とか 4枚組などの CD-ROM をお持ちならば 2枚目以降に入 っていると思うので確認して下さい。 これを入手したら次のようにして /usr/src/ ディレクトリに展開します。 # cd /usr/src # tar xvfz ~/tkscan-x.x.tar.gz (上記は tkscan-x.x.tar.gz が、~/ ディレクトリにある場合ですが、それ以外の 時はそのディレクトリに合わせて変えて下さい) /usr/src/tkscan-x.x/ ディレクトリが作られ、そこにファイルが展開されます。 【訳注1:終り】 ============================================================================ 第1部 README.tcl TkScan version 0.8 A tcl/tk GUI for command-line scanner driver Copyright (C) 1997 Hang Bae Kim (hbkim@delta.ft.uam.es) ============================================================================ このプログラムはフリーソフトウェアであり、FSF (Free Software Foundation) によって発行されている GNU の General Public License の条件(ライセンスの バージョン2 または、それ以降のバージョンでも)の元でこれを再配布したり変更 したりすることができます。 このプログラムは、役に立つことを期待して配布しています。しかし、いかなる 保証もありません。商品性や特定用途への適合性についての暗黙の保証すらあり ません。詳しくは、GNU の General Public License をご覧下さい。 TkScan は、コマンドライン・スキャナドライバ用の tcl/tk GUI です。 私は、これを私自身が使うために Mustek 800IISP スキャナ用に書きました。 しかし、誰かの役に立てば良いと思い、これを公開します。 スキャンするのはスキャナドライバ自体であって、この GUI ではないということ を覚えておいて下さい。即ち、あなたのスキャナには、適当なコマンドライン・ス キャナドライバが必要です。 TkScan は、単に ■ プレビューの画像でスキャンエリアの選択 ■ オプションの選択 (例えばスキャンモード、解像度、ガンマ補正のような処理) ■ スキャナドライバの実行と、その出力を指定した所に送ること を行うだけです。 これをあなたのスキャナとドライバに対応させるには、面倒なことは不要でドライ バのマニュアルを参考にしながら `scanner_driver'.tcl を変更するだけです。 現在サポートしているのは、以下の通りです。 * `ep_scan' を使用した Epson SCSI スキャナ * `hpscanpbm' を使用した HP SCSI スキャナ * `mtekscan' を使用した Microtek SCSI スキャナ * `scanimage'(SANE) か `mscan' を使用した Mustek フラットベッドスキャナ - 私は テストをせずにマニュアルを参照しただけで `epson-ep_scan.tcl' `hp-hpscanpbm.tcl' `microtek-mtekscan.tcl' を作りました。 これらは scratch (なぐり書き、走り書き)と考えて下さい。 ですからこれらは動作しないかもしれないし、ミスがあるかもしれません。 私は、このような状況にあなたがうまく対処されることを期待します。 正常に動作するスクリプトを書いたら、コピーを私に送って下さい。 - hpscanpbm 用のパッチを送ってくれた Boris Tobotras(tobotras@jet.msk.su) に感謝します。 TkScan で出来ること * スキャンする画像を小さなキャンバス(サイズとモードを選択)上でプレビュー する * スキャナとドライバによってサポートされているスキャンモード/解像度/ その他のオプションを、マウスクリックで調整する * プレビュー画像のキャンバス上でスキャンする範囲を1つまたは複数選択する。 スキャンエリアを複数選択すると TkScan はそれらを上手にスキャンします。 TkScan は、希望する画面ピクセルと、画像の生データサイズをいくつかの長さ の単位 (mm,cm,pt,inch)で真の長さと同様に表示します。 * 生データを希望するところにダイレクトに出力します。 - 画像エディタ (XV, ImageMagic or GIMP)に出力 - 希望するフォーマットでファイルに出力 - サイズと位置を調整して postscript フォーマットのプリンタまたは ghostscript(ghostview or gv)に出力 - ファックス送信用として直接ファックスモデムに出力 - OCR 処理をするために OCR ソフトに出力 (このバージョンではまだ実装していません) * スキャンの進行度合を、グラフィック、パーセントの数字、ファイルサイズ で表示します。 * ストップボタンでスキャンを中止できます。 * 好みに応じた TkScan の設定ができます。 TkScan に必要なもの * 前記の一覧にあるスキャナとコマンドライン・ドライバ、またはあなたが 自分で追加することもできます。 * Tcl/Tk (たぶんほとんどのバージョンで動作するでしょう) * ImageMagic (スキャンした画像を各種フォーマットに変換する) * XV, ImageMagic, GIMP, またはそれら全て (画像エディタ) * Ghostscript と ghostview (または gv) ( postscript 形式での出力を見る) * Efax (スキャンした画像をファックスモデムに送信する) - OCR への出力は空白にしています。それは、Linux 用の良い OCR ソフト ウェアが見つからないからです。だれかこれご存知ないですか? - 上記の全てのバイナリは、PATH の通ったディレクトリ上に置く必要があり ます。 使い方 Help メニュー、またはこのドキュメントの「 第3部 GUIDE.tcl」をご覧 下さい。 バグ、またはコメントは Hang-Bae Kim 宛てお送り下さい。 【訳注2】--------------- ImageMagick と関連ライブラリ ---------------------- ImageMagick は以下のようなコマンドを持つ画像処理のツールです。 display (画像ファイルの表示、変換、編集、印刷など) import (画面キャプチャ) convert (画像ファイルのフォーマット変換) mogrify (画像ファイルの処理) identify (画像ファイル形式の表示) animate (複数の画像ファイルを順に表示) montage (複数の画像ファイルをタイル状に並べて合成) combine (複数の画像ファイルを一つに結合) xtp (ファイル転送) TkScan でプレビューを白黒2値の Lineart または Halftone モードで行う際に ImageMagick を画像ファイルのフォーマット変換用ツールとして使っていますが Gray (白黒多階調) または Color モードでしか行なわないなら ImageMagick を インストールしなくてもよいでしょう。 私が以前 Slackware 3.1.0 を使っていたときは、トッパンの「Linux 入門」の 2枚目の CD-ROM の /cdrom/misc/graphics/ImageMagick/ImageMagick-3.7.6.1-elf.tgz を、以下のようにして展開しました。 # tar xvfz ImageMagick-3.7.6.1-elf.tgz -C / ImageMagick を起動しようとすると ■ libgr-2.0.9 (グラフィックライブラリ) も必要であるというメッセージが出たので同じ CD-ROM の /cdrom/misc/language/pentium-gcc/contrib/libgr-2.0.9-pentium.bin.tar.gz を、以下のようにして展開しました。 # tar xvfz libgr-2.0.9-pentium.bin.tar.gz -C / 最近インストールした Slackware 3.4.0 では標準でディスクセット diskxap3 に libgr-2.0.12 が入っています。 ■ ImageMagick の最新版(4.0.4) は下記から得られます。 ftp://ftp.u-aizu.ac.jp/pub/graphics/image/ImageMagick/binaries/ http://www.wizards.dupont.com/cristy/ImageMagick.html ここには各種 OS 用のソースとバイナリが置かれています。 Linux 用のバイナリは Intel用/alpha用, libc5用/glibc用, tgz形式/rpm形式 に分類して何通りも用意されているので選択には注意が必要です。 私はその中から Intel 用で且つ libc5 用の tgz 形式のバイナリである ImageMagick-i486-linux-ELF-libc5.tar.gz というのをダウンロードしました。 このImageMagick 4.0.4 を起動するには ■ mpeg_lib-1.2.1-1libc5.i386.tgz (MPEG用のライブラリ, 613KB) ■ freetype-1.0-1libc5.i386.tgz (TrueType フォントをビットマップに変換するライブラリ, 244KB) も必要で同じところからこれらもダウンロードしました。この3つをインストール して ImageMagick の display コマンドで動作確認しようとしたら $ display can't load library 'libpng.so.0' というエラーが表示されました。 libpng は前記の libgr-2.0.9 の中の一つのライブラリで libpng.so.1.0.89 が インストールされていてこれに libpng.so.1 がリンクされています。そこで # ln libpng.so.1.0.89 libpng.so.0 としたところ display コマンドで ImageMagick が起動できるようになりました。 【訳注2:終り】 ============================================================================ 第2部 インストール ============================================================================ 先ずは、「第1部 README.tcl」をお読み下さい。 インストール 0. スキャナドライバ・セットを下記の中から選んで下さい。 epson-ep_scan hp-hpscanpbm microtek-mtekscan mustek-mscan mustek-scanimage そしてその内容が、スキャナとドライバに適合するかをよく見て必要に応じて 変更して下さい。 スキャナドライバ・セットが見当たらないときは、自分でそれを書いて下さい。 ものすごく簡単ですから。 1. `maketkscan' を実行します。 スキャナドライバ・セットを選択するように促されます。番号を選ぶと選択し たスキャナドライバ用の `tkscan' スクリプトが作られます。 2. 好きなところに `tkscan' をコピーし、エンジョイして下さい。 使い方 tkscan を実行し、Help メニューのガイド、またはこのドキュメントの 「第3部 GUIDE.tcl」をご覧下さい。 【訳注3】---- TkScan Version 0.8 の mtekscan 用 プログラムのバグ修正 ----- TkScan Version 0.8 の mtekscan 用プログラムにはバグがあり、そのままでは 動作しません。mtekscan 用に使用される方は、microtek-mtekscan.tcl の以下 に示す箇所を修正して下さい。 (1) 58行目 (誤) set file "-o $c(tkscandir)/$file.pnm" (正) set file "> $c(tkscandir)/$file.pnm" (2) 59行目と60行目の間に下記のように if 文を2つ追加します。 foreach j {tx ty bx by} { set $j [pixelto inch [expr $s($j$i)-$s(o)]]} if { $bx>8.499 } { set bx 8.499 } if { $by>11.599 } { set by 11.599 } set geometry "-f $tx $ty $bx $by" (3) 70行目 (誤) if {$s(backtracking) == "no"} {append option " -B"} (正) if {$s(backtrack) == "no"} {append option " -B"} (4) 77行目: 下記のように修正します。(上は誤りで、下のように直す) gamma { if {$s(gamma_support)==0} {append option " -G $s(gamma)}} gamma { if {$s(gamma_support)==0} {append option " -G $s(gamma)"}} 【訳注4】----- TkScan Version 0.8 の ep_scan 用 プログラムのバグ修正 ------ これは、伊佐治 哲さん から頂いた情報です。 TkScan Version 0.8 の ep_scan 用プログラムにはバグがあり、そのままでは動作 しません。ep_scan 用に使用される方は、以下に示す箇所を修正して下さい。 (1) epson-ep_scan.tcl ファイルの53行目 (誤) set wd [expr $bx-$tx] (正) set wd [expr int(($bx-$tx+8)/8)*8] (2) epson-ep_scan.tcl ファイルの65行目 (上は誤りで、下のように直す) gamma { if {$s(gamma_support)==0} {append option " -g $s(gamma)}} gamma { if {$s(gamma_support)==0} {append option " -g $s(gamma)"}} (3) initファイルの保存のために tkscan-lib.tcl の6行目 (誤) set file [open "$c(userconf)" w] (正) set file [open $c(userconf) w] 【訳注5】---------- オンラインヘルプを日本語化するには ----------------- 下記のようにすれば簡単に日本語化できます。但し、これには当然のことながら 日本語版の Tcl/Tk がインストールされていることが必要条件となります。 「第2部 インストール」に書いてある手順で `maketkscan' を実行すると `tkscan' スクリプトが作られます(英語版)。この `tkscan' は README.tcl や GUIDE.tcl を含むいくつかの *.tcl ファイルを結合したものです。 スキャナの機種に依存する部分は機種ごとにファイルがあり、これらの一つ が選択されて結合されます。 (1) この `tkscan' を `tkscanJP' という名前でコピーします。 (2) 次に `tkscanJP' の先頭にある README.tcl と GUIDE.tcl に相当する 部分を以下のように日本語訳と置き換えます。 オリジナルの README.tcl は、ファイルの拡張子からわかるように Tcl のファイルです。このファイルを見てみると最初の15行ぐらいのあと set readme_tkscan " という行の次から説明文が続いて、最終行に " だけの行があります。つまり readme_tkscan という変数に長〜い長〜 い何10行にもわたる文字列を代入しているのです。 従って、この " と " で囲まれた部分を、以下の日本語に翻訳したもの 「第1部 README.tcl」と置き換えるだけで良いのです。簡単でしょ? (3) 同様に、GUIDE.tcl ファイルの方も4行目の set usage_tkscan " という行と、最終行の " の間の部分を「第3部 GUIDE.tcl」の日本語訳で置き換えます。 (4) これでとりあえず日本語版ができるわけですが、ヘルプのウィンドウの 幅が68文字になっているため各行が折り返して表示されてしまいます。 これを80文字にするには次のようにします。 オリジナル(結合前)の window-help.tcl というファイルに readmeWindow と usageWindow という関数があって、その25行目と44 行目の -width 68 を 80 に変更すればよいのです。 14行目 proc readmeWindow {} {global readme_tkscan l 25行目 text .readme.u.t -width 68 -height 20 -font $l(f1) \ 25行目 text .readme.u.t -width 80 -height 20 -font $l(f1) \ 33行目 proc usageWindow {} {global usage_tkscan l 44行目 text .usage.u.t -width 68 -height 20 -font $l(f1) \ 44行目 text .usage.u.t -width 80 -height 20 -font $l(f1) \ 念のためオリジナルのファイルは修正せずに `tkscanJP' の900行目付近 (スキャナの機種によって異なる)の方を修正して下さい。 【訳注:終り】 ============================================================================ 第3部 GUIDE.tcl ============================================================================ #---------------------------------------------------------------- TkScan version 0.8 の使い方 #---------------------------------------------------------------- 目次 セクション0.コマンドラインでの操作 セクション1.プレビュー セクション2.スキャンされる領域の選択 セクション3.モード、解像度、オプションの選択 セクション4.出力先の選択 セクション5.スキャン セクション6.設定 セクション0.コマンドラインのオプション tkscan \[-geometry +x+y\] \[ImageEditor|File|Printer|Fax|OCR\] セクション1.プレビュー * プレビュースキャンを初期化するために (Preview) ボタンをクリックします * (Stop) ボタンをクリックすると、プレビュースキャンを中止します * プレビューモードと解像度は File メニューの Preference で選べます セクション2.スキャンされる領域の選択 * プレビュー画像のスキャンされる領域の選択は、マウス左ボタンでできます。 スキャンしたい長方形の一つの角を左ボタンで押し、押したままマウスをもう一つ の角の所まで移動させてから左ボタンを離します。 * 青い長方形で囲まれた finetuning ボタンを使って選択領域を微調整できます。 * 青い長方形がスキャンされる領域を連続的に表示すると同時に、スキャン領域ウィ ンドウに、左上と右下の角の座標を表示します。 幅×高さの単位は、下記のいずれかを選択できます。 ■ 長さの単位(リアルサイズ) ■ 画面ピクセル(画面サイズ) ■ 生のフォーマット(データサイズ)の画像ファイルサイズ スキャンモードと解像度を変更すると、画面サイズとデータサイズも変化します。 * (preset) ボタンには、A4 サイズ、レターサイズ、その他がプリセットされてます。 設定用ファイルに、領域指定を追加することも出来ます。 (「セクション6.設定」をご覧下さい) * 画像のプレビューキャンバス上に複数の領域を選択できます。 青い長方形を一つセットし、その中でマウスの中ボタンまたは(Regist)をクリック して下さい。青い長方形は赤に変わり、数字の1が中央に現れます。 次に別の長方形を作りその中でマウスの中ボタンを押して下さい。 すると2番目の赤い長方形が登録されます。 これを好きなだけ繰り返して下さい。赤い長方形の中でマウスの右ボタンをクリッ クすると削除されます。右ボタンをダブルクリック(または(Clear)ボタンをクリッ) すると、全ての長方形が削除されます。 TkScan は、登録された番号の順に赤い長方形をスキャンします。 セクション3.モード、解像度、オプションの選択 これはすぐにわかります。(Mode) メニューボタン、(Resolution) のスケールを使 います。モードと解像度の変更に応じて画面サイズとデータサイズが変化します。 * 他のオプションを変更したい場合、(Open Manager) ボタンを押します。 すると option manager のウィンドウが現れ、そこで設定できます。 設定可能なオプションは、モードに依ります。 * いくつかのよく使われるモードは Mode メニューにプリセットされています。 自分用のクイックモードを設定ファイルに定義することもできます。 「セクション6.設定」をご覧下さい。 セクション4.出力先の選択 これは、(Output to) メニューボタンで行います。 * 画像エディタ - 画像エディタは好みに応じて XV, ImageMagic, GIMP の中から使えます。 - (SW) チェックボタンは、複数の赤い長方形がスキャンされた場合に、スキャン した各画像を独立した画像エディタに現れるようにするか、または1つの画像エ ディタの中に全ての画像を現れるようするかを選択するためのものです。 * ファイル これを選択すると、File Manager のウィンドウが現れます。 - 出力するファイルのフォーマットを選択します。 - (Filename) で、スキャンした画像のファイル名を指定します。 ファイル名として # を使うと、最後の # が長方形の番号に置き換えられます。 (0 は青い長方形、その他は赤い長方形の中央にある番号) デフォルトのファイル名は scanout-#.surfix で、ファイルフォーマットに応じた 適当な surfix が付けられます。 これは、設定ファイルで変更することができます。 * プリンタ これを選択すると、Print Manager のウィンドウが現れます。 - プリンタを選択します。`gv' は 出力先を ghostview(または gv)にします。 - (Zoom) スケールと (Position) メニューボタンは、印刷されるサイズと位置を 選択するために使います。 ズームスケールは、実際のサイズのパーセンテージです。 - (Reprint)ボタンは、スキャンした画像をズームと位置を変更して、再度印刷する ためのものです。 * ファックス これを選択すると、Fax Manager のウィンドウが現れます。 - ここで各々のスキャンされたページは、efax と Page リストボックスの一覧を 使うことにより tiffg3 フォーマットに変換されます。 - Page リストボックスでは以下のことができます。 + マウス左ボタンでダブルクリックすることにより、tiffg3 フォーマットに 変換された各々のスキャンされたページを見る。 + (View) ボタンを押して全てのページをみる。 + (Up) と (Down) ボタンを使ってページの順番を並べ変える。 + (Remove) ボタンを使ってリストの中の一つのページを削除する。 + (Attach) ボタンは、まだ動作しません。 - FAX 番号を指定する必要があります。(List) は FAX 番号リストのウィンドウを 呼び出します。これには、よく使う FAX 番号を登録できます。 * OCR - これはまだ実装していません。 Linux 上で動作する良い OCR ソフトウェアが 見つかりません。 だれか、これを知っている、あるいは聞いたことがあれば教えて下さい。 セクション5.スキャン スキャンは、(SCAN) ボタンを押すと実行します。TkScan は青い四角形の領域を スキャンします。赤い四角形の領域を登録した場合は、赤い四角形の領域がスキ ャンされ、青い四角形の領域が有ってもそれは無視されます。 スキャンの進行に従って、ステータスバーに進行状況が表示されます。 スキャンの途中で中断させたい場合は、(Stop) ボタンを押して下さい。 これは、ドライバコマンドを kill し、スキャン開始前の状態に戻します。 何らかの理由でこれが動作しない時は、(Stop) ボタンをダブルクリックして下さ い。これは確実にスキャンを停止させ、新たなスキャンのために TkScan を元に 戻します。 (Stop) ボタンは、スキャンコマンドをすぐに kill しますが、スキャナがそれに 応答するまでには若干時間がかかることに注意して下さい。スキャナは応答の遅 い機器なのです。(Stop) ボタンを頻繁に使用することは、お勧めしません。 セクション6.設定 File メニューの Preference を選択すると Preference ウィンドウが現れます。 * スキャナドライバがデバイスオプション無しに、正しいスキャナデバイスを見つけ ない場合は、スキャナデバイスを指定して下さい。そうでなければここは空白のま まで OK です。 * 好みに合わせてプレビュー画像のモードと解像度(resolution) を変更できます。 選択したあとは (Apply) ボタンを押して下さい。 * ガンマ補正は、ドライバ自身で、あるいはドライバが対応していない場合は xv や ImageMagic の表示や変換によって出来ます。どちらにするかを選択して下さい。 * TkScan は、設定ファイルとスキャンした画像を一時的に格納するために ~/.tkscan ディレクトリを作ります。これらのテンポラリファイルは、終了したときやハード ディスクの空きを増やしたいときに削除して構いません。 * File メニューの Save current config を選択した場合、様々な設定値は ~/.tkscan/init ファイルに格納されます。好みに合わせてこのファイルを変更する ことができます。 それ以上に変更したいと思った場合、`tkscan' スクリプトを観察し ~/.tkscan/init ファイルの必要な部分をコピーしてから変更して下さい。 ============================================================================ このドキュメント(日本語訳)について ============================================================================ (1) 版権等 このドキュメント(日本語訳)の配布等については、オリジナルと同様に GPL2 (GNU GENERAL PUBLIC LICENSE Version 2) に従います。 (2) 改版履歴 第1版 1997年 8月28日 初版発行。 第2版 1998年 5月 2日 ImageMagick に関する説明を補強しました。 ep_scan 用プログラムのバグ修正について伊佐治 哲さん (isaji@mxu.meshnet.or.jp)から頂いた情報を追加しました。 (3) お問い合わせ等 日本語訳の誤りの指摘、その他お気づきの点がありましたら私あてにメールを下さ い。メールアドレスは、1998年1月以降、変わりました。 旧:kawagishi@pa.aix.or.jp (第1版) 新:kawagisi@yk.rim.or.jp (第2版) 以前に作成した JF のドキュメント(Scanner-HOWTO-INDEX, Scanner-logiscan, Scanner-HOWTO-mtekscan) は何れも古いアドレスが書かれていますが、これらに 関するお問い合わせも新しいアドレス宛にお願いします。