Açıklama
Ekli belge tarayıcılardan görüntüleri keşfetmek ve almak için chrome.documentScan API'yi kullanın.
Belge Tarama API'si, uygulama ve uzantıların ekli bir belge tarayıcıdaki kağıt belgelerin içeriğini görüntülemesine olanak tanımak için tasarlanmıştır.
İzinler
documentScanKullanılabilirlik
Kavramlar ve kullanım
Bu API, belgeleri taramak için iki yöntem 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
Herhangi bir tarayıcıyla çalışabilen ve yapılandırmanın kontrol edilmesini gerektirmeyen basit kullanım alanları için scan() işlevini çağırın. Bu yöntem bir ScanOptions nesnesi 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. Tarama sonuçları, kullanıcı arayüzü için <img> etiketinde gösterilmek üzere URL 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 yanıtta döndürülen her özelliği açıklamaz. Bu doküman yalnızca tarayıcı kodu yazma konusunda genel bir kılavuz sunmayı amaçlamaktadır.
Discovery
getScannerList()numaralı telefonu arayın. Kullanılabilir tarayıcılar,GetScannerListResponseile çözümlenen bir Promise içinde döndürülür.- Yanıt nesnesi,
ScannerInfonesnelerinin bir dizisini içerir. - Dizi, birden fazla protokolü veya bağlantı yöntemini destekleyen 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ıdaki birden fazla nesneyi ayırt etmek için tek tek
ScannerInfonesnelerinin özelliklerini kullanın. Aynı tarayıcıdan alınan nesneler,deviceUuidözelliği için aynı değere sahip olur.ScannerInfo, desteklenen resim türlerinin dizisini içeren birimageFormatsözelliği de içerir.
Tarayıcı yapılandırması
Kaydedilen tarayıcı kimliğini ileterek
openScanner()işlevini çağırın.OpenScannerResponseile çözülen bir Promise döndürür. Yanıt nesnesi şunları içerir:Kaydetmeniz gereken bir
scannerHandleözelliği.Tarayıcıya özgü özellikleri içeren bir seçenekler özelliği. Bu özellikleri ayarlamanız gerekir. Daha fazla bilgi için Tarayıcı seçeneklerini alma başlıklı makaleyi inceleyin.
(İsteğe bağlı) Kullanıcının tarayıcı seçenekleri için değer sağlaması gerekiyorsa kullanıcı arayüzü oluşturun. Önceki adımda sağlanan tarayıcı seçeneklerine ihtiyacınız olacak ve tarayıcı tarafından sağlanan seçenek gruplarını almanız gerekecek. Daha fazla bilgi için Kullanıcı arayüzü oluşturma başlıklı makaleyi inceleyin.
Programatik olarak veya kullanıcı tarafından sağlanan değerleri kullanarak
OptionSettingnesnelerinden oluşan bir dizi oluşturun. Daha fazla bilgi için Tarayıcı seçeneklerini ayarlama başlıklı makaleyi inceleyin.Tarayıcı için seçenekleri ayarlamak üzere
OptionSettingnesneleri dizisinisetOptions()'a iletin.SetOptionsResponseile çö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 başka bir seçenekteki kısıtlamaları değiştirebileceğinden bu adımları birkaç kez tekrarlamanız gerekebilir.
Tarama
Bir
StartScanOptionsnesnesi oluşturun vestartScan()'a iletin.StartScanResponseile çözümlenen bir Promise döndürür.jobözelliği, tarama verilerini okumak veya taramayı iptal etmek için kullanacağınız bir işleyendir.İş tutma yerini
readScanData()'a iletin.ReadScanDataResponsenesnesiyle çözümlenen bir Promise döndürür. Veriler başarıyla okunduysaresultözelliğiSUCCESS'ye eşittir vedataözelliği, taramanın bir bölümünü içeren birArrayBufferiçerir.estimatedCompletionsimgesinin, şu ana kadar sunulan toplam verilerin tahmini bir yüzdesini içerdiğini unutmayın.resultözelliğiEOFdeğerine eşit olana veya hata oluşana kadar önceki adımı tekrarlayın.
Taramanın sonuna ulaşıldığında, 3. adımda kaydedilen tarayıcı tutamağıyla closeScanner() işlevini çağırın. CloseScannerResponse ile çözülen bir Promise döndürür. İş oluşturulduktan sonra herhangi bir zamanda
cancelScan() tuşuna basmak taramayı sonlandırır.
Yanıt nesneleri
Tüm yöntemler, bir tür yanıt nesnesiyle çözümlenen bir Promise döndürür.
Bunların çoğu, değeri OperationResult üyesi olan bir result özelliği içerir. Yanıt nesnelerinin bazı özellikleri, result değeri belirli bir değere sahip olmadığı sürece 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 ile SUCCESS eşit olduğunda bir değere sahip olur.
Tarayıcı seçenekleri
Tarayıcı seçenekleri cihaza göre önemli ölçüde değişir. Bu nedenle, tarayıcı seçeneklerini doğrudan documentScan API'ye yansıtmak mümkün değildir. Bu sorunu çözmek için OpenScannerResponse (openScanner() kullanılarak alınır) ve SetOptionsResponse (setOptions() için yanıt nesnesi) tarayıcıya özel seçenekleri içeren bir nesne olan options özelliğini içerir. Her seçenek, anahtarın cihaza özel bir seçenek, değerin ise ScannerOption örneği olduğu bir anahtar-değer eşlemesidir.
Yapı genellikle şu şekildedir:
{
"key1": { scannerOptionInstance }
"key2": { scannerOptionInstance }
}
Örneğin, "kaynak" ve "çözünürlük" adlı seçenekleri döndüren bir tarayıcı olduğunu düşünün. Döndürülen options nesnesinin yapısı aşağıdaki örneğe benzer. Kolaylık sağlamak için yalnızca kısmi ScannerOption
yanıtlar gösterilir.
{
"source": {
"name": "source",
"type": OptionType.STRING,
...
},
"resolution": {
"name": "resolution",
"type": OptionType.INT,
...
},
...
}
Kullanıcı arayüzü oluşturma
Bu API'yi kullanmak için gerekli olmasa da kullanıcının belirli bir seçenek için değer seçmesini isteyebilirsiniz. Bunun için kullanıcı arayüzü gerekir. Önceki bölümde açıklandığı gibi, ekli tarayıcının seçeneklerini almak için OpenScannerResponse (openScanner() ile açılır) simgesini kullanın.
Bazı tarayıcılar seçenekleri cihaza özel şekillerde gruplandırır. Bu gruplar seçenek davranışlarını etkilemez ancak bir tarayıcının ürün dokümanlarında bahsedilebileceği için kullanıcıya gösterilmelidir. Bu grupları getOptionGroups() numarasını arayarak alabilirsiniz. Bu, GetOptionGroupsResponse nesnesiyle çözülen bir Promise döndürür. groups
özelliği, tarayıcıya özel bir grup dizisi içerir. Bu gruplardaki bilgileri kullanarak OpenScannerResponse simgesindeki seçenekleri görüntüleme için düzenleyin.
{
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ğin değiştirilmesi başka bir 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. Ardından, tüm seçenekler ayarlanana kadar işlemi gerektiği şekilde tekrarlayın.
Tarayıcı seçeneklerini ayarlama
OptionSetting nesnelerden oluşan bir dizi ileterek tarayıcı seçeneklerini setOptions() olarak ayarlayın. Örnek için aşağıdaki Bir mektup boyutlu sayfayı tarama bölümüne bakın.
Örnekler
Sayfayı blob olarak alma
Bu örnek, tarayıcıdan bir sayfayı blob olarak almanın bir yolunu gösterir ve OperationResult değerini kullanarak startScan() ve readScanData() kullanımını gösterir.
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" });
}
Bir mektup boyutundaki sayfayı tarama
Bu örnekte, tarayıcının nasıl seçileceği, seçeneklerinin nasıl ayarlanacağı ve tarayıcının nasıl açılacağı gösterilmektedir. Ardından tek bir sayfanın içeriğini alır ve tarayıcıyı kapatır. Bu işlemde getScannerList(), openScanner(), setOptions() ve closeScanner()'ün nasıl kullanılacağı gösterilmektedir. Sayfa içeriklerinin, önceki örnekteki 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österme
Başka bir yerde belirtildiği gibi, tarayıcının yapılandırma seçeneklerini kullanıcıya göstermek için openScanner() çağrısına ek olarak getOptionGroups() çağrısı yapılması gerekir. Bu sayede, üretici tarafından tanımlanan gruplardaki kullanıcılara seçenekler gösterilebilir. Bu örnekte, söz konusu işlemin 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()'ya iletilen iş kolunu sağlar. -
sonuç
Arka uçtaki tarama sonucunu iptal etme. Sonuç
OperationResult.SUCCESSveyaOperationResult.CANCELLEDise tarama iptal edilmiş ve tarayıcı yeni bir tarama başlatmaya hazırdır. SonuçOperationResult.DEVICE_BUSYise tarayıcı , istenen iptal işlemini hâlâ işliyor demektir. Arayan kişi kısa bir süre bekleyip isteği tekrar denemelidir. Diğer sonuç değerleri, yeniden denenmemesi gereken kalıcı bir hatayı gösterir.
CloseScannerResponse
Özellikler
-
sonuç
Tarayıcıyı kapatmanın sonucu. Bu değer
SUCCESSolmasa bile tanıtıcı geçersiz olur ve başka işlemler için kullanılmamalıdır. -
scannerHandle
dize
closeScanner'a iletilen tarayıcı tutma yeriyle aynı.
Configurability
Bir seçeneğin nasıl değiştirilebileceği
Enum
"NOT_CONFIGURABLE"
Seçenek salt okunurdur.
"SOFTWARE_CONFIGURABLE"
Seçenek yazılımda ayarlanabilir.
"HARDWARE_CONFIGURABLE"
Seçenek, kullanıcının tarayıcıdaki bir düğmeyi açıp kapatması veya düğmeye basmasıyla ayarlanabilir.
ConnectionType
Tarayıcının bilgisayara nasıl bağlandığını gösterir.
Enum
"UNSPECIFIED"
"USB"
"NETWORK"
Enum
"INT_RANGE"
OptionType.INT değer aralığındaki kısıtlama. OptionConstraint öğesinin min, max ve quant özellikleri long olacak, list özelliği ise ayarlanmamış olacak.
"FIXED_RANGE"
OptionType.FIXED değer aralığındaki kısıtlama. OptionConstraint için min, max ve quant özellikleri double olacak, list özelliği ise ayarlanmamış olacaktır.
"INT_LIST"
Belirli bir OptionType.INT değer listesindeki kısıtlama. OptionConstraint.list özelliği long değerlerini içerir ve diğer özellikler ayarlanmamış olur.
"FIXED_LIST"
Belirli bir OptionType.FIXED değer listesindeki kısıtlama. OptionConstraint.list özelliği double değerlerini içerir ve diğer özellikler ayarlanmamış olur.
"STRING_LIST"
Belirli bir OptionType.STRING değer listesindeki kısıtlama. OptionConstraint.list özelliği DOMString değerlerini içerir ve diğer özellikler ayarlanmamış olur.
DeviceFilter
Özellikler
-
local
boolean isteğe bağlı
Yalnızca doğrudan bilgisayara bağlı tarayıcıları iade edin.
-
güvenli
boolean isteğe bağlı
Yalnızca USB veya TLS gibi güvenli aktarım kullanan tarayıcıları iade edin.
GetOptionGroupsResponse
Özellikler
-
groups
OptionGroup[] isteğe bağlı
resultSUCCESSise 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ı alma işleminin sonucu. Bu özelliğin değeri
SUCCESSisegroupsözelliği doldurulur. -
scannerHandle
dize
getOptionGroups'a iletilen tarayıcı tutma yeriyle aynı.
GetScannerListResponse
Özellikler
-
sonuç
Numaralandırma sonucu. Bu durum bir hataya işaret etse bile kısmi sonuçlar döndürülebileceğini unutmayın.
-
Tarayıcılar
Belirtilen
DeviceFilterile eşleşen tarayıcıların muhtemelen boş bir listesi.
OpenScannerResponse
Özellikler
-
seçenekler
object isteğe bağlı
result,SUCCESSise 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ının sonucu. Bu özelliğin değeri
SUCCESSisescannerHandleveoptionsözellikleri doldurulur. -
scannerHandle
dize isteğe bağlı
result,SUCCESSise tarayıcıya yönelik, başka işlemler için kullanılabilecek bir tutma yeri. -
scannerId
dize
Tarayıcı kimliği
openScanner()'ya iletildi.
OperationResult
Her işlemin sonucunu gösteren bir enum.
Enum
"UNKNOWN"
Bilinmeyen veya genel bir hata oluştu.
"SUCCESS"
İşlem başarılı oldu.
"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üdür.
"EOF"
Başka veri yok.
"ADF_JAMMED"
Belge besleyici sıkıştı.
"ADF_EMPTY"
Belge besleyici boş.
"COVER_OPEN"
Düz yataklı tarayıcının kapağı açık.
"IO_ERROR"
Cihazla iletişim kurulurken bir hata oluştu.
"ACCESS_DENIED"
Cihaz için kimlik doğrulama gerekiyor.
"NO_MEMORY"
İşlemi tamamlamak için Chromebook'ta yeterli bellek yok.
"UNREACHABLE"
Cihaza ulaşılamıyor.
"MISSING"
Cihazın bağlantısı kesilmiştir.
"INTERNAL_ERROR"
Arama yapan uygulama dışında bir yerde hata oluştu.
OptionConstraint
Özellikler
-
list
string[] | number[] isteğe bağlı
-
maks.
number isteğe bağlı
-
dk
number isteğe bağlı
-
quant
number isteğe bağlı
-
tür
OptionGroup
Özellikler
-
üyeler
dize[]
Sürücü tarafından sağlanan sıradaki seçenek adları dizisi.
-
title
dize
Yazdırılabilir bir başlık sağlar (ör. "Geometri seçenekleri").
OptionSetting
Özellikler
-
ad
dize
Ayarlanacak seçeneğin adını gösterir.
-
tür
Seçeneğin veri türünü gösterir. İstenen veri türü, temel alınan seçeneğin gerçek veri türüyle eşleşmelidir.
-
value
string | number | boolean | number[] isteğe bağlı
Ayarlanacak değeri gösterir.
autoSettableetkin olan seçenekler için otomatik ayar isteğinde bulunmak üzere ayarlanmamış olarak bırakın.valueiçin sağlanan veri türütypeile eşleşmelidir.
OptionType
Bir seçeneğin veri türü.
Enum
"UNKNOWN"
Seçeneğin veri türü bilinmiyor. value özelliği ayarlanmamış olacak.
"BOOL"
value özelliği truefalse değerlerinden birini alır.
"INT"
İşaretli 32 bit tam sayı. Seçeneğin birden fazla değer alıp almadığına bağlı olarak value özelliği long veya long[] olacaktır.
"SABİT"
-32768-32767,9999 aralığında, 1/65535 çözünürlüğe sahip bir çift sayı. value özelliği, seçeneğin birden fazla değer alıp almamasına bağlı olarak double veya double[] olur. Tam olarak gösterilemeyen çift değerler, mevcut aralığa ve kesinliğe göre yuvarlanır.
"STRING"
NUL ('\0') hariç herhangi bir bayt dizisi. value özelliği bir DOMString olacaktır.
"BUTTON"
Bu türdeki bir seçeneğin değeri yoktur. 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, bir tarayıcı sürücüsü, varsayılan değerleri seçme veya otomatik belge besleyiciye bir sonraki kağıda geçmesini söyleme yöntemi sağlamak için düğme türünde bir seçenek kullanabilir.
"GROUP"
Gruplandırma seçeneği. Değer yok. Bu, uyumluluk için eklenir ancak normalde ScannerOption değerlerinde döndürülmez. Üye seçenekleriyle birlikte grupların listesini almak için getOptionGroups() kullanın.
Enum
"UNITLESS"
Değer, birimsiz bir sayıdır. Örneğin, bir eşik olabilir.
"PIXEL"
Değer, piksel sayısıdır (ör. tarama boyutları).
"BIT"
Değer, bit sayısıdır (ör. renk derinliği).
"MM"
Değer, milimetre cinsinden ölçülür (örneğin, tarama boyutları).
"DPI"
Değer, inç başına nokta sayısı cinsinden ölçülür (örneğin, çözünürlük).
"PERCENT"
Değer, yüzde cinsindendir (ör. parlaklık).
"MICROSECOND"
Değer, mikrosaniye cinsinden ölçülür (ör. pozlama süresi).
ReadScanDataResponse
Özellikler
-
aktarma
ArrayBuffer isteğe bağlıdır.
result,SUCCESSise taranan resim verilerinin sonraki bölümünü içerir.resultEOFise taranan resim verilerinin son parçasını içerir. -
estimatedCompletion
number isteğe bağlı
result,SUCCESSise toplam tarama verilerinin ne kadarının şu ana kadar teslim edildiğine dair 0-100 aralığında bir tahmindir. -
iş
dize
readScanData()'ya iletilen iş tanıtıcısını sağlar. -
sonuç
Veri okuma işleminin sonucu. Değeri
SUCCESSisedata, okunmaya hazır olan sonraki (muhtemelen sıfır uzunluklu) görüntü verileri parçasını içerir. DeğeriEOFisedata, 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
ScannerInfogirişleriyle eşleştirme 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österilecek, kullanıcılar tarafından okunabilir adı.
-
protocolType
dize
Tarayıcıya erişmek için kullanılan protokolün veya sürücünün kullanıcılar tarafından okunabilir açıklaması (ör. Mopria, WSD veya epsonds). Bu özellik, bir cihaz birden fazla protokolü destekliyorsa kullanıcının protokoller arasında seçim yapmasına olanak tanımak için kullanılır.
-
scannerId
dize
Belirli bir tarayıcının kimliği.
-
güvenli
boolean
Doğruysa tarayıcı bağlantısının iletimi, TLS veya USB gibi pasif bir dinleyici tarafından engellenemez.
ScannerOption
Özellikler
-
yapılandırılabilirlik
Yapılandırılabilirlik (Configurability)
Seçeneğin değiştirilip değiştirilemeyeceğini ve nasıl değiştirilebileceğini gösterir.
-
kısıtlama
OptionConstraint isteğe bağlı
Geçerli tarayıcı seçeneğinde
OptionConstrainttanımlar. -
açıklama
dize
Seçeneğin daha uzun açıklaması.
-
isActive
boolean
Seçeneğin etkin olduğunu ve ayarlanabileceğini veya alınabileceğini gösterir. Yanlışsa
valueözelliği ayarlanmaz. -
isAdvanced
boolean
Kullanıcı arayüzünün bu seçeneği varsayılan olarak göstermemesi 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 gösterir.
-
isEmulated
boolean
Doğruysa tarayıcı sürücüsü tarafından emüle edilir.
-
ad
dize
Küçük ASCII harfleri, rakamlar ve tireler kullanılarak oluşturulan seçenek adı. Aksan işaretlerine izin verilmez.
-
title
dize
Yazdırılabilir tek satırlık bir başlık.
-
tür
Bu seçeneğin ayarlanması için gereken
valueözelliğinde bulunan veri türü. -
birim
Bu seçeneğin ölçü birimi.
-
value
string | number | boolean | number[] isteğe bağlı
Seçeneğin mevcut değeri (varsa). Bu özelliğin veri türünün,
typeiçinde belirtilen veri türüyle eşleşmesi gerektiğini unutmayın.
ScanOptions
Özellikler
-
maxImages
number isteğe bağlı
İzin verilen taranmış 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 iletilebilecek bir biçimde veri resmi URL'lerinin dizisi.
-
mimeType
dize
dataUrlsöğesinin MIME türü.
SetOptionResult
Özellikler
-
ad
dize
Ayarlanan seçeneğin adını gösterir.
-
sonuç
Seçeneğin ayarlanmasının sonucunu gösterir.
SetOptionsResponse
Özellikler
-
seçenekler
object isteğe bağlı
Tüm sağlanan seçenekler ayarlanmaya çalışıldıktan sonra yeni yapılandırmayı içeren, seçenek adlarından
ScannerOptiondeğerlerine güncellenmiş bir anahtar-değer eşlemesi. Bu,OpenScannerResponseiçindekioptionsözelliğiyle aynı yapıya sahiptir.Bu özellik, bazı seçenekler başarıyla ayarlanmamış olsa bile ayarlanır. Ancak güncellenen yapılandırma alınamazsa (örneğin, tarayıcının tarama ortasında bağlantısı kesilirse) ayarlanmaz.
-
sonuç
Sonuç dizisi. Her bir iletilen
OptionSettingiçin bir sonuç bulunur. -
scannerHandle
dize
setOptions()'ya iletilen tarayıcı tutamacını sağlar.
StartScanOptions
Özellikler
-
biçim
dize
Taranan verilerin döndürüleceği MIME türünü belirtir.
-
maxReadSize
number isteğe bağlı
Sıfır olmayan bir değer belirtilirse tek bir
readScanDatayanıtında döndürülen maksimum taranan bayt sayısı bu değerle sınırlanır. İzin verilen en küçük değer 32768 (32 KB)'dir. Bu özellik belirtilmezse döndürülen bir parçanın boyutu, taranan resmin tamamı kadar büyük olabilir.
StartScanResponse
Özellikler
-
iş
dize isteğe bağlı
result,SUCCESSise tarama verilerini okumak veya işi iptal etmek için kullanılabilecek bir işleyici sağlar. -
sonuç
Tarama başlatmanın sonucu. Bu özelliğin değeri
SUCCESSisejobözelliği doldurulur. -
scannerHandle
dize
startScan()'ya iletilen tarayıcı tutamacını sağlar.
Yöntemler
cancelScan()
chrome.documentScan.cancelScan(
job: string,
): Promise<CancelScanResponse>
Başlatılan bir taramayı iptal eder ve CancelScanResponse nesnesiyle çözümlenen bir Promise döndürür. Geri çağırma kullanılırsa nesne bunun yerine geri çağırmaya iletilir.
Parametreler
-
iş
dize
Daha önce
startScanişlevine yapılan bir çağrıdan döndürülen etkin bir tarama işinin tanıtıcısı.
İadeler
-
Promise<CancelScanResponse>
closeScanner()
chrome.documentScan.closeScanner(
scannerHandle: string,
): Promise<CloseScannerResponse>
Tarayıcıyı iletilen tutamaçla kapatır ve CloseScannerResponse nesnesiyle çözümlenen bir Promise döndürür. Geri çağırma kullanılırsa nesne bunun yerine geri çağırmaya iletilir. Yanıt başarılı olmasa bile sağlanan işleyici geçersiz hale gelir ve başka işlemler için kullanılmamalıdır.
Parametreler
-
scannerHandle
dize
Daha önce
openScannerçağrısından döndürülen açık bir tarayıcının tanıtıcısını belirtir.
İadeler
-
Promise<CloseScannerResponse>
getOptionGroups()
chrome.documentScan.getOptionGroups(
scannerHandle: string,
): Promise<GetOptionGroupsResponse>
Grup adlarını ve üye seçeneklerini, daha önce openScanner tarafından açılmış bir tarayıcıdan alır. Bu yöntem, GetOptionGroupsResponse nesnesiyle çözümlenen bir Promise döndürür. Bu işleve bir geri çağırma iletilirse döndürülen veriler bunun yerine geri çağırmaya iletilir.
Parametreler
-
scannerHandle
dize
openScannerçağrısından döndürülen açık bir tarayıcının tutma yeri.
İadeler
-
Promise<GetOptionGroupsResponse>
getScannerList()
chrome.documentScan.getScannerList(
filter: DeviceFilter,
): Promise<GetScannerListResponse>
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 iletilirse döndürülen veriler bunun yerine geri çağırmaya iletilir.
Parametreler
-
filtrele
Hangi tarayıcı türlerinin döndürülmesi gerektiğini belirten bir
DeviceFilter.
İadeler
-
Promise<GetScannerListResponse>
openScanner()
chrome.documentScan.openScanner(
scannerId: string,
): Promise<OpenScannerResponse>
Ö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 iletilirse döndürülen veriler bunun yerine geri çağırmaya iletilir.
Parametreler
-
scannerId
dize
Açılacak tarayıcının kimliği. Bu değer,
getScannerListiçin yapılan önceki bir çağrıdan döndürülen değerdir.
İadeler
-
Promise<OpenScannerResponse>
readScanData()
chrome.documentScan.readScanData(
job: string,
): Promise<ReadScanDataResponse>
Etkin bir iş tanıtıcısından kullanılabilir görüntü verilerinin bir sonraki parçasını okur ve ReadScanDataResponse nesnesiyle çözümlenen bir Promise döndürür. Geri çağırma kullanılırsa nesne bunun yerine geri çağırmaya iletilir.
**Not:**Yanıt sonucunun, sıfır uzunlukta bir data üyesiyle SUCCESS olması geçerlidir. Bu, tarayıcının çalışmaya devam ettiği ancak henüz ek verilerin hazır olmadığı anlamına gelir. Arayan kişi kısa bir süre bekleyip tekrar denemelidir.
Tarama işi tamamlandığında yanıtta EOF sonuç değeri bulunur. Bu yanıtta, sıfır olmayan son bir data üyesi olabilir.
Parametreler
-
iş
dize
Daha önce
startScantarafından döndürülen etkin iş kolu.
İadeler
-
Promise<ReadScanDataResponse>
scan()
chrome.documentScan.scan(
options: ScanOptions,
): Promise<ScanResults>
Belge taraması yapar ve ScanResults nesnesiyle çözümlenen bir Promise döndürür. Bu işleve bir geri çağırma iletilirse döndürülen veriler bunun yerine iletilir.
Parametreler
-
seçenekler
Tarama parametrelerini içeren bir nesne.
İadeler
-
Promise<ScanResults>
Chrome 96 veya daha yeni bir sürüm
setOptions()
chrome.documentScan.setOptions(
scannerHandle: string,
options: OptionSetting[],
): Promise<SetOptionsResponse>
Belirtilen tarayıcıda seçenekleri ayarlar ve iletilen OptionSetting nesnesindeki her değeri sırayla ayarlama denemesinin sonucunu içeren bir SetOptionsResponse nesnesiyle çözümlenen bir Promise döndürür. Geri çağırma kullanılırsa nesne bunun yerine geri çağırmaya iletilir.
Parametreler
-
scannerHandle
dize
Seçenekleri ayarlamak için tarayıcının tutma yeri. Bu, daha önce
openScannerçağrısından döndürülen bir değer olmalıdır. -
seçenekler
Tarayıcıya uygulanacak
OptionSettingnesnelerinin listesi.
İadeler
-
Promise<SetOptionsResponse>
startScan()
chrome.documentScan.startScan(
scannerHandle: string,
options: StartScanOptions,
): Promise<StartScanResponse>
Belirtilen tarayıcıda tarama başlatır ve StartScanResponse ile çözümlenen bir Promise döndürür. Geri çağırma kullanılırsa nesne bunun yerine geri çağırmaya iletilir. Arama başarılı olursa yanıtta, tarama verilerini okumak veya taramayı iptal etmek için sonraki aramalarda kullanılabilecek bir iş tanıtıcısı bulunur.
Parametreler
-
scannerHandle
dize
Açık bir tarayıcının tutma yeri. Bu, daha önce
openScannerçağrısından döndürülen bir değer olmalıdır. -
seçenekler
Tarama için kullanılacak seçenekleri belirten bir
StartScanOptionsnesnesi.StartScanOptions.formatözelliği, tarayıcınınScannerInfoiçinde döndürülen girişlerden biriyle eşleşmelidir.
İadeler
-
Promise<StartScanResponse>