Açıklama
Ekli belge tarayıcılardan görüntü keşfetmek ve almak için chrome.documentScan
API'yi kullanın.
Document Scan API'nin amacı, uygulamaların ve uzantıların, ekli bir belge tarayıcıda basılı dokümanların içeriğini görüntülemesine olanak tanımaktır.
İzinler
documentScan
Kullanılabilirlik
Kavramlar ve kullanım
Bu API, iki doküman tarama yöntemini destekler. Kullanım alanınız herhangi bir tarayıcıyla çalışabiliyorsa ve yapılandırmanın kontrol edilmesini gerektirmiyorsa scan()
yöntemini kullanın. Daha karmaşık kullanım alanları, yalnızca Chrome 124 ve sonraki sürümlerde desteklenen yöntemlerin bir kombinasyonunu gerektirir.
Basit tarama
Basit kullanım alanları, yani tüm tarayıcılarla çalışabilen ve yapılandırma kontrolü gerektirmemesi için scan()
numaralı telefonu arayın. Bu yöntem bir ScanOptions
nesnesini alır ve ScanResults
nesnesiyle çözümlenen bir Promise döndürür. Bu seçeneğin özellikleri, arayan tarafından kabul edilecek tarama sayısı ve MIME türleriyle sınırlıdır. Taramalar, kullanıcı arayüzü için <img>
etiketinde gösterilmek üzere URL'ler olarak döndürülür.
Karmaşık tarama
Karmaşık taramalar, bu bölümde açıklandığı gibi üç aşamada gerçekleştirilir. Bu özet, her yöntem bağımsız değişkenini veya bir yanıtta döndürülen her özelliği açıklamaz. Yalnızca tarayıcı kodu yazma konusunda size genel bir kılavuz vermek için tasarlanmıştır.
Discovery
getScannerList()
numaralı telefonu arayın. Kullanılabilir tarayıcılar,GetScannerListResponse
ile çözümlenen bir Promise ile döndürülür.- Yanıt nesnesi,
ScannerInfo
nesne dizisi içerir. - Bir tarayıcı birden fazla protokolü veya bağlantı yöntemini destekliyorsa dizi, tek bir tarayıcı için birden fazla giriş içerebilir.
- Yanıt nesnesi,
Döndürülen diziden bir tarayıcı seçin ve
scannerId
özelliğinin değerini kaydedin.Aynı tarayıcı için birden fazla nesne arasında ayrım yapmak üzere ayrı
ScannerInfo
nesnelerinin özelliklerini kullanın. Aynı tarayıcıdan gelen nesneler,deviceUuid
özelliği için aynı değere sahip olur.ScannerInfo
, desteklenen resim türleri dizisi içeren birimageFormats
özelliği de içerir.
Tarayıcı yapılandırması
Kayıtlı tarayıcı kimliğini kullanarak
openScanner()
numaralı telefonu arayın.OpenScannerResponse
ile çözümlenen bir Promise döndürür. Yanıt nesnesi şunları içerir:Kaydetmeniz gereken
scannerHandle
özelliği.Ayarlamanız gereken tarayıcıya özel özellikleri içeren bir seçenekler özelliği. Daha fazla bilgi için Tarayıcı seçeneklerini alma konusuna bakın.
(İsteğe bağlı) Kullanıcının tarayıcı seçenekleri için değerler sağlaması gerekiyorsa bir kullanıcı arayüzü oluşturun. Önceki adımda sağlanan tarayıcı seçeneklerine ve tarayıcı tarafından sağlanan seçenek gruplarını almanız gerekir. Daha fazla bilgi için Kullanıcı arayüzü oluşturma sayfasına göz atın.
Programatik veya kullanıcı tarafından sağlanan değerleri kullanarak
OptionSetting
nesneleri dizisi oluşturun. Daha fazla bilgi edinmek için Tarayıcı seçeneklerini ayarlama konusuna bakın.Tarayıcının seçeneklerini ayarlamak için
OptionSetting
nesne dizisinisetOptions()
öğesine geçirin.SetOptionsResponse
ile çözümlenen bir Promise döndürür. Bu nesne, tarayıcı yapılandırmasının 1. adımında alınan tarayıcı seçeneklerinin güncellenmiş bir sürümünü içerir.Bir seçeneği değiştirmek diğer seçenekteki kısıtlamaları değiştirebileceğinden, bu adımları birkaç kez tekrarlamanız gerekebilir.
Taranıyor
Bir
StartScanOptions
nesnesi oluşturun vestartScan()
'e iletin.StartScanResponse
ile çözümlenen bir Promise döndürür.job
özelliği, tarama verilerini okumak veya taramayı iptal etmek için kullanacağınız bir herkese açık kullanıcı adıdır.İş tanıtıcısını
readScanData()
adlı kullanıcıya iletin.ReadScanDataResponse
nesnesiyle çözümlenen bir Promise döndürür. Veriler başarıyla okunduysaresult
özelliğiSUCCESS
değerine eşit olur vedata
mülkü, taramanın bir kısmıyla birlikte birArrayBuffer
içerir.estimatedCompletion
değerinin, şimdiye kadar yayınlanan toplam verilerin tahmini yüzdesini içerdiğini unutmayın.result
özelliğiEOF
değerine veya bir hataya eşit olana kadar önceki adımı tekrarlayın.
Taramanın sonuna ulaşıldığında, 3. adımda kaydedilen tarayıcı tutamacıyla closeScanner()
çağrısı yapın. CloseScannerResponse
ile çözümlenen bir Promise döndürür. İş oluşturulduktan sonra herhangi bir zamanda cancelScan()
çağrısı yapıldığında tarama sonlandırılır.
Yanıt nesneleri
Tüm yöntemler, bir tür yanıt nesnesiyle çözümlenen Promise döndürür.
Bunların çoğu, değeri OperationResult
üyesi olan bir result
özelliği içerir. result
değeri belirli bir değere sahip olmadığı sürece yanıt nesnelerinin bazı özellikleri değer içermez. Bu ilişkiler, her yanıt nesnesinin referansında açıklanmıştır.
Örneğin, OpenScannerResponse.scannerHandle
yalnızca OpenScannerResponse.result
şuna eşit olduğunda bir değere sahip olur: SUCCESS
.
Tarayıcı seçenekleri
Tarayıcı seçenekleri cihaza göre önemli ölçüde farklılık gösterir. Sonuç olarak, tarayıcı seçeneklerini doğrudan documentScan API'da yansıtmak mümkün değildir. Bu sorunu gidermek için OpenScannerResponse
(openScanner()
kullanılarak alınır) ve SetOptionsResponse
(setOptions()
için yanıt nesnesi), tarayıcıya özel seçenekler içeren bir nesne olan options
özelliğini içerir. Her seçenek, anahtarın cihaza özel bir seçenek ve değerin de bir ScannerOption
örneği olduğu bir anahtar/değer eşlemesidir.
Yapı genellikle şöyle görünür:
{
"key1": { scannerOptionInstance }
"key2": { scannerOptionInstance }
}
Örneğin, "kaynak" ve "çözünürlük" adlı seçenekleri döndüren bir tarayıcı düşünün. Döndürülen options
nesnesinin yapısı, aşağıdaki örneğe benzer. Kolaylık olması açısından yalnızca kısmi ScannerOption
yanıtları gösterilmiştir.
{
"source": {
"name": "source",
"type": OptionType.STRING,
...
},
"resolution": {
"name": "resolution",
"type": OptionType.INT,
...
},
...
}
Kullanıcı arayüzü oluşturma
Bu API'yi kullanmak zorunlu olmasa da, kullanıcının belirli bir seçeneğin değerini seçmesini isteyebilirsiniz. Bunun için kullanıcı arayüzü gerekir. Bir önceki bölümde açıklandığı gibi ekli tarayıcıyla ilgili seçenekleri almak için OpenScannerResponse
aracını (openScanner()
tarafından açılır) kullanın.
Bazı tarayıcılar, seçenekleri cihaza özel şekillerde gruplandırır. Seçenek davranışlarını etkilemezler ancak bu gruplar bir tarayıcının ürün belgelerinde belirtilebileceği için kullanıcıya bu tür gruplar gösterilmelidir. Bu grupları, getOptionGroups()
numaralı telefonu arayarak öğrenebilirsiniz. Bu, GetOptionGroupsResponse
nesnesiyle çözümlenen bir Promise döndürür. groups
özelliği, tarayıcıya özel bir grup dizisi içerir. Görüntülenecek OpenScannerResponse
seçeneklerini düzenlemek için bu gruplardaki bilgileri kullanın.
{
scannerHandle: "123456",
result: SUCCESS,
groups: [
{
title: "Standard",
members: [ "resolution", "mode", "source" ]
}
]
}
Tarayıcı yapılandırması bölümünde belirtildiği gibi, bir seçeneği değiştirmek diğer seçenekteki kısıtlamaları değiştirebilir. Bu nedenle setOptionsResponse
(setOptions()
için yanıt nesnesi) başka bir options
özelliği içerir. Kullanıcı arayüzünü güncellemek için bunu kullanın. Daha sonra, tüm seçenekler ayarlanana kadar
bu işlemi gerektiği kadar tekrarlayın.
Tarayıcı seçeneklerini ayarlama
Tarayıcı seçeneklerini, setOptions()
alanına bir OptionSetting
nesne dizisi ileterek ayarlayın. Örnek için aşağıdaki Bir harf boyutunda sayfayı tarama bölümüne bakın.
Örnekler
Sayfayı blob olarak al
Bu örnekte, bir sayfanın tarayıcıdan blob olarak alınması için bir yol gösterilmektedir. Ayrıca, OperationResult
değerini kullanarak startScan()
ve readScanData()
kullanımını gösterilmektedir.
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" });
}
Harf boyutunda sayfayı tara
Bu örnekte, bir tarayıcının nasıl seçileceği, seçeneklerini ayarlama ve açma işlemi gösterilmektedir. Daha sonra, tek bir sayfanın içeriğini alır ve tarayıcıyı kapatır. Bu süreçte getScannerList()
, openScanner()
, setOptions()
ve closeScanner()
öğelerinin kullanımı gösterilmektedir. Sayfa içeriğinin, önceki örnekte bulunan pageAsBlob()
işlevi çağrılarak alındığını unutmayın.
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);
}
Yapılandırmayı göster
Başka bir yerde belirtildiği gibi, bir tarayıcının yapılandırma seçeneklerinin kullanıcıya gösterilmesi, openScanner()
çağrısından döndürülen tarayıcı seçeneklerine ek olarak getOptionGroups()
çağrısını gerektirir. Böylece seçenekler, üreticiler tarafından tanımlanan gruplardaki kullanıcılara gösterilebilir. Bu örnekte, bunun nasıl yapılacağı gösterilmektedir.
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");
}
}
}
}
Türler
CancelScanResponse
Özellikler
-
iş
dize
cancelScan()
işlevine geçirilen tanıtıcıyı sağlar. -
sonuç
Arka ucun tarama iptali sonucu. Sonuç
OperationResult.SUCCESS
veyaOperationResult.CANCELLED
ise tarama iptal edilmiştir ve tarayıcı yeni bir tarama başlatmaya hazırdır. SonuçOperationResult.DEVICE_BUSY
ise , tarayıcı hâlâ istenen iptal işlemini işliyor demektir. Arayanın kısa bir süre bekleyip isteği yeniden denemesi gerekir. Diğer sonuç değerleri, yeniden denenmemesi gereken kalıcı bir hata olduğunu gösterir.
CloseScannerResponse
Özellikler
-
sonuç
Tarayıcının kapatılmasının sonucu. Bu değer
SUCCESS
olmasa bile herkese açık kullanıcı adı geçersiz olur ve daha fazla işlem için kullanılmamalıdır. -
scannerHandle
dize
closeScanner
ürününe geçirilen tarayıcı tutamacı.
Configurability
Bir seçeneğin nasıl değiştirilebileceği.
Enum
"NOT_CONFIGURABLE"
Bu seçenek salt okunurdur.
"SOFTWARE_CONFIGURABLE"
Bu seçenek yazılımda ayarlanabilir.
"HARDWARE_CONFIGURABLE"
Bu seçenek, kullanıcının tarayıcıdaki bir düğmeyi açıp kapatmasıyla veya düğmeye basmasıyla ayarlanabilir.
ConnectionType
Tarayıcının bilgisayara nasıl bağlandığını gösterir.
Enum
"USB"
Enum
"INT_RANGE"
OptionType.INT
değer aralığındaki kısıtlama. OptionConstraint
öğesinin min
, max
ve quant
özellikleri long
olacak ve list
mülkü kaldırılacak.
"FIXED_RANGE"
OptionType.FIXED
değer aralığındaki sınırlama. OptionConstraint
için min
, max
ve quant
özellikleri double
olacak ve list
özelliği ayarlanacak.
"INT_LIST"
Belirli bir OptionType.INT
değer listesindeki kısıtlama. OptionConstraint.list
özelliği long
değer içerecek, diğer özellikler ise ayarlanacak.
"FIXED_LIST"
Belirli bir OptionType.FIXED
değer listesindeki kısıtlama. OptionConstraint.list
özelliği double
değer içerecek, diğer özellikler ise ayarlanacak.
"STRING_LIST"
Belirli bir OptionType.STRING
değer listesindeki kısıtlama. OptionConstraint.list
özelliği DOMString
değer içerecek, diğer özellikler ise ayarlanacak.
DeviceFilter
Özellikler
-
local
boole isteğe bağlı
Yalnızca doğrudan bilgisayara bağlı olan tarayıcıları iade edin.
-
güvenli
boole isteğe bağlı
Yalnızca USB veya TLS gibi güvenli aktarım kullanan tarayıcıları iade edin.
GetOptionGroupsResponse
Özellikler
-
grup
OptionGroup[] isteğe bağlı
result
değeriSUCCESS
ise tarayıcı sürücüsü tarafından sağlanan sırayla seçenek gruplarının listesini sağlar. -
sonuç
Seçenek gruplarını almanın sonucu. Bunun değeri
SUCCESS
isegroups
özelliği doldurulur. -
scannerHandle
dize
getOptionGroups
ürününe geçirilen tarayıcı tutamacı.
GetScannerListResponse
Özellikler
-
sonuç
Sıralama sonucu. Bu durum bir hata olduğunu belirtse bile kısmi sonuçların döndürülebileceğini unutmayın.
-
Tarayıcılar
Sağlanan
DeviceFilter
ile eşleşen tarayıcıların büyük olasılıkla boş listesi.
OpenScannerResponse
Özellikler
-
seçenekler
isteğe bağlı
result
değeriSUCCESS
ise anahtarın cihaza özel bir seçenek, değerin iseScannerOption
örneği olduğu bir anahtar/değer eşlemesi sağlar. -
sonuç
Tarayıcının açılması. Bunun değeri
SUCCESS
isescannerHandle
veoptions
özellikleri doldurulur. -
scannerHandle
string isteğe bağlı
result
değeriSUCCESS
ise tarayıcı için daha fazla işlemde kullanılabilecek tutma yeri. -
scannerId
dize
Tarayıcı kimliği
openScanner()
cihazına iletildi.
OperationResult
Her işlemin sonucunu gösteren bir numaralandırma.
Enum
"UNKNOWN"
Bilinmeyen veya genel bir hata oluştu.
"SUCCESS"
İşlem başarılı.
"UNSUPPORTED"
İşlem desteklenmiyor.
"CANCELLED"
İşlem iptal edildi.
"DEVICE_BUSY"
Cihaz meşgul.
"INVALID"
Veriler veya yönteme iletilen bir bağımsız değişken geçerli değil.
"WRONG_TYPE"
Sağlanan değer, temel seçenek için yanlış veri türü.
"EOF"
Başka veri yok.
"ADF_JAMMED"
Doküman besleyici sıkıştı.
"ADF_EMPTY"
Doküman besleyici boş.
"COVER_OPEN"
Düz yatak kapağı açık.
"IO_ERROR"
Cihazla iletişim kurulurken bir hata oluştu.
"ACCESS_DENIED"
Cihaz kimlik doğrulaması gerektiriyor.
"NO_MEMORY"
Chromebook'ta işlemi tamamlayacak yeterli bellek yok.
"UNREACHABLE"
Cihaza erişilemiyor.
"MISSING"
Cihazın bağlantısı kesildi.
"INTERNAL_ERROR"
Çağrı yapan uygulamanın dışında bir yerde hata oluştu.
OptionConstraint
Özellikler
-
list
string[] | number[] isteğe bağlı
-
maks.
numara isteğe bağlı
-
dk
numara isteğe bağlı
-
nicelik
numara isteğe bağlı
-
tür
OptionGroup
Özellikler
-
üyeler
dize[]
Sürücü tarafından sağlanan sıraya göre seçenek adları dizisi.
-
title
dize
Yazdırılabilir bir başlık sağlar (örneğin, "Geometri seçenekleri").
OptionSetting
Özellikler
-
ad
dize
Ayarlanacak seçeneğin adını belirtir.
-
tür
Seçeneğin veri türünü belirtir. İstenen veri türü, temel seçeneğin gerçek veri türüyle eşleşmelidir.
-
value
string | number | boole | sayı[] isteğe bağlı
Ayarlanacak değeri gösterir.
autoSettable
öğesinin etkin olduğu seçenekler için otomatik ayar istemek üzere ayarlamadan bırakın.value
için sağlanan veri türütype
ile eşleşmelidir.
OptionType
Bir seçeneğin veri türü.
Enum
"UNKNOWN"
Bu seçeneğin veri türü bilinmiyor. value
özelliği kaldırılacak.
"BOOL"
value
özelliği true
false olacaktır.
"INT"
İmzalı 32 bitlik bir tam sayı. value
özelliği, seçeneğin birden fazla değer alıp almadığına bağlı olarak uzun veya uzun[] olur.
"FIXED"
1/65535 çözünürlüğünde, -32768-32767.9999 aralığında bir çift. value
özelliği, seçeneğin birden fazla değer alıp almadığına bağlı olarak çift veya çift[] olur. Tam olarak gösterilemeyen çift değerler, kullanılabilir aralığa ve kesinliğe yuvarlanır.
"STRING"
NUL ('\0') hariç herhangi bir bayt dizisi. value
özelliği bir DOMString olacaktır.
"BUTTON"
Bu tür bir seçeneğin değeri yok. Bunun yerine, bu tür bir seçeneğin ayarlanması, tarayıcı sürücüsünde seçeneğe özgü bir yan etkiye neden olur. Örneğin, düğmeyle yazılmış bir seçenek tarayıcı sürücüsü tarafından varsayılan değerleri seçmeye veya otomatik bir belge besleyiciye sonraki sayfaya ilerlemesini söyleyen bir yöntem sağlamak için kullanılabilir.
"GROUP"
Gruplandırma seçeneği. Değer yok. Bu, uyumluluk için dahil edilir, ancak normalde ScannerOption
değerlerinde döndürülmez. Üye seçenekleriyle birlikte grup listesini almak için getOptionGroups()
öğesini kullanın.
Enum
"UNITLESS"
Değer, birimsiz bir sayı. Örneğin, bu bir eşik olabilir.
"PİKSEL"
Değer, piksel sayısıdır (ör. tarama boyutları).
"BİT"
Değer, bit sayısıdır (ör. renk derinliği).
"MM"
Değer milimetre cinsinden ölçülür (ör. tarama boyutları).
"DPI"
Değer, inç başına nokta cinsinden ölçülür (ör. çözünürlük).
"PERCENT"
Değer, yüzde değeridir (ör. parlaklık).
"MICROSECOND"
Değer, mikrosaniye cinsinden ölçülür (ör. karşılaşma süresi).
ReadScanDataResponse
Özellikler
-
veri
ArrayBuffer isteğe bağlı
result
değeriSUCCESS
ise taranan resim verilerinin sonraki grubunu içerir.result
değeriEOF
ise taranan görüntü verilerinin son yığınını içerir. -
estimatedCompletion
numara isteğe bağlı
result
değeriSUCCESS
ise toplam tarama verilerinin ne kadarının şu ana kadar yayınlandığına dair bir tahmindir (0-100 aralığında). -
iş
dize
readScanData()
öğesine iletilen iş tanıtıcısını sağlar. -
sonuç
Verileri okuma işleminin sonucu. Değeri
SUCCESS
isedata
, okunmaya hazır sonraki (muhtemelen sıfır uzunlukta) resim verisi parçasını içerir. DeğeriEOF
isedata
, resim verilerinin son parçasını içerir.
ScannerInfo
Özellikler
-
connectionType
Tarayıcının bilgisayara nasıl bağlandığını gösterir.
-
deviceUuid
dize
Aynı fiziksel cihaza işaret eden diğer
ScannerInfo
girişleriyle eşleştirme yapmak için. -
imageFormats
dize[]
Döndürülen taramalar için istenebilecek MIME türleri dizisi.
-
üretici
dize
Tarayıcı üreticisi.
-
model
dize
Varsa tarayıcı modeli veya genel bir açıklama.
-
ad
dize
Tarayıcının, kullanıcı arayüzünde görüntüleyebileceği, kullanıcılar tarafından okunabilir bir ad.
-
protocolType
dize
Tarayıcıya erişmek için kullanılan protokolün veya sürücünün (Mopria, WSD veya epsonds gibi) okunabilir açıklaması. Bu işlev esasen, bir cihaz birden fazla protokolü destekliyorsa kullanıcının protokoller arasında seçim yapabilmesi açısından yararlıdır.
-
scannerId
dize
Belirli bir tarayıcının kimliği.
-
güvenli
boolean
Doğru değerine ayarlanırsa tarayıcı bağlantısının aktarımı, TLS veya USB gibi pasif bir işleyici tarafından engellenemez.
ScannerOption
Özellikler
-
yapılandırılabilirlik
Seçeneğin değiştirilip değiştirilemeyeceğini ve nasıl değiştirilebileceğini belirtir.
-
kısıtlama
OptionConstraint isteğe bağlı
Mevcut tarayıcı seçeneğinde
OptionConstraint
tanımlar. -
açıklama
dize
Seçeneğin daha uzun bir açıklaması.
-
isActive
boolean
Seçeneğin etkin olduğunu ve ayarlanabileceğini veya alınabileceğini belirtir. Yanlış değerine ayarlanırsa
value
özelliği ayarlanmaz. -
isAdvanced
boolean
Kullanıcı arayüzünün varsayılan olarak bu seçeneği görüntülememesi gerektiğini belirtir.
-
isAutoSettable
boolean
Tarayıcı sürücüsü tarafından otomatik olarak ayarlanabilir.
-
isDetectable
boolean
Bu seçeneğin yazılımdan algılanabileceğini belirtir.
-
isEmulated
boolean
Doğruysa tarayıcı sürücüsü tarafından emülasyon yapılır.
-
ad
dize
Küçük ASCII harfleri, sayıları ve tireleri kullanılan seçenek adı. Aksan işaretlerine izin verilmez.
-
title
dize
Yazdırılabilir tek satırlık başlık.
-
tür
value
özelliğinde bulunan ve bu seçeneğin ayarlanması için gerekli olan veri türü. -
birim
Bu seçenek için ölçü birimidir.
-
value
string | number | boole | sayı[] isteğe bağlı
Geçerliyse seçeneğin mevcut değeri. Bu mülkün veri türünün,
type
politikasında belirtilen veri türüyle eşleşmesi gerektiğini unutmayın.
ScanOptions
Özellikler
-
maxImages
numara isteğe bağlı
İzin verilen taranan resim sayısı. Varsayılan değer 1'dir.
-
mimeTypes
string[] isteğe bağlı
Arayan tarafından kabul edilen MIME türleri.
ScanResults
Özellikler
-
dataUrls
dize[]
Bir resim etiketine "src" değeri olarak geçirilebilecek bir formdaki veri görüntüsü URL'leri dizisi.
-
mimeType
dize
dataUrls
öğesinin MIME türü.
SetOptionResult
Özellikler
-
ad
dize
Ayarlanan seçeneğin adını gösterir.
-
sonuç
Seçenek ayarlamanın sonucunu belirtir.
SetOptionsResponse
Özellikler
-
seçenekler
isteğe bağlı
Sağlanan tüm seçenekler ayarlandıktan sonra, yeni yapılandırmayı içeren seçenek adlarından
ScannerOption
değerlerine güncellenmiş anahtar/değer eşlemesi. Bu,OpenScannerResponse
içindekioptions
mülküyle aynı yapıya sahiptir.Bazı seçenekler başarıyla ayarlanmasa bile bu özellik ayarlanır, ancak güncellenen yapılandırmanın alınamaması durumunda (örneğin, taramanın ortasında tarayıcının bağlantısı kesilirse) ayarlanmaz.
-
sonuç
Her
OptionSetting
için iletilen bir sonuç dizisi. -
scannerHandle
dize
setOptions()
öğesine iletilen tarayıcı tanıtıcısını sağlar.
StartScanOptions
Özellikler
-
biçim
dize
Taranan verilerin döndürüleceği MIME türünü belirtir.
-
maxReadSize
numara isteğe bağlı
Sıfır dışında bir değer belirtilirse bu değere tek bir
readScanData
yanıtında döndürülen maksimum taranan bayt sayısını sınırlar. İzin verilen en küçük değer 32768'dir (32 KB). Bu özellik belirtilmezse döndürülen bir parçanın boyutu, taranan görüntünün tamamı kadar büyük olabilir.
StartScanResponse
Özellikler
-
iş
string isteğe bağlı
result
değeriSUCCESS
ise tarama verilerini okumak veya işi iptal etmek için kullanılabilecek bir herkese açık kullanıcı adı sağlar. -
sonuç
Taramanın başlatılmasının sonucu. Bunun değeri
SUCCESS
isejob
özelliği doldurulur. -
scannerHandle
dize
startScan()
öğesine geçirilen tarayıcı tanıtıcısını sağlar.
Yöntemler
cancelScan()
chrome.documentScan.cancelScan(
job: string,
callback?: function,
)
Başlatılmış bir taramayı iptal eder ve CancelScanResponse
nesnesiyle çözümlenen bir Promise döndürür. Bir geri çağırma kullanılırsa, bunun yerine nesne buna iletilir.
Parametreler
-
iş
dize
Daha önce
startScan
çağrısından döndürülen etkin bir tarama işinin herkese açık kullanıcı adı. -
geri çağırma
Functions (isteğe bağlı)
callback
parametresi şu şekilde görünür:(response: CancelScanResponse) => void
-
yanıt
-
İlerlemeler
-
Promise<CancelScanResponse>
Vaatler, Manifest V3 ve sonraki sürümlerde desteklenir ancak geriye dönük uyumluluk için geri çağırmalar sağlanır. Aynı işlev çağrısında ikisini birden kullanamazsınız. Vaat, geri çağırmaya iletilen aynı türle çözümlenir.
closeScanner()
chrome.documentScan.closeScanner(
scannerHandle: string,
callback?: function,
)
Tarayıcıyı, iletilen işleyiciyle kapatır ve CloseScannerResponse
nesnesiyle çözümlenen bir Promise döndürür. Bir geri çağırma kullanılırsa, bunun yerine nesne buna iletilir. Yanıt başarılı olmasa bile, sağlanan herkese açık kullanıcı adı geçersiz hale gelir ve bundan sonraki işlemlerde kullanılmamalıdır.
Parametreler
-
scannerHandle
dize
Daha önce
openScanner
öğesine yapılan bir çağrıdan döndürülen açık bir tarayıcının kullanıcı adını belirtir. -
geri çağırma
Functions (isteğe bağlı)
callback
parametresi şu şekilde görünür:(response: CloseScannerResponse) => void
-
yanıt
-
İlerlemeler
-
Promise<CloseScannerResponse>
Vaatler, Manifest V3 ve sonraki sürümlerde desteklenir ancak geriye dönük uyumluluk için geri çağırmalar sağlanır. Aynı işlev çağrısında ikisini birden kullanamazsınız. Vaat, geri çağırmaya iletilen aynı türle çözümlenir.
getOptionGroups()
chrome.documentScan.getOptionGroups(
scannerHandle: string,
callback?: function,
)
Daha önce openScanner
tarafından açılmış bir tarayıcıdan grup adlarını ve üye seçeneklerini alır. Bu yöntem, GetOptionGroupsResponse
nesnesiyle çözümlenen bir Promise döndürür. Bu işleve bir geri çağırma aktarılırsa döndürülen veriler bu işleve iletilir.
Parametreler
-
scannerHandle
dize
openScanner
çağrısından döndürülen açık tarayıcının kullanıcı adı. -
geri çağırma
Functions (isteğe bağlı)
callback
parametresi şu şekilde görünür:(response: GetOptionGroupsResponse) => void
-
yanıt
-
İlerlemeler
-
Promise<GetOptionGroupsResponse>
Vaatler, Manifest V3 ve sonraki sürümlerde desteklenir ancak geriye dönük uyumluluk için geri çağırmalar sağlanır. Aynı işlev çağrısında ikisini birden kullanamazsınız. Vaat, geri çağırmaya iletilen aynı türle çözümlenir.
getScannerList()
chrome.documentScan.getScannerList(
filter: DeviceFilter,
callback?: function,
)
Kullanılabilir tarayıcıların listesini alır ve GetScannerListResponse
nesnesiyle çözümlenen bir Promise döndürür. Bu işleve bir geri çağırma aktarılırsa döndürülen veriler bu işleve iletilir.
Parametreler
-
filter
Döndürülecek tarayıcı türlerini belirten bir
DeviceFilter
. -
geri çağırma
Functions (isteğe bağlı)
callback
parametresi şu şekilde görünür:(response: GetScannerListResponse) => void
-
yanıt
-
İlerlemeler
-
Promise<GetScannerListResponse>
Vaatler, Manifest V3 ve sonraki sürümlerde desteklenir ancak geriye dönük uyumluluk için geri çağırmalar sağlanır. Aynı işlev çağrısında ikisini birden kullanamazsınız. Vaat, geri çağırmaya iletilen aynı türle çözümlenir.
openScanner()
chrome.documentScan.openScanner(
scannerId: string,
callback?: function,
)
Özel erişim için bir tarayıcı açar ve OpenScannerResponse
nesnesiyle çözümlenen bir Promise döndürür. Bu işleve bir geri çağırma aktarılırsa döndürülen veriler bu işleve iletilir.
Parametreler
-
scannerId
dize
Açılacak tarayıcının kimliği. Bu değer,
getScannerList
için yapılan önceki bir çağrıdan döndürülen bir değerdir. -
geri çağırma
Functions (isteğe bağlı)
callback
parametresi şu şekilde görünür:(response: OpenScannerResponse) => void
-
yanıt
-
İlerlemeler
-
Promise<OpenScannerResponse>
Vaatler, Manifest V3 ve sonraki sürümlerde desteklenir ancak geriye dönük uyumluluk için geri çağırmalar sağlanır. Aynı işlev çağrısında ikisini birden kullanamazsınız. Vaat, geri çağırmaya iletilen aynı türle çözümlenir.
readScanData()
chrome.documentScan.readScanData(
job: string,
callback?: function,
)
Etkin bir iş tanıtıcısından mevcut resim verilerinin sonraki parçasını okur ve ReadScanDataResponse
nesnesiyle çözümlenen bir Promise döndürür. Bir geri çağırma kullanılırsa, bunun yerine nesne buna iletilir.
**Not:**Yanıt sonucunun sıfır uzunlukta data
üyesi olan SUCCESS
olması için geçerlidir. Bu, tarayıcının çalışmaya devam ettiği ancak ek verilerinin henüz hazır olmadığı anlamına gelir. Arayan kişi kısa bir süre bekleyip tekrar denemelidir.
Tarama işi tamamlandığında yanıt EOF
sonucunu verir. Bu yanıtta, değeri sıfır olmayan son bir data
üye bulunabilir.
Parametreler
-
iş
dize
Daha önce
startScan
öğesinden döndürülen etkin iş tanıtıcısı. -
geri çağırma
Functions (isteğe bağlı)
callback
parametresi şu şekilde görünür:(response: ReadScanDataResponse) => void
-
yanıt
-
İlerlemeler
-
Promise<ReadScanDataResponse>
Vaatler, Manifest V3 ve sonraki sürümlerde desteklenir ancak geriye dönük uyumluluk için geri çağırmalar sağlanır. Aynı işlev çağrısında ikisini birden kullanamazsınız. Vaat, geri çağırmaya iletilen aynı türle çözümlenir.
scan()
chrome.documentScan.scan(
options: ScanOptions,
callback?: function,
)
Belge taraması yürütür ve ScanResults
nesnesiyle çözümlenen bir Promise döndürür. Bu işleve bir geri çağırma aktarılırsa döndürülen veriler bu işleve geçirilir.
Parametreler
-
seçenekler
Tarama parametrelerini içeren bir nesne.
-
geri çağırma
Functions (isteğe bağlı)
callback
parametresi şu şekilde görünür:(result: ScanResults) => void
-
sonuç
-
İlerlemeler
-
Promise<ScanResults>
Chrome 96 ve sonraki sürümlerVaatler, Manifest V3 ve sonraki sürümlerde desteklenir ancak geriye dönük uyumluluk için geri çağırmalar sağlanır. Aynı işlev çağrısında ikisini birden kullanamazsınız. Vaat, geri çağırmaya iletilen aynı türle çözümlenir.
setOptions()
chrome.documentScan.setOptions(
scannerHandle: string,
options: OptionSetting[],
callback?: function,
)
Belirtilen tarayıcıda seçenekleri ayarlar ve her değeri, iletilen OptionSetting
nesnesinin sırasına göre ayarlamaya çalışmanın sonucunu içeren bir SetOptionsResponse
nesnesiyle çözümlenen Promise döndürür. Bir geri çağırma kullanılırsa, bunun yerine nesne buna iletilir.
Parametreler
-
scannerHandle
dize
Seçeneklerin ayarlanacağı tarayıcının tutma yeri. Bu, daha önce
openScanner
için yapılan bir çağrıdan döndürülen değer olmalıdır. -
seçenekler
Tarayıcıya uygulanacak
OptionSetting
nesnelerin listesi. -
geri çağırma
Functions (isteğe bağlı)
callback
parametresi şu şekilde görünür:(response: SetOptionsResponse) => void
-
yanıt
-
İlerlemeler
-
Promise<SetOptionsResponse>
Vaatler, Manifest V3 ve sonraki sürümlerde desteklenir ancak geriye dönük uyumluluk için geri çağırmalar sağlanır. Aynı işlev çağrısında ikisini birden kullanamazsınız. Vaat, geri çağırmaya iletilen aynı türle çözümlenir.
startScan()
chrome.documentScan.startScan(
scannerHandle: string,
options: StartScanOptions,
callback?: function,
)
Belirtilen tarayıcıda tarama başlatır ve StartScanResponse
ile çözülen bir Promise döndürür. Bir geri çağırma kullanılırsa, bunun yerine nesne buna iletilir. Çağrı başarılı olduysa yanıt, tarama verilerini okumak veya bir taramayı iptal etmek için sonraki çağrılarda kullanılabilecek bir iş işleyici içerir.
Parametreler
-
scannerHandle
dize
Açık bir tarayıcının tutma yeri. Bu, daha önce
openScanner
için yapılan bir çağrıdan döndürülen değer olmalıdır. -
seçenekler
Tarama için kullanılacak seçenekleri belirten bir
StartScanOptions
nesnesi.StartScanOptions.format
özelliği, tarayıcınınScannerInfo
işlevinde döndürülen girişlerden biriyle eşleşmelidir. -
geri çağırma
Functions (isteğe bağlı)
callback
parametresi şu şekilde görünür:(response: StartScanResponse) => void
-
yanıt
-
İlerlemeler
-
Promise<StartScanResponse>
Vaatler, Manifest V3 ve sonraki sürümlerde desteklenir ancak geriye dönük uyumluluk için geri çağırmalar sağlanır. Aynı işlev çağrısında ikisini birden kullanamazsınız. Vaat, geri çağırmaya iletilen aynı türle çözümlenir.