説明
接続されたドキュメント スキャナから画像を検出して取得するには、chrome.documentScan
API を使用します。
Document Scan API は、アプリや拡張機能がドキュメントや 接続されたドキュメント スキャナで紙ドキュメントの内容の画像。
権限
documentScan
対象
コンセプトと使用方法
この API では、ドキュメントのスキャン方法が 2 つサポートされています。ユースケースで対応できる場合
スキャナで使用でき、構成の制御が不要な場合は、
scan()
メソッドを使用します。より複雑なユースケースでは、複数の方法、
この機能は Chrome 124 以降でのみサポートされます。
シンプルなスキャン
シンプルなユースケース、つまり、どのスキャナでも動作し、
構成の制御が必要な場合は、scan()
を呼び出します。このメソッドは、
ScanOptions
オブジェクトで、ScanResults
で解決される Promise を返します。
渡されます。このオプションの機能は、スキャンとスキャンの回数に制限され、
呼び出し元が受け入れる MIME タイプ。スキャンは URL として返される
ユーザー インターフェースの <img>
タグ内に表示します。
複雑なスキャン
複雑なスキャンは、このセクションで説明するように 3 つのフェーズで実施されます。 この概要では、すべてのメソッドの引数、または返されるすべてのプロパティについて説明しているわけではありません。 あります。このガイドは、Google Cloud Security Scanner の できます。
ファインド
getScannerList()
を呼び出します。使用可能なスキャナは次のとおりです。 Promise で返されます。これは、GetScannerListResponse
。- レスポンス オブジェクトには
ScannerInfo
の配列が含まれます。 説明します。 - 配列には、1 つのスキャナに複数のエントリを格納できます。 複数のプロトコルや接続方法をサポートしています。
- レスポンス オブジェクトには
返された配列からスキャナを選択し、その
scannerId
プロパティ。個々の
ScannerInfo
オブジェクトのプロパティを使用する 同じスキャナで複数のオブジェクトを区別できます。オブジェクトの 同じスキャナのdeviceUuid
プロパティの値は同じになります。ScannerInfo
には、次の配列を含むimageFormats
プロパティも含まれます。 使用できます。
Scanner の構成
openScanner()
を呼び出し、保存したスキャナ ID を渡します。OpenScannerResponse
で解決される Promise を返します。 レスポンス オブジェクトには次のものが含まれます。scannerHandle
プロパティ。保存する必要があります。スキャナ固有のプロパティを含むオプション プロパティです。 設定する必要はありません。詳しくは、スキャナ オプションの取得をご覧ください。
(省略可)ユーザーがスキャナ オプションの値を指定する必要がある場合は、 ユーザーインターフェースを構築します。プロバイダが提供するスキャナ オプションを 前のステップで生成されたオプション グループを取得する必要があります。 できます。詳しくは、ユーザー インターフェースを作成するをご覧ください。
以下を使用して
OptionSetting
オブジェクトの配列を作成します。 プログラマティックまたはユーザー提供の 値に対応できます詳細については、「スキャナ オプションを設定する」をご覧ください 情報です。OptionSetting
オブジェクトの配列をsetOptions()
: スキャナのオプションを設定します。これは、 で解決される Promise を返します。SetOptionsResponse
。このオブジェクトには Scanner の手順 1 で取得したスキャナ オプションの更新版 できます。1 つ変更してから 別のオプションの制約を変更できます。場合によっては、これらの 実行します。
スキャン
StartScanOptions
オブジェクトを作成して渡すstartScan()
に送信。このメソッドは Promise を返します。StartScanResponse
に置き換えます。job
プロパティは次のとおりです。 スキャンデータの読み取りまたはスキャンのキャンセルに使用するハンドル。ジョブハンドルを
readScanData()
に渡します。このメソッドは、 次の Promise で解決されるReadScanDataResponse
オブジェクト。データが読み取られた場合 成功した場合、result
プロパティはSUCCESS
と等しく、data
プロパティは 次を含むArrayBuffer
スキャンなどですestimatedCompletion
には推定値が含まれます。 これまでに配信された合計データのうちの割合ですresult
プロパティがEOF
またはエラーになるまで、前の手順を繰り返します。
スキャンが終了したら、次を呼び出します。
closeScanner()
は、ステップで保存されたスキャナ ハンドルに置き換えます
3.これは Promise を返します。
CloseScannerResponse
。発信中
ジョブの作成後、いつでも cancelScan()
にアクセスすれば、
スキャンを終了します。
レスポンス オブジェクト
すべてのメソッドは、なんらかのレスポンス オブジェクトで解決される Promise を返します。
これらのほとんどには result
プロパティが含まれ、その値は次のメンバーです。
OperationResult
。レスポンス オブジェクトのプロパティ
には、result
の値が特定の値を持たない限り、値が含まれません。これらの
各レスポンス オブジェクトのリファレンスをご覧ください。
たとえば、OpenScannerResponse.scannerHandle
は、次の場合にのみ値を持ちます。
OpenScannerResponse.result
は SUCCESS
です。
スキャナ オプション
スキャナのオプションはデバイスによって大きく異なります。そのため、
documentScan API 内にスキャナ オプションが直接反映されています。操作方法
OpenScannerResponse
(
openScanner()
)および
SetOptionsResponse
(
setOptions()
)に options
プロパティが含まれていて、
スキャナ固有のオプションを含むオブジェクトです。各オプションは Key-Value マッピングです
ここで、キーはデバイス固有のオプション、値は
ScannerOption
。
一般的な構造は次のようになります。
{
"key1": { scannerOptionInstance }
"key2": { scannerOptionInstance }
}
たとえば、「source」という名前のオプションを返すスキャナがあるとします。および
「Resolution」と言います。返される options
オブジェクトの構造は次のようになります。
使用します。わかりやすくするため、ScannerOption
の一部のみにします。
表示されます。
{
"source": {
"name": "source",
"type": OptionType.STRING,
...
},
"resolution": {
"name": "resolution",
"type": OptionType.INT,
...
},
...
}
ユーザー インターフェースを構築する
この API の使用は必須ではありませんが、ユーザーに
予測しますこれにはユーザー インターフェースが必要です。こちらの
OpenScannerResponse
(
openScanner()
)を使用して、アタッチされたオブジェクトのオプションを取得します。
使用してスキャンを実行します。
一部のスキャナは、デバイス固有の方法でオプションをグループ化します。他のオプションには
スキャナのプロダクトで言及されている可能性があるため、
このようなグループをユーザーに表示する必要があります。これらのデータは
getOptionGroups()
を呼び出してグループにアクセスできます。このメソッドは、
次の Promise で解決される
GetOptionGroupsResponse
オブジェクト。groups
プロパティに、スキャナ固有のグループの配列が含まれています。使用する
グループ化して、選択肢を整理できます。
OpenScannerResponse
(ディスプレイ)。
{
scannerHandle: "123456",
result: SUCCESS,
groups: [
{
title: "Standard",
members: [ "resolution", "mode", "source" ]
}
]
}
スキャナの構成で説明したように、1 つのオプションを変更すると、制約が変わる可能性があります
検討する必要がありますこれが
setOptionsResponse
(
setOptions()
)に別の options
プロパティが含まれています。使用
更新してユーザー インターフェースを更新します。必要に応じて、すべてのオプションが
あります。
スキャナ オプションを設定する
スキャナ オプションを設定するには、
OptionSetting
個のオブジェクトを
setOptions()
。例については、レターサイズ 1 ページをスキャンするのセクションをご覧ください。
例
ページを blob として取得する
この例では、スキャナからページを blob として取得し、
の値を使用して、startScan()
と readScanData()
を使用する例を示します。
OperationResult
。
async function pageAsBlob(handle) {
let response = await chrome.documentScan.startScan(
handle, {format: "image/jpeg"});
if (response.result != chrome.documentScan.OperationResult.SUCCESS) {
return null;
}
const job = response.job;
let imgParts = [];
response = await chrome.documentScan.readScanData(job);
while (response.result == chrome.documentScan.OperationResult.SUCCESS) {
if (response.data && response.data.byteLength > 0) {
imgParts.push(response.data);
} else {
// Delay so hardware can make progress.
await new Promise(r => setTimeout(r, 100));
}
response = await chrome.documentScan.readScanData(job);
}
if (response.result != chrome.documentScan.OperationResult.EOF) {
return null;
}
if (response.data && response.data.byteLength > 0) {
imgParts.push(response.data);
}
return new Blob(imgParts, { type: "image/jpeg" });
}
1 ページをレターサイズにスキャンします
この例では、スキャナを選択し、オプションを設定して開く方法を示します。これは、
その後、単一ページのコンテンツを取得して、スキャナを終了します。このプロセス
getScannerList()
、openScanner()
、setOptions()
、
closeScanner()
。ページのコンテンツは、
前の例の pageAsBlob()
関数を使用します。
async function scan() {
let response = await chrome.documentScan.getScannerList({ secure: true });
let scanner = await chrome.documentScan.openScanner(
response.scanners[0].scannerId);
const handle = scanner.scannerHandle;
let options = [];
for (source of scanner.options["source"].constraint.list) {
if (source.includes("ADF")) {
options.push({
name: "source",
type: chrome.documentScan.OptionType.STRING,
value: { value: source }
});
break;
}
}
options.push({
name: "tl-x",
type: chrome.documentScan.OptionType.FIXED,
value: 0.0
});
options.push({
name: "br-x",
type: chrome.documentScan.OptionType.FIXED,
value: 215.9 // 8.5" in mm
});
options.push({
name: "tl-y",
type: chrome.documentScan.OptionType.FIXED,
value: 0.0
});
options.push({
name: "br-y",
type: chrome.documentScan.OptionType.FIXED,
value: 279.4 // 11" in mm
});
response = await chrome.documentScan.setOptions(handle, options);
let imgBlob = await pageAsBlob(handle);
if (imgBlob != null) {
// Insert imgBlob into DOM, save to disk, etc
}
await chrome.documentScan.closeScanner(handle);
}
構成を表示する
他のセクションで説明したように、スキャナの構成オプションをユーザーに提示するには、
から返されるスキャナ オプションに加えて、getOptionGroups()
を呼び出します。
openScanner()
への呼び出し。これは、Google Chat でユーザーにオプションを表示できるようにするためです。
定義できます。この例は、その方法を示しています。
async function showConfig() {
let response = await chrome.documentScan.getScannerList({ secure: true });
let scanner = await chrome.documentScan.openScanner(
response.scanners[0].scannerId);
let groups = await chrome.documentScan.getOptionGroups(scanner.scannerHandle);
for (const group of groups.groups) {
console.log("=== " + group.title + " ===");
for (const member of group.members) {
const option = scanner.options[member];
if (option.isActive) {
console.log(" " + option.name + " = " + option.value);
} else {
console.log(" " + option.name + " is inactive");
}
}
}
}
型
CancelScanResponse
プロパティ
-
ジョブ
文字列
cancelScan()
に渡されたのと同じジョブハンドルを指定します。 -
件の結果
バックエンドのスキャン キャンセル結果。結果が
OperationResult.SUCCESS
またはOperationResult.CANCELLED
の場合、スキャンはキャンセルされており、スキャナは新しいスキャンを開始する準備ができています。結果がOperationResult.DEVICE_BUSY
の場合、スキャナはまだリクエストされたキャンセルを処理しています。呼び出し元は、しばらく待ってからリクエストを再試行する必要があります。その他の結果値は、再試行すべきでない永続的なエラーを示します。
CloseScannerResponse
プロパティ
-
件の結果
スキャナを閉じた結果。この値が
SUCCESS
でない場合でも、ハンドルは無効になり、それ以降のオペレーションには使用しないでください。 -
scannerHandle
文字列
closeScanner
に渡されたのと同じスキャナ ハンドル。
Configurability
オプションを変更する方法。
列挙型
"NOT_CONFIGURABLE"
このオプションは読み取り専用です。
"SOFTWARE_CONFIGURABLE"
このオプションはソフトウェアで設定できます。
"HARDWARE_CONFIGURABLE"
このオプションは、ユーザーがスキャナのボタンを切り替えたり押したりすることで設定できます。
ConnectionType
スキャナがコンピュータにどのように接続されているかを示します。
列挙型
「不明」
「USB」
「ネットワーク」
列挙型
"INT_RANGE" OptionType.INT
値の範囲に対する制約。OptionConstraint
の min
、max
、quant
プロパティが long
になり、list
プロパティの設定が解除されます。
"FIXED_RANGE"
OptionType.FIXED
値の範囲に対する制約。OptionConstraint
の min
、max
、quant
プロパティが double
になり、list
プロパティの設定が解除されます。
"INT_LIST"
OptionType.INT
値の特定のリストに対する制約。OptionConstraint.list
プロパティには long
値が含まれ、他のプロパティは設定されません。
"FIXED_LIST"
OptionType.FIXED
値の特定のリストに対する制約。OptionConstraint.list
プロパティには double
値が含まれ、他のプロパティは設定されません。
"STRING_LIST"
OptionType.STRING
値の特定のリストに対する制約。OptionConstraint.list
プロパティには DOMString
値が含まれ、他のプロパティは設定されません。
DeviceFilter
プロパティ
-
ローカル
ブール値(省略可)
返品するスキャナは、パソコンに直接取り付けられているものに限られます。
-
安全
ブール値(省略可)
USB や TLS などのセキュアなトランスポートを使用するスキャナのみを返品してください。
GetOptionGroupsResponse
プロパティ
-
グループ
OptionGroup[] 省略可
result
がSUCCESS
の場合、スキャナ ドライバから指定された順序でオプション グループのリストを指定します。 -
件の結果
オプション グループの取得結果。この値が
SUCCESS
の場合、groups
プロパティが入力されます。 -
scannerHandle
文字列
getOptionGroups
に渡されたのと同じスキャナ ハンドル。
GetScannerListResponse
プロパティ
-
件の結果
列挙結果。エラーを示している場合でも、部分的な結果が返されることがあります。
-
スキャナ
指定された
DeviceFilter
に一致するスキャナのリスト。空である可能性もあります。
OpenScannerResponse
プロパティ
-
オプション
オブジェクト(省略可)
result
がSUCCESS
の場合は、Key-Value マッピングを指定します。キーはデバイス固有のオプションで、値はScannerOption
のインスタンスです。 -
件の結果
スキャナを開いた結果。この値が
SUCCESS
の場合、scannerHandle
プロパティとoptions
プロパティが入力されます。 -
scannerHandle
文字列(省略可)
result
がSUCCESS
の場合、以降の操作に使用できるスキャナへのハンドル。 -
scannerId
文字列
openScanner()
に渡されるスキャナ ID。
OperationResult
各オペレーションの結果を示す列挙型。
列挙型
"UNKNOWN"
不明な、または一般的なエラーが発生しました。
"SUCCESS"
オペレーションは成功しました。
"UNSUPPORTED"
この操作はサポートされていません。
"CANCELLED"
オペレーションはキャンセルされました。
"DEVICE_BUSY"
デバイスはビジー状態です。
"INVALID"
メソッドに渡されたデータまたは引数が無効です。
"WRONG_TYPE"
指定された値は、基になるオプションに対して誤ったデータ型です。
"EOF"
これ以上データはありません。
"ADF_JAMMED"
ドキュメント フィーダーが故障しています。
"ADF_EMPTY"
ドキュメント フィーダーが空です。
"COVER_OPEN"
フラットベッド カバーが開いています。
"IO_ERROR"
デバイスとの通信中にエラーが発生しました。
"ACCESS_DENIED"
デバイスには認証が必要です。
"NO_MEMORY"
操作の完了に必要なメモリが Chromebook にありません。
"UNREACHABLE"
デバイスにアクセスできません。
"MISSING"
デバイスの接続が解除されています。
"INTERNAL_ERROR"
呼び出し元アプリケーション以外の場所でエラーが発生しました。
OptionConstraint
プロパティ
-
list
string[] |数値 [] 省略可
-
最大
数値(省略可)
-
分
数値(省略可)
-
クオン
数値(省略可)
-
type
OptionGroup
プロパティ
-
メンバー
string[]
ドライバから提供された順序でのオプション名の配列。
-
title
文字列
印刷可能なタイトルを指定します(「ジオメトリ オプション」など)。
OptionSetting
プロパティ
-
name
文字列
設定するオプションの名前を示します。
-
type
オプションのデータ型を示します。リクエストするデータ型は、基になるオプションの実際のデータ型と一致する必要があります。
-
値
string |数値 |boolean |数値 [] 省略可
設定する値を示します。
autoSettable
が有効になっているオプションの自動設定をリクエストするには、未設定のままにしてください。value
に指定するデータ型はtype
と一致する必要があります。
OptionType
オプションのデータ型。
列挙型
"UNKNOWN"
オプションのデータタイプは不明です。value
プロパティの設定が解除されます。
"BOOL"
value
プロパティは、true
false のいずれかになります。
"INT"
符号付き 32 ビット整数。value
プロパティは、オプションが複数の値を取るかどうかに応じて、long または long[] になります。
"修正済み"
解像度 1/65535 の -32768 ~ 32767.9999 の範囲の double 型。value
プロパティは、オプションが複数の値を取るかどうかに応じて、double または double[] になります。正確に表現できない double 値は、使用可能な範囲と精度に丸められます。
"STRING"
NUL ('\0') 以外の任意のバイトのシーケンス。value
プロパティは DOMString です。
"BUTTON"
このタイプのオプションには値がありません。代わりに、このタイプのオプションを設定すると、スキャナ ドライバでオプション固有の副作用が発生します。たとえば、スキャナ ドライバがボタンタイプのオプションを使用することで、デフォルト値を選択する手段や、次の用紙に進むよう自動ドキュメント フィーダーに指示する手段を提供できます。
"GROUP"
グループ化オプション。値なし。これは互換性を維持するために含まれていますが、通常 ScannerOption
値では返されません。getOptionGroups()
を使用して、グループのリストとメンバー オプションを取得します。
列挙型
"UNITLESS"
値は単位のない数値です。たとえば、しきい値を設定できます。
"PIXEL"
値はピクセル数(スキャン寸法など)です。
"BIT"
値はビット数です(色深度など)。
"MM"
値はミリメートル単位で測定されます(スキャン ディメンションなど)。
"DPI"
値は 1 インチあたりのドット数で測定されます(例: 解像度)。
"PERCENT"
値はパーセントで表します(明るさなど)。
"MICROSECOND"
値はマイクロ秒単位で測定されます(露出時間など)。
ReadScanDataResponse
プロパティ
-
データ
ArrayBuffer(省略可)
result
がSUCCESS
の場合、スキャンされた画像データの次のチャンクが含まれます。result
がEOF
の場合、スキャンされた画像データの最後のチャンクが含まれます。 -
estimatedCompletion
数値(省略可)
result
がSUCCESS
の場合、これまでに配信されたスキャンデータの合計量の推定値(0 ~ 100 の範囲)。 -
ジョブ
文字列
readScanData()
に渡されるジョブ ハンドルを提供します。 -
件の結果
データの読み取り結果。値が
SUCCESS
の場合、data
には読み取り可能な次の(長さが 0 の)画像データのチャンクが含まれます。値がEOF
の場合、data
には画像データの最後のチャンクが含まれます。
ScannerInfo
プロパティ
-
connectionType
スキャナがコンピュータにどのように接続されているかを示します。
-
deviceUuid
文字列
同じ物理デバイスを参照する他の
ScannerInfo
エントリと照合します。 -
imageFormats
string[]
返されるスキャンに対してリクエストできる MIME タイプの配列。
-
メーカー
文字列
スキャナのメーカー。
-
モデル
文字列
スキャナモデル(利用可能な場合)、または一般的な説明。
-
name
文字列
UI に表示する、人が読める形式のスキャナ名。
-
protocolType
文字列
スキャナへのアクセスに使用されるプロトコルやドライバに関する、人が読める形式の説明(Mopria、WSD、epsond など)。これは主に、デバイスが複数のプロトコルをサポートしている場合に、ユーザーがプロトコルを選択できるようにする場合に便利です。
-
scannerId
文字列
特定のスキャナの ID。
-
安全
ブール値
true の場合、TLS や USB などのパッシブ リスナーがスキャナ接続のトランスポートをインターセプトすることはできません。
ScannerOption
プロパティ
-
構成の柔軟性
オプションを変更できるかどうか、およびその方法を表します。
-
制約
OptionConstraint(省略可)
現在のスキャナ オプションに
OptionConstraint
を定義します。 -
description
文字列
オプションの詳しい説明。
-
isActive
ブール値
オプションが有効で、設定または取得可能であることを示します。false の場合、
value
プロパティは設定されません。 -
isAdvanced
ブール値
デフォルトでは UI にこのオプションを表示しないことを示します。
-
isAutoSettable
ブール値
スキャナ ドライバで自動的に設定できます。
-
isDetectable
ブール値
このオプションはソフトウェアから検出できることを示します。
-
isEmulated
ブール値
true の場合、スキャナ ドライバによってエミュレートされます。
-
name
文字列
小文字の ASCII 文字、数字、ダッシュを使用したオプション名。分音符号は使用できません。
-
title
文字列
印刷可能な 1 行のタイトル。
-
type
value
プロパティに含まれるデータ型。このオプションの設定に必要です。 -
単位
このオプションの測定単位。
-
値
string |数値 |boolean |数値 [] 省略可
オプションの現在の値(該当する場合)。このプロパティのデータ型は、
type
で指定されたデータ型と一致する必要があります。
ScanOptions
プロパティ
-
maxImages
数値(省略可)
許可されるスキャン画像の数。デフォルトは 1 です。
-
mimeTypes
文字列 [] 省略可
呼び出し元が受け入れる MIME タイプ。
ScanResults
プロパティ
-
dataUrls
string[]
「src」として渡すことができる形式のデータ画像 URL の配列値をイメージタグに追加します。
-
mimeType
文字列
dataUrls
の MIME タイプ。
SetOptionResult
プロパティ
-
name
文字列
設定されたオプションの名前を示します。
-
件の結果
オプションを設定した結果を示します。
SetOptionsResponse
プロパティ
-
オプション
オブジェクト(省略可)
指定されたすべてのオプションの設定を試みた後、オプション名から新しい構成を含む
ScannerOption
値への Key-Value マッピングの更新。これは、OpenScannerResponse
のoptions
プロパティと同じ構造です。このプロパティは一部のオプションが正常に設定されていなくても設定されますが、更新された構成の取得に失敗した場合(スキャン中にスキャナが切断された場合など)は設定されません。
-
結果
結果の配列(渡された
OptionSetting
ごとに 1 つ)。 -
scannerHandle
文字列
setOptions()
に渡されるスキャナ ハンドルを提供します。
StartScanOptions
プロパティ
-
形式
文字列
スキャンデータを返す MIME タイプを指定します。
-
maxReadSize
数値(省略可)
ゼロ以外の値を指定すると、その値に対する単一の
readScanData
レスポンスで返されるスキャン可能な最大バイト数が制限されます。指定できる最小値は 32,768(32 KB)です。このプロパティが指定されていない場合、返されるチャンクのサイズは、スキャンされた画像全体と同じ大きさになることがあります。
StartScanResponse
プロパティ
-
ジョブ
文字列(省略可)
result
がSUCCESS
の場合、スキャンデータの読み取りやジョブのキャンセルに使用できるハンドルを指定します。 -
件の結果
スキャン開始の結果。この値が
SUCCESS
の場合、job
プロパティが入力されます。 -
scannerHandle
文字列
startScan()
に渡されたのと同じスキャナ ハンドルを提供します。
メソッド
cancelScan()
chrome.documentScan.cancelScan(
job: string,
callback?: function,
)
開始したスキャンをキャンセルし、CancelScanResponse
オブジェクトで解決される Promise を返します。コールバックが使用されている場合は、代わりにオブジェクトがそのコールバックに渡されます。
パラメータ
-
ジョブ
文字列
以前に
startScan
の呼び出しから返されたアクティブなスキャンジョブのハンドル。 -
callback
関数(省略可)
callback
パラメータは次のようになります。(response: CancelScanResponse) => void
-
レスポンス
-
戻り値
-
Promise<CancelScanResponse>
Promise は Manifest V3 以降でサポートされていますが、 下位互換性が確保されます同じ関数呼び出しで両方を使用することはできません。「 Promise はコールバックに渡された型と同じ型で解決されます。
closeScanner()
chrome.documentScan.closeScanner(
scannerHandle: string,
callback?: function,
)
ハンドルが渡されたスキャナを閉じ、CloseScannerResponse
オブジェクトで解決される Promise を返します。コールバックが使用されている場合は、代わりにオブジェクトがそのコールバックに渡されます。レスポンスが成功でない場合でも、指定されたハンドルは無効になるため、以降の操作には使用しないでください。
パラメータ
-
scannerHandle
文字列
以前に
openScanner
の呼び出しによって返された、開いているスキャナのハンドルを指定します。 -
callback
関数(省略可)
callback
パラメータは次のようになります。(response: CloseScannerResponse) => void
-
レスポンス
-
戻り値
-
Promise<CloseScannerResponse>
Promise は Manifest V3 以降でサポートされていますが、 下位互換性が確保されます同じ関数呼び出しで両方を使用することはできません。「 Promise はコールバックに渡された型と同じ型で解決されます。
getOptionGroups()
chrome.documentScan.getOptionGroups(
scannerHandle: string,
callback?: function,
)
openScanner
によって以前に開かれたスキャナからグループ名とメンバー オプションを取得します。このメソッドは、GetOptionGroupsResponse
オブジェクトで解決される Promise を返します。この関数にコールバックが渡された場合は、代わりに返されたデータが渡されます。
パラメータ
-
scannerHandle
文字列
openScanner
の呼び出しから返された、開いているスキャナのハンドル。 -
callback
関数(省略可)
callback
パラメータは次のようになります。(response: GetOptionGroupsResponse) => void
-
レスポンス
-
戻り値
-
Promise<GetOptionGroupsResponse>
Promise は Manifest V3 以降でサポートされていますが、 下位互換性が確保されます同じ関数呼び出しで両方を使用することはできません。「 Promise はコールバックに渡された型と同じ型で解決されます。
getScannerList()
chrome.documentScan.getScannerList(
filter: DeviceFilter,
callback?: function,
)
使用可能なスキャナのリストを取得し、GetScannerListResponse
オブジェクトで解決される Promise を返します。この関数にコールバックが渡された場合は、代わりに返されたデータが渡されます。
パラメータ
-
フィルタ
返されるスキャナのタイプを示す
DeviceFilter
。 -
callback
関数(省略可)
callback
パラメータは次のようになります。(response: GetScannerListResponse) => void
-
レスポンス
-
戻り値
-
Promise<GetScannerListResponse>
Promise は Manifest V3 以降でサポートされていますが、 下位互換性が確保されます同じ関数呼び出しで両方を使用することはできません。「 Promise はコールバックに渡された型と同じ型で解決されます。
openScanner()
chrome.documentScan.openScanner(
scannerId: string,
callback?: function,
)
排他的アクセスのためにスキャナを開き、OpenScannerResponse
オブジェクトで解決される Promise を返します。この関数にコールバックが渡された場合は、代わりに返されたデータが渡されます。
パラメータ
-
scannerId
文字列
開くスキャナの ID。この値は、前回の
getScannerList
呼び出しから返された値です。 -
callback
関数(省略可)
callback
パラメータは次のようになります。(response: OpenScannerResponse) => void
-
レスポンス
-
戻り値
-
Promise<OpenScannerResponse>
Promise は Manifest V3 以降でサポートされていますが、 下位互換性が確保されます同じ関数呼び出しで両方を使用することはできません。「 Promise はコールバックに渡された型と同じ型で解決されます。
readScanData()
chrome.documentScan.readScanData(
job: string,
callback?: function,
)
アクティブなジョブハンドルから使用可能なイメージデータの次のチャンクを読み取り、ReadScanDataResponse
オブジェクトで解決される Promise を返します。コールバックが使用されている場合は、代わりにオブジェクトがそのコールバックに渡されます。
**注:**レスポンス結果が、長さが 0 の data
メンバーを含む SUCCESS
であることが有効です。この場合、スキャナは動作しているものの、追加データの準備がまだできていないことを意味します。呼び出し元は、しばらく待ってから再試行する必要があります。
スキャンジョブが完了すると、レスポンスの結果値は EOF
になります。このレスポンスには、最終的なゼロ以外の data
メンバーが含まれる場合があります。
パラメータ
-
ジョブ
文字列
以前に
startScan
から返されたアクティブなジョブのハンドル。 -
callback
関数(省略可)
callback
パラメータは次のようになります。(response: ReadScanDataResponse) => void
-
レスポンス
-
戻り値
-
Promise<ReadScanDataResponse>
Promise は Manifest V3 以降でサポートされていますが、 下位互換性が確保されます同じ関数呼び出しで両方を使用することはできません。「 Promise はコールバックに渡された型と同じ型で解決されます。
scan()
chrome.documentScan.scan(
options: ScanOptions,
callback?: function,
)
ドキュメントのスキャンを実行し、ScanResults
オブジェクトで解決される Promise を返します。この関数にコールバックが渡された場合は、代わりに返されたデータが渡されます。
パラメータ
-
オプション
スキャン パラメータを含むオブジェクト。
-
callback
関数(省略可)
callback
パラメータは次のようになります。(result: ScanResults) => void
-
件の結果
-
戻り値
-
Promise<ScanResults>
Chrome 96 以降Promise は Manifest V3 以降でサポートされていますが、 下位互換性が確保されます同じ関数呼び出しで両方を使用することはできません。「 Promise はコールバックに渡された型と同じ型で解決されます。
setOptions()
chrome.documentScan.setOptions(
scannerHandle: string,
options: OptionSetting[],
callback?: function,
)
指定されたスキャナにオプションを設定し、渡された OptionSetting
オブジェクトの順序ですべての値を設定しようとした結果を含む SetOptionsResponse
オブジェクトで解決される Promise を返します。コールバックが使用されている場合は、代わりにオブジェクトがそのコールバックに渡されます。
パラメータ
-
scannerHandle
文字列
オプションを設定するスキャナのハンドル。以前に
openScanner
の呼び出しで返された値にする必要があります。 -
オプション
スキャナに適用される
OptionSetting
オブジェクトのリスト。 -
callback
関数(省略可)
callback
パラメータは次のようになります。(response: SetOptionsResponse) => void
-
レスポンス
-
戻り値
-
Promise<SetOptionsResponse>
Promise は Manifest V3 以降でサポートされていますが、 下位互換性が確保されます同じ関数呼び出しで両方を使用することはできません。「 Promise はコールバックに渡された型と同じ型で解決されます。
startScan()
chrome.documentScan.startScan(
scannerHandle: string,
options: StartScanOptions,
callback?: function,
)
指定されたスキャナのスキャンを開始し、StartScanResponse
で解決される Promise を返します。コールバックが使用されている場合は、代わりにオブジェクトがそのコールバックに渡されます。呼び出しが成功した場合、レスポンスにはジョブハンドルが含まれます。このハンドルは、後続の呼び出しでスキャンデータの読み取りやスキャンのキャンセルに使用できます。
パラメータ
-
scannerHandle
文字列
開いているスキャナのハンドル。以前に
openScanner
の呼び出しで返された値にする必要があります。 -
オプション
スキャンに使用するオプションを示す
StartScanOptions
オブジェクト。StartScanOptions.format
プロパティは、スキャナのScannerInfo
で返されるエントリのいずれかと一致する必要があります。 -
callback
関数(省略可)
callback
パラメータは次のようになります。(response: StartScanResponse) => void
-
レスポンス
-
戻り値
-
Promise<StartScanResponse>
Promise は Manifest V3 以降でサポートされていますが、 下位互換性が確保されます同じ関数呼び出しで両方を使用することはできません。「 Promise はコールバックに渡された型と同じ型で解決されます。