설명
chrome.documentScan
API를 사용하여 첨부된 문서 스캐너에서 이미지를 찾고 가져옵니다.
권한
documentScan
가용성
문서 스캔 API
Document Scan API는 앱과 확장 프로그램이 문서 콘텐츠를 표시하는 문서입니다.
유형
CancelScanResponse
속성
-
job
문자열
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
이면 키는 기기별 옵션이고 값은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[] | number[] 선택사항
-
최대
숫자 선택사항
-
분
숫자 선택사항
-
수량
숫자 선택사항
OptionGroup
속성
-
멤버
문자열[]
운전자가 제공한 순서의 옵션 이름 배열입니다.
-
제목
문자열
인쇄 가능한 제목(예: '도형 옵션')을 제공합니다.
OptionSetting
속성
-
이름
문자열
설정할 옵션의 이름을 나타냅니다.
-
유형
옵션의 데이터 유형을 나타냅니다. 요청된 데이터 유형은 기본 옵션의 실제 데이터 유형과 일치해야 합니다.
-
값
string | 숫자 | boolean | number[] 선택사항
설정할 값을 나타냅니다.
autoSettable
가 사용 설정된 옵션의 자동 설정을 요청하려면 설정하지 않은 상태로 두세요.value
에 제공된 데이터 유형은type
과 일치해야 합니다.
OptionType
옵션의 데이터 유형입니다.
열거형
"UNKNOWN"
옵션의 데이터 유형을 알 수 없습니다. value
속성이 설정 해제됩니다.
"BOOL"
value
속성은 true
false 중 하나입니다.
"INT"
부호 있는 32비트 정수입니다. value
속성은 옵션에 값을 두 개 이상 사용하는지에 따라 long[] 또는 long[]입니다.
"FIXED(해결됨)"
해상도가 1/65535이고 -32768-32767.9999 범위의 double입니다. value
속성은 옵션에 값을 두 개 이상 사용하는지에 따라 double 또는 double[] 이 됩니다. 정확하게 표시할 수 없는 double 값은 사용 가능한 범위 및 정밀도로 반올림됩니다.
"STRING"
NUL('\0')을 제외한 모든 바이트의 시퀀스입니다. value
속성은 DOMString이 됩니다.
"BUTTON"
이 유형의 옵션에는 값이 없습니다. 대신 이 유형의 옵션을 설정하면 스캐너 드라이버에 옵션별 부작용이 발생합니다. 예를 들어 스캐너 드라이버는 버튼 유형을 사용하여 기본값을 선택하거나 자동 문서 공급기에 다음 용지로 이동하도록 지시할 수 있습니다.
"GROUP"
그룹화 옵션. 값 없음. 호환성을 위해 포함되지만 일반적으로 ScannerOption
값에 반환되지 않습니다. getOptionGroups()
를 사용하여 구성원 옵션이 있는 그룹 목록을 검색합니다.
열거형
"UNITLESS"
값이 단위가 없는 숫자입니다. 예를 들어 기준점이 될 수 있습니다.
"PIXEL"
값은 픽셀 수(예: 스캔 크기)입니다.
"BIT"
값은 비트 수입니다(예: 색심도).
"MM"
값은 밀리미터 단위로 측정됩니다(예: 스캔 크기).
"DPI"
값은 인치당 도트 수로 측정됩니다(예: 해상도).
"PERCENT"
값은 퍼센트(예: 밝기)입니다.
"MICROsecond"
값은 마이크로초 단위로 측정됩니다(예: 노출 시간).
ReadScanDataResponse
속성
-
데이터
ArrayBuffer 선택사항
result
이SUCCESS
이면 스캔된 이미지 데이터의 다음 청크가 포함됩니다.result
이EOF
이면 스캔된 이미지 데이터의 마지막 청크가 포함됩니다. -
estimatedCompletion
숫자 선택사항
result
이SUCCESS
인 경우 지금까지 전송된 총 스캔 데이터 양에 대한 추정치(0~100 범위)입니다. -
job
문자열
readScanData()
에 전달된 작업 핸들을 제공합니다. -
데이터를 읽은 결과입니다. 값이
SUCCESS
이면data
에는 읽을 준비가 된 이미지 데이터의 다음 청크 (길이가 0일 수도 있음)가 포함됩니다. 값이EOF
인 경우data
에는 이미지 데이터의 마지막 청크가 포함됩니다.
ScannerInfo
속성
-
connectionType
스캐너가 컴퓨터에 연결된 방법을 나타냅니다.
-
deviceUuid
문자열
동일한 실제 기기를 가리키는 다른
ScannerInfo
항목과의 매칭. -
imageFormats
문자열[]
반환된 스캔에 대해 요청할 수 있는 MIME 유형의 배열입니다.
-
제조업체
문자열
스캐너 제조업체입니다.
-
모델
문자열
스캐너 모델(제공되는 경우) 또는 일반적인 설명입니다.
-
이름
문자열
UI에 표시할 스캐너의 인간이 읽을 수 있는 이름입니다.
-
protocolType
문자열
Mopria, WSD 또는 epsonds 등 스캐너에 액세스하는 데 사용되는 프로토콜 또는 드라이버에 대한 인간이 읽을 수 있는 설명입니다. 이는 기기가 여러 프로토콜을 지원하는 경우 사용자가 프로토콜 중에서 선택할 수 있도록 하는 데 주로 유용합니다.
-
scannerId
문자열
특정 스캐너의 ID입니다.
-
보안
부울
true인 경우 TLS 또는 USB와 같은 수동 리스너가 스캐너 연결 전송을 가로챌 수 없습니다.
ScannerOption
속성
-
구성 가능성
옵션 변경 가능 여부 및 방법을 나타냅니다.
-
제약조건
OptionConstraint 선택사항
현재 스캐너 옵션에서
OptionConstraint
를 정의합니다. -
설명
문자열
옵션에 관한 더 긴 설명입니다.
-
isActive
부울
옵션이 활성 상태이며 설정하거나 가져올 수 있음을 나타냅니다. false인 경우
value
속성이 설정되지 않습니다. -
isAdvanced
부울
UI가 기본적으로 이 옵션을 표시하면 안 됨을 나타냅니다.
-
isAutoSettable
부울
스캐너 드라이버에서 자동으로 설정할 수 있습니다.
-
isDetectable
부울
소프트웨어에서 이 옵션을 감지할 수 있음을 나타냅니다.
-
isEmulated
부울
true인 경우 스캐너 드라이버에 의해 에뮬레이션됩니다.
-
이름
문자열
소문자 ASCII 문자, 숫자, 대시를 사용한 옵션 이름입니다. 발음 구별 부호는 허용되지 않습니다.
-
제목
문자열
인쇄할 수 있는 한 줄 제목입니다.
-
유형
value
속성에 포함된 데이터 유형으로, 이 옵션을 설정하는 데 필요합니다. -
단위
이 옵션의 측정 단위입니다.
-
값
string | 숫자 | boolean | number[] 선택사항
옵션의 현재 값입니다(해당하는 경우). 이 속성의 데이터 유형은
type
에 지정된 데이터 유형과 일치해야 합니다.
ScanOptions
속성
-
maxImages
숫자 선택사항
허용되는 스캔 이미지 수입니다. 기본값은 1입니다.
-
mimeTypes
string[] 선택사항
호출자가 수락한 MIME 유형입니다.
ScanResults
속성
-
dataUrls
문자열[]
'src'로 전달할 수 있는 형식의 데이터 이미지 URL 배열입니다. 값을 이미지 태그에 추가합니다.
-
mimeType
문자열
dataUrls
의 MIME 유형입니다.
SetOptionResult
속성
-
이름
문자열
설정된 옵션의 이름을 나타냅니다.
-
옵션 설정 결과를 나타냅니다.
SetOptionsResponse
속성
-
옵션
객체(선택사항)
제공된 모든 옵션 설정을 시도한 후에 옵션 이름에서 새 구성을 포함하는
ScannerOption
값으로 키-값 매핑을 업데이트했습니다.OpenScannerResponse
의options
속성과 구조가 같습니다.이 속성은 일부 옵션이 성공적으로 설정되지 않은 경우에도 설정되지만 업데이트된 구성 가져오기에 실패하는 경우 (예: 스캔 도중에 스캐너 연결이 끊긴 경우) 설정 해제됩니다.
-
결과
전달된
OptionSetting
마다 하나씩 결과의 배열입니다. -
scannerHandle
문자열
setOptions()
에 전달된 스캐너 핸들을 제공합니다.
StartScanOptions
속성
-
형식
문자열
스캔된 데이터를 반환할 MIME 유형을 지정합니다.
-
maxReadSize
숫자 선택사항
0이 아닌 값을 지정하면 단일
readScanData
응답에서 반환되는 스캔되는 최대 바이트를 해당 값으로 제한합니다. 허용되는 최소 값은 32768 (32KB)입니다. 이 속성을 지정하지 않으면 반환된 청크의 크기가 스캔한 전체 이미지의 크기일 수 있습니다.
StartScanResponse
속성
-
job
문자열(선택사항)
result
가SUCCESS
이면 스캔 데이터를 읽거나 작업을 취소하는 데 사용할 수 있는 핸들을 제공합니다. -
스캔 시작 결과입니다. 값이
SUCCESS
이면job
속성이 채워집니다. -
scannerHandle
문자열
startScan()
에 전달된 것과 동일한 스캐너 핸들을 제공합니다.
메서드
cancelScan()
chrome.documentScan.cancelScan(
job: string,
callback?: function,
)
시작된 스캔을 취소하고 CancelScanResponse
객체로 확인되는 프로미스를 반환합니다. 콜백을 사용하면 객체가 콜백으로 대신 전달됩니다.
매개변수
-
job
문자열
이전에
startScan
호출에서 반환된 활성 스캔 작업의 핸들입니다. -
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(response: CancelScanResponse) => void
반환 값
-
Promise<CancelScanResponse>
프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
closeScanner()
chrome.documentScan.closeScanner(
scannerHandle: string,
callback?: function,
)
전달된 핸들로 스캐너를 닫고 CloseScannerResponse
객체로 확인되는 프로미스를 반환합니다. 콜백을 사용하면 객체가 콜백으로 대신 전달됩니다. 응답이 성공하지 못하더라도 제공된 핸들은 유효하지 않게 되며 추가 작업에 사용해서는 안 됩니다.
매개변수
-
scannerHandle
문자열
이전에
openScanner
호출에서 반환된 열린 스캐너의 핸들을 지정합니다. -
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(response: CloseScannerResponse) => void
반환 값
-
Promise<CloseScannerResponse>
프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
getOptionGroups()
chrome.documentScan.getOptionGroups(
scannerHandle: string,
callback?: function,
)
이전에 openScanner
로 연 스캐너에서 그룹 이름 및 구성원 옵션을 가져옵니다. 이 메서드는 GetOptionGroupsResponse
객체로 확인되는 프로미스를 반환합니다. 이 함수에 콜백이 전달되면 반환된 데이터가 대신 이 함수에 전달됩니다.
매개변수
-
scannerHandle
문자열
openScanner
호출에서 반환된 열려 있는 스캐너의 핸들입니다. -
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(response: GetOptionGroupsResponse) => void
반환 값
-
Promise<GetOptionGroupsResponse>
프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
getScannerList()
chrome.documentScan.getScannerList(
filter: DeviceFilter,
callback?: function,
)
사용 가능한 스캐너 목록을 가져오고 GetScannerListResponse
객체로 확인되는 프로미스를 반환합니다. 이 함수에 콜백이 전달되면 반환된 데이터가 대신 이 함수에 전달됩니다.
매개변수
-
filter
반환되어야 하는 스캐너 유형을 나타내는
DeviceFilter
입니다. -
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(response: GetScannerListResponse) => void
반환 값
-
Promise<GetScannerListResponse>
프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
openScanner()
chrome.documentScan.openScanner(
scannerId: string,
callback?: function,
)
독점 액세스를 위한 스캐너를 열고 OpenScannerResponse
객체로 확인되는 프로미스를 반환합니다. 이 함수에 콜백이 전달되면 반환된 데이터가 대신 이 함수에 전달됩니다.
매개변수
-
scannerId
문자열
열 스캐너의 ID입니다. 이 값은 이전
getScannerList
호출에서 반환된 값입니다. -
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(response: OpenScannerResponse) => void
반환 값
-
Promise<OpenScannerResponse>
프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
readScanData()
chrome.documentScan.readScanData(
job: string,
callback?: function,
)
활성 작업 핸들에서 사용 가능한 이미지 데이터의 다음 청크를 읽고 ReadScanDataResponse
객체로 확인되는 프로미스를 반환합니다. 콜백을 사용하면 객체가 콜백으로 대신 전달됩니다.
**참고:**응답 결과는 길이가 0인 data
멤버를 가진 SUCCESS
일 수 있습니다. 이는 스캐너가 아직 작동하고 있지만 아직 추가 데이터가 준비되지 않았음을 의미합니다. 호출자는 잠시 기다린 후 다시 시도해야 합니다.
스캔 작업이 완료되면 응답에 EOF
의 결과 값이 표시됩니다. 이 응답에는 0이 아닌 최종 data
멤버가 포함될 수 있습니다.
매개변수
-
job
문자열
이전에
startScan
에서 반환된 활성 작업 핸들입니다. -
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(response: ReadScanDataResponse) => void
반환 값
-
Promise<ReadScanDataResponse>
프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
scan()
chrome.documentScan.scan(
options: ScanOptions,
callback?: function,
)
문서 스캔을 실행하고 ScanResults
객체로 확인되는 프로미스를 반환합니다. 이 함수에 콜백이 전달되면 반환된 데이터가 대신 이 함수에 전달됩니다.
매개변수
-
옵션
스캔 매개변수를 포함하는 객체입니다.
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(result: ScanResults) => void
-
결과
-
반환 값
-
Promise<ScanResults>
Chrome 96 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
setOptions()
chrome.documentScan.setOptions(
scannerHandle: string,
options: OptionSetting[],
callback?: function,
)
지정된 스캐너에 옵션을 설정하고 전달된 OptionSetting
객체 순서대로 모든 값을 설정하려고 한 결과가 포함된 SetOptionsResponse
객체로 확인되는 프로미스를 반환합니다. 콜백을 사용하면 객체가 콜백으로 대신 전달됩니다.
매개변수
-
scannerHandle
문자열
옵션을 설정할 스캐너의 핸들입니다. 이전에
openScanner
호출에서 반환된 값이어야 합니다. -
옵션
스캐너에 적용할
OptionSetting
객체의 목록입니다. -
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(response: SetOptionsResponse) => void
반환 값
-
Promise<SetOptionsResponse>
프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
startScan()
chrome.documentScan.startScan(
scannerHandle: string,
options: StartScanOptions,
callback?: function,
)
지정된 스캐너에서 스캔을 시작하고 StartScanResponse
로 확인되는 프로미스를 반환합니다. 콜백을 사용하면 객체가 콜백으로 대신 전달됩니다. 호출이 성공하면 후속 호출에서 스캔 데이터를 읽거나 스캔을 취소하는 데 사용할 수 있는 작업 핸들이 응답에 포함됩니다.
매개변수
-
scannerHandle
문자열
열려 있는 스캐너의 핸들입니다. 이전에
openScanner
호출에서 반환된 값이어야 합니다. -
스캔에 사용할 옵션을 나타내는
StartScanOptions
객체입니다.StartScanOptions.format
속성은 스캐너의ScannerInfo
에 반환된 항목 중 하나와 일치해야 합니다. -
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(response: StartScanResponse) => void
반환 값
-
Promise<StartScanResponse>
프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.