9.高度な使い方


●スキャナの接続状態の取得

Operation id outbuf(戻り値) 説明
0 固定 0x100f 
スキャナの状態

"1":スキャナ接続
"0":未接続
スキャナの接続状態を取得する。
注.スキャナによってはこの機能はサポートされていません。 また未接続時に、スキャナドライバのメッセージが出力される場合があります。
確認機種:CanoScan600
       
//サンプル(C言語)
char retbuf[100];
ezscan.GetCap(0, 0x100f, retbuf);



●ADFの両面/片面の切替

Operation id inpbuf 説明
200 固定 0x1013 
CAP_DUPLEXENABLED

"1":両面
"0":片面(デフォルト)
ADFの両面/片面の切替
確認機種:リコー IS220DC
       
//サンプル(C言語)
#define SC_OP_SET_BOOL 200 //SetCap BOOL
EzScan.SetCap(SC_OP_SET_BOOL, 0x1013/*CAP_DUPLEXENABLED*/,"1"/*TRUE*/);

●非表示モードスキャン時に、読取範囲やDPIなどのパラメータを設定せずにスキャンを行う

Operation id inpbuf 説明
105
SC_OP_SKIP_SET_SCAN_PARA

1:設定しない
0:設定する(デフォルト)


未使用
パラメータなどの設定は一切行わずにスキャンのみ行う。
       
//サンプル(C言語)
#define SC_OP_SKIP_SET_SCAN_PARA 105
m_ezscan.SetCap(SC_OP_SKIP_SET_SCAN_PARA,1,0);


●スキャナ機種依存の処理情報
Ver2.7より、機種依存の処理を自動的に行うようにしました。
EzScan.OCXは様々なスキャナに対応するため、汎用的な処理を行っています。
しかし一部スキャナとの相性により、機種依存の処理を行なっています。
以下スキャナの機種別対応内容です。
該当スキャナを使用する場合は、自動的に実行されますので特にコーディングをする必要はありません。

富士通製スキャナ対応 確認機種fi-60F,fi-4010CU,fi-4220C
現象

ShowUI=FALSEの時に、スキャナがサポートしていないTWAINコマンドを発行するとエラーメッセージが出力される。
不必要なTWAINコマンドを発行しないように以下のような処理を行う。
また、InchWidth, InchHeightにスキャナの読み取り範囲を超える値を設定してStartScan()を行った場合、スキャンが行われないので注意。

対応

スキャナ名に "FUJITSU" "fi-" の文字を持つスキャナ名の場合以下のような処理を行う。
・PLANARCHUNKY/COMPRESSIONをセットしない
・ICAP_BITDEPTHをセットしない
・thresholdをセットしない
・CAP_AUTOFEEDをセットしない

機種依存の情報については、調査時点のものであり、スキャナのドライバのバージョン等によっては動作しない場合もあります。
動作しない場合や、ここに記載が無い場合はスキャナの機種名と、EzScan.OCXを使用したときの動作状況を添えて当社までご報告下さい。