Açıklama
Bağlı belge tarayıcılardan görüntüleri keşfetmek ve almak için chrome.documentScan API'yi kullanın.
Document Scan API, uygulamaların 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
Her tarayıcıyla çalışabilen ve yapılandırma kontrolü gerektirmeyen basit kullanım alanları için scan() yöntemini çağırın. Bu yöntem bir ScanOptions nesnesi alır ve bir ScanResults nesnesiyle çözümlenen bir Promise döndürür. Bu seçeneğin özellikleri, tarama sayısı ve arayan tarafından kabul edilecek MIME türleriyle sınırlıdır. Taramalar, kullanıcı arayüzü için <img> etiketinde gösterilecek 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 taslak, 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 genel bir rehberlik sunmayı amaçlar.
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, bir
ScannerInfonesneleri dizisi içerir. - Tarayıcı birden fazla protokolü veya bağlantı yöntemini destekliyorsa dizide tek bir tarayıcı için birden fazla giriş bulunabilir.
- Yanıt nesnesi, bir
Döndürülen diziden bir tarayıcı seçin ve
scannerIdözelliğinin değerini kaydedin.Aynı tarayıcıya ait birden fazla nesneyi ayırt etmek için ayrı ayrı
ScannerInfonesnelerinin özelliklerini kullanın. Aynı tarayıcıdan gelen 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ı
Kayıtlı tarayıcı kimliğini ileterek
openScanner()yöntemini çağırın.OpenScannerResponseile çözümlenen 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 mülkü. Bu mülkü ayarlamanız gerekir. Daha fazla bilgi için Tarayıcı seçeneklerini alma bölümüne 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ı almaya ihtiyacınız olacak. Daha fazla bilgi için Kullanıcı arayüzü oluşturma başlıklı makaleyi inceleyin.
Programatik veya kullanıcı tarafından sağlanan değerleri kullanarak bir
OptionSettingnesnesi dizisi oluşturun. Daha fazla bilgi için Tarayıcı seçeneklerini ayarlama başlıklı makaleyi inceleyin.Tarayıcı seçeneklerini ayarlamak için
OptionSettingnesneleri dizisinisetOptions()yöntemine 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 ve bunustartScan()yöntemine 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 tanıtıcıdır.İş tanıtıcısını
readScanData()öğesine iletin. BirReadScanDataResponsenesnesiyle çözümlenen bir Promise döndürür. Veriler başarıyla okunduysaresultözelliğiSUCCESSdeğerine eşit olur vedataözelliği, taramanın bir kısmını içeren birArrayBufferiçerir.estimatedCompletion, şu ana kadar yayınlanan toplam verilerin tahmini yüzdesini içerir.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ı tutma yeri ile closeScanner() işlevini çağırın. CloseScannerResponse ile çözümlenen bir Promise döndürür. İş oluşturulduktan sonra herhangi bir zamanda cancelScan() çağrıldığında tarama sona erer.
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 öğesinin bir üyesi olan bir result özelliği içerir. result 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, SUCCESS değerine 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şiklik gösterir. 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 olduğu ve değerin 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çenekler 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 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çeneğin değerini seçmesini isteyebilirsiniz. Bunun için bir kullanıcı arayüzü gerekir. Önceki bölümde açıklandığı gibi, bağlı tarayıcının seçeneklerini almak için OpenScannerResponse (openScanner() tarafından açılır) seçeneğini kullanın.
Bazı tarayıcılar, seçenekleri cihaza özgü şekillerde gruplandırır. Seçenek davranışlarını etkilemezler ancak bu gruplardan bir tarayıcının ürün belgelerinde bahsedilebileceğinden, bu tür gruplar kullanıcıya gösterilmelidir. Bu grupları getOptionGroups() yöntemini çağırarak alabilirsiniz. Bu, GetOptionGroupsResponse nesnesiyle çözümlenen bir Promise döndürür. groups özelliği, tarayıcıya özgü bir grup dizisi içerir. OpenScannerResponse'deki seçenekleri görüntülemek üzere 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 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 bu işlemi tekrarlayın.
Tarayıcı seçeneklerini ayarlama
setOptions() öğesine bir OptionSetting nesne dizisi ileterek tarayıcı seçeneklerini ayarlayın. Örnek için aşağıdaki Mektup boyutunda bir sayfayı tarama bölümüne bakın.
Örnekler
Sayfayı blob olarak alma
Bu örnekte, tarayıcıdan bir sayfanın blob olarak nasıl alınacağı gösterilmekte ve OperationResult değeri kullanılarak startScan() ile readScanData()'nin kullanımı açıklanmaktadır.
async function pageAsBlob(handle) {
let response = await browser.documentScan.startScan(
handle, {format: "image/jpeg"});
if (response.result != browser.documentScan.OperationResult.SUCCESS) {
return null;
}
const job = response.job;
let imgParts = [];
response = await browser.documentScan.readScanData(job);
while (response.result == browser.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 browser.documentScan.readScanData(job);
}
if (response.result != browser.documentScan.OperationResult.EOF) {
return null;
}
if (response.data && response.data.byteLength > 0) {
imgParts.push(response.data);
}
return new Blob(imgParts, { type: "image/jpeg" });
}
Letter boyutunda bir sayfa tarama
Bu örnekte, tarayıcı seçme, seçeneklerini ayarlama ve tarayıcıyı açma işlemleri gösterilmektedir. Ardından tek bir sayfanın içeriğini alır ve tarayıcıyı kapatır. Bu süreçte getScannerList(), openScanner(), setOptions() ve closeScanner() kullanımı gösterilmektedir. Sayfanın içeriğinin, önceki örnekteki pageAsBlob() işlevi çağrılarak alındığını unutmayın.
async function scan() {
let response = await browser.documentScan.getScannerList({ secure: true });
let scanner = await browser.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: browser.documentScan.OptionType.STRING,
value: { value: source }
});
break;
}
}
options.push({
name: "tl-x",
type: browser.documentScan.OptionType.FIXED,
value: 0.0
});
options.push({
name: "br-x",
type: browser.documentScan.OptionType.FIXED,
value: 215.9 // 8.5" in mm
});
options.push({
name: "tl-y",
type: browser.documentScan.OptionType.FIXED,
value: 0.0
});
options.push({
name: "br-y",
type: browser.documentScan.OptionType.FIXED,
value: 279.4 // 11" in mm
});
response = await browser.documentScan.setOptions(handle, options);
let imgBlob = await pageAsBlob(handle);
if (imgBlob != null) {
// Insert imgBlob into DOM, save to disk, etc
}
await browser.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ından döndürülen tarayıcı seçeneklerine ek olarak
getOptionGroups() çağrısı yapılması gerekir. Bu sayede, seçenekler kullanıcılara üretici tarafından tanımlanan gruplar halinde gösterilebilir. Bu örnekte bunun nasıl yapılacağı gösterilmektedir.
async function showConfig() {
let response = await browser.documentScan.getScannerList({ secure: true });
let scanner = await browser.documentScan.openScanner(
response.scanners[0].scannerId);
let groups = await browser.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 iletilen iş tanıtıcısının aynısını sağlar. -
sonuç
Arka ucun taramayı iptal etme sonucu. Sonuç
OperationResult.SUCCESSveyaOperationResult.CANCELLEDise tarama iptal edilmiştir ve tarayıcı yeni bir tarama başlatmaya hazırdır. SonuçOperationResult.DEVICE_BUSYise tarayıcı, istenen iptal işlemini hâlâ işliyordur. 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ı kapatma işleminin sonucu. Bu değer
SUCCESSolmasa bile herkese açık kullanıcı adı geçersiz olur ve başka işlemler için kullanılmamalıdır. -
scannerHandle
dize
closeScannerişlevine iletilen tarayıcı tanıtıcısı.
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ı tarafından tarayıcıdaki bir düğme açılıp kapatılarak veya basılarak ayarlanabilir.
ConnectionType
Tarayıcının bilgisayara nasıl bağlandığını gösterir.
Enum
"UNSPECIFIED"
"USB"
"NETWORK"
ConstraintType
OptionConstraint ile temsil edilen kısıtlamanın veri türü.
Enum
"INT_RANGE"
OptionType.INT değer aralığıyla ilgili kısıtlama. OptionConstraint öğesinin min, max ve quant özellikleri long olacak ve list özelliği ayarlanmayacak.
"FIXED_RANGE"
OptionType.FIXED değerleri aralığındaki kısıtlama. OptionConstraint öğesinin min, max ve quant özellikleri double olarak ayarlanacak ve list özelliği kaldırılacak.
"INT_LIST"
Belirli bir OptionType.INT değerleri listesindeki kısıtlama. OptionConstraint.list özelliği long değerlerini içerecek ve diğer özellikler ayarlanmayacak.
"FIXED_LIST"
Belirli bir OptionType.FIXED değerleri listesindeki kısıtlama. OptionConstraint.list özelliği double değerlerini içerecek ve diğer özellikler ayarlanmayacak.
"STRING_LIST"
Belirli bir OptionType.STRING değerleri listesindeki kısıtlama. OptionConstraint.list özelliği DOMString değerlerini içerecek ve diğer özellikler ayarlanmayacak.
DeviceFilter
Özellikler
-
local
boole isteğe bağlı
Yalnızca doğrudan bilgisayara bağlı tarayıcıları döndürür.
-
güvenli
boole isteğe bağlı
Yalnızca USB veya TLS gibi güvenli bir aktarım kullanan tarayıcıları döndürün.
GetOptionGroupsResponse
Özellikler
-
groups
OptionGroup[] isteğe bağlı
result,SUCCESSise tarayıcı sürücüsü tarafından sağlanan sırayla seçenek gruplarının listesini verir. -
sonuç
Seçenek gruplarını alma işleminin sonucu. Bu değer
SUCCESSisegroupsözelliği doldurulur. -
scannerHandle
dize
getOptionGroupsişlevine iletilen tarayıcı tanıtıcısı.
GetScannerListResponse
Özellikler
-
sonuç
Numaralandırma sonucu. Bu bir hata olduğunu gösterse bile kısmi sonuçlar döndürülebileceğini unutmayın.
-
tarayıcılar
Sağlanan
DeviceFilterile eşleşen tarayıcıların listesi (boş olabilir).
OpenScannerResponse
Özellikler
-
seçenekler
isteğe bağlı nesne
result,SUCCESSise anahtarın cihaza özgü bir seçenek, değerin iseScannerOptionörneği olduğu bir anahtar/değer eşlemesi sağlar. -
sonuç
Tarayıcıyı açma işleminin sonucu. Bu değer
SUCCESSisescannerHandleveoptionsözellikleri doldurulur. -
scannerHandle
string isteğe bağlı
result,SUCCESSise tarayıcı için daha sonraki işlemlerde kullanılabilecek bir tanıtıcı. -
scannerId
dize
Tarayıcı kimliği
openScanner()değerine geçirildi.
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"
Doküman besleyici sıkıştı.
"ADF_EMPTY"
Belge besleyici boş.
"COVER_OPEN"
Düz yatak kapağı açık.
"IO_ERROR"
Cihazla iletişim kurulurken bir hata oluştu.
"ACCESS_DENIED"
Cihaz için kimlik doğrulama gerekiyor.
"NO_MEMORY"
Chromebook'ta işlemi tamamlamak için yeterli bellek yok.
"UNREACHABLE"
Cihaza ulaşılamıyor.
"MISSING"
Cihazın bağlantısı kesildi.
"INTERNAL_ERROR"
Arayan 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
string[]
Sürücü tarafından sağlanan sırada 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ı 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 | boolean | number[] isteğe bağlı
Ayarlanacak değeri belirtir.
autoSettableetkinleştirilmiş 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 kaldırılacak.
"BOOL"
value özelliği truefalse değerlerinden biri olur.
"INT"
İşaretli 32 bit tam sayı. value özelliği, seçeneğin birden fazla değer alıp almadığına bağlı olarak long veya long[] olur.
"FIXED"
-32768 ile 32767,9999 aralığında, 1/65535 çözünürlüğe sahip bir double. value özelliği, seçeneğin birden fazla değer alıp almadığına bağlı olarak double veya double[] olur. Tam olarak temsil edilemeyen çift değerler, mevcut aralığa ve kesinliğe yuvarlanır.
"STRING"
NUL ('\0') hariç herhangi bir bayt dizisi. value özelliği bir DOMString olur.
"BUTTON"
Bu tür 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, düğme türü bir seçenek, varsayılan değerleri seçmek veya otomatik doküman besleyiciye bir sonraki kağıda geçmesini söylemek için tarayıcı sürücüsü tarafından kullanılabilir.
"GROUP"
Gruplandırma seçeneği. Değer yok. Bu, uyumluluk için dahil edilmiştir ancak normalde ScannerOption değerlerinde döndürülmez. getOptionGroups()Üye seçenekleriyle birlikte grupların listesini almak için bu yöntemi kullanın.
OptionUnit
ScannerOption.unit için veri türünü belirtir.
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 (ör. tarama boyutları).
"DPI"
Değer, inç başına nokta sayısı (ör. çözünürlük) olarak ölçülür.
"PERCENT"
Değer, parlaklık gibi bir yüzdedir.
"MICROSECOND"
Değer, mikrosaniye cinsinden ölçülür (ör. pozlama süresi).
ReadScanDataResponse
Özellikler
-
veri
ArrayBuffer isteğe bağlı
result,SUCCESSise taranan resim verilerinin sonraki parçasını içerir.result,EOFise taranan görüntü verilerinin son parçasını içerir. -
estimatedCompletion
number isteğe bağlı
result,SUCCESSise toplam tarama verilerinin şu ana kadar ne kadarının yayınlandığına dair 0 ile 100 arasında bir tahmin. -
iş
dize
readScanData()öğesine 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 uzunlukta) resim verisi 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 cihazı işaret eden diğer
ScannerInfogirişleriyle eşleştirmek için kullanılır. -
imageFormats
string[]
Döndürülen taramalar için istenebilecek MIME türleri dizisi.
-
üretici
dize
Tarayıcı üreticisi.
-
model
dize
Mevcutsa tarayıcı modeli veya genel bir açıklama.
-
ad
dize
Tarayıcının kullanıcı arayüzünde gösterilecek, kullanıcı tarafından okunabilen adı.
-
protocolType
dize
Tarayıcıya erişmek için kullanılan protokolün veya sürücünün (ör. Mopria, WSD veya epsonds) kullanıcılar tarafından okunabilir açıklaması. Bu, öncelikle bir cihazın birden fazla protokolü desteklemesi durumunda kullanıcının protokoller arasında seçim yapmasına olanak tanımak için kullanışlıdır.
-
scannerId
dize
Belirli bir tarayıcının kimliği.
-
güvenli
boole
Doğru değerine ayarlanırsa tarayıcı bağlantısının aktarımı, TLS veya USB gibi pasif bir dinleyici tarafından kesilemez.
ScannerOption
Özellikler
-
yapılandırılabilirlik
Seçeneğin değiştirilip değiştirilemeyeceğini ve nasıl değiştirilebileceğini gösterir.
-
sınırlama
OptionConstraint isteğe bağlı
Mevcut tarayıcı seçeneğinde
OptionConstraintdeğerini tanımlar. -
açıklama
dize
Seçeneğin daha uzun bir açıklaması.
-
isActive
boole
Seçeneğin etkin olduğunu ve ayarlanabileceğini veya alınabileceğini gösterir. Yanlış değerine ayarlanırsa
valueözelliği ayarlanmaz. -
isAdvanced
boole
Kullanıcı arayüzünün bu seçeneği varsayılan olarak göstermemesi gerektiğini belirtir.
-
isAutoSettable
boole
Tarayıcı sürücüsü tarafından otomatik olarak ayarlanabilir.
-
isDetectable
boole
Bu seçeneğin yazılım tarafından algılanabileceğini gösterir.
-
isEmulated
boole
Doğru ise tarayıcı sürücüsü tarafından emüle edilir.
-
ad
dize
Küçük harfli ASCII harfleri, rakamlar ve kısa çizgiler kullanılarak oluşturulan seçenek adı. Aksan işaretlerine izin verilmez.
-
title
dize
Yazdırılabilir tek satırlık başlık.
-
tür
Bu seçeneği ayarlamak 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
string[]
Bir resim etiketine "src" değeri olarak iletilebilecek biçimdeki veri resmi URL'leri dizisi.
-
mimeType
dize
dataUrlsöğesinin MIME türü.
SetOptionResult
Özellikler
-
ad
dize
Ayarlanan seçeneğin adını belirtir.
-
sonuç
Seçeneği ayarlamanın sonucunu gösterir.
SetOptionsResponse
Özellikler
-
seçenekler
isteğe bağlı nesne
Sağlanan tüm seçenekleri ayarlamaya çalıştı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.Bazı seçenekler başarıyla ayarlanmamış olsa bile bu özellik ayarlanır ancak güncellenen yapılandırma alınamazsa (örneğin, tarama sırasında tarayıcının bağlantısı kesilirse) ayarlanmaz.
-
sonuç
Her bir
OptionSettingiçin birer tane olmak üzere sonuç dizisi. -
scannerHandle
dize
setOptions()işlevine 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
number isteğe bağlı
Sıfır dışında bir değer belirtilirse tek bir
readScanDatayanıtında döndürülen taranmış maksimum bayt sayısını bu değerle sınırlandırır. İzin verilen en küçük değer 32768'dir (32 KB). Bu özellik belirtilmezse döndürülen parçanın boyutu, taranan resmin tamamı kadar büyük olabilir.
StartScanResponse
Özellikler
-
iş
string isteğe bağlı
result,SUCCESSise tarama verilerini okumak veya işi iptal etmek için kullanılabilecek bir tutma yeri sağlar. -
sonuç
Tarama başlatma işleminin sonucu. Bu değer
SUCCESSisejobözelliği doldurulur. -
scannerHandle
dize
startScan()işlevine iletilen tarayıcı tutma yerinin aynısını sağlar.
Yöntemler
cancelScan()
browser.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ıyorsa nesne bunun yerine geri çağırmaya 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ı.
İadeler
-
Promise<CancelScanResponse>
Sonuçla çözümlenen bir Promise döndürür.
closeScanner()
browser.documentScan.closeScanner(
scannerHandle: string,
): Promise<CloseScannerResponse>
Tarayıcıyı, iletilen tutma yeriyle kapatır ve CloseScannerResponse nesnesiyle çözümlenen bir Promise döndürür. Geri çağırma kullanılıyorsa nesne bunun yerine geri çağırmaya iletilir. Yanıt başarılı olmasa bile, sağlanan tutma yeri 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 tutma yerini belirtir.
İadeler
-
Promise<CloseScannerResponse>
Sonuçla çözümlenen bir Promise döndürür.
getOptionGroups()
browser.documentScan.getOptionGroups(
scannerHandle: string,
): Promise<GetOptionGroupsResponse>
openScanner tarafından daha önce 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 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 herkese açık anahtarı.
İadeler
-
Promise<GetOptionGroupsResponse>
Sonuçla çözümlenen bir Promise döndürür.
getScannerList()
browser.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
-
filtre
Hangi tarayıcı türlerinin döndürülmesi gerektiğini belirten bir
DeviceFilter.
İadeler
-
Promise<GetScannerListResponse>
Sonuç ve tarayıcı listesiyle çözümlenen bir Promise döndürür.
openScanner()
browser.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, önceki bir
getScannerListçağrısından döndürülen değerdir.
İadeler
-
Promise<OpenScannerResponse>
Sonuçla çözümlenen bir Promise döndürür.
readScanData()
browser.documentScan.readScanData(
job: string,
): Promise<ReadScanDataResponse>
Etkin bir iş tanıtıcısından mevcut resim verilerinin bir sonraki parçasını okur ve ReadScanDataResponse nesnesiyle çözümlenen bir Promise döndürür. Geri çağırma kullanılıyorsa 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 hâlâ çalıştığı 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ıt, EOF sonuç değerini alır. Bu yanıt, sıfır olmayan son bir data üyesi içerebilir.
Parametreler
-
iş
dize
Daha önce
startScantarafından döndürülen etkin iş tanıtıcısı.
İadeler
-
Promise<ReadScanDataResponse>
Sonuçla çözümlenen bir Promise döndürür.
scan()
browser.documentScan.scan(
options: ScanOptions,
): Promise<ScanResults>
Belge tarama işlemi gerçekleştirir 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 geri çağırmaya iletilir.
Parametreler
-
seçenekler
Tarama parametrelerini içeren bir nesne.
İadeler
-
Promise<ScanResults>
Chrome 96 ve sonraki sürümler Chrome 148'den itibaren browser.*Tarama sonuçlarıyla çözümlenen bir Promise döndürür.
setOptions()
browser.documentScan.setOptions(
scannerHandle: string,
options: OptionSetting[],
): Promise<SetOptionsResponse>
Belirtilen tarayıcıda seçenekleri ayarlar ve iletilen OptionSetting nesnesinin sırasına göre her değeri ayarlama denemesinin sonucunu içeren bir SetOptionsResponse nesnesiyle çözümlenen bir Promise döndürür. Geri çağırma kullanılıyorsa nesne bunun yerine geri çağırmaya iletilir.
Parametreler
-
scannerHandle
dize
Seçeneklerin ayarlanacağı tarayıcının herkese açık adı. Bu, daha önce
openScannerçağrısından döndürülen bir değer olmalıdır. -
seçenekler
Tarayıcıya uygulanacak
OptionSettingnesnenin listesi.
İadeler
-
Promise<SetOptionsResponse>
Sonuçla çözümlenen bir Promise döndürür.
startScan()
browser.documentScan.startScan(
scannerHandle: string,
options: StartScanOptions,
): Promise<StartScanResponse>
Belirtilen tarayıcıda bir tarama başlatır ve StartScanResponse ile çözümlenen bir Promise döndürür. Geri çağırma kullanılıyorsa nesne bunun yerine geri çağırmaya iletilir. Çağrı başarılı olursa yanıt, tarama verilerini okumak veya taramayı iptal etmek için sonraki çağrılarda kullanılabilecek bir iş tanıtıcısı içerir.
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ınScannerInfoözelliğinde döndürülen girişlerden biriyle eşleşmelidir.
İadeler
-
Promise<StartScanResponse>
Sonuçla çözümlenen bir Promise döndürür.