Çoklu-sembol Raster Barkod Taraması

HPDFCreateBuiltInBarcodeDecoder, aynı raster'da birden çok ayrılmış sembolü tarar; native decoder'lar tarafından desteklenen karışık linear, QR Code, Data Matrix ECC 200 ve PDF417 sembolleri dâhil

Mevcut DecodeLoadedPageBarcodes overload'ı, bu tarayıcıyı otomatik olarak kullanır ve sayfa pipeline'ı onları PDF koordinatlarına map etmeden önce her result'ın piksel sınırlarını tutar

Result'lar üst konuma ve ardından sol konuma göre sıralanır ve duplicate tespitler yalnızca symbology, metin, ham baytlar ve üst üste-binen konum uyuştuğunda birleştirilir; ayrı konumlardaki özdeş payload'lar ayrı result olarak kalır

Native helper ve geometri

HPDFBarcodeRecognitionScan, daha zengin THPDFBarcodeScanSymbols array'ini ve THPDFBarcodeScanInfo istatistiklerini gerektiren çağıranlar için HPDFScanBarcodeBitmap'i export eder

Bir THPDFBarcodeDecodeRequest, HPDFCreateBuiltInSingleBarcodeDecoder ve THPDFBarcodeScanOptions.Default geçin; tek-sembol fabrikası, uygulamaya-özgü bölge seçimi için orijinal decoder'a doğrudan erişimi de korur

HPDFCreateScanningBarcodeDecoder, sağlanan tek-sembollü bir IHPDFBarcodeDecoder'ı yalnızca sıradan decoder interface'ine ihtiyaç duyan uygulamalar için aynı bölge taramasıyla, duplicate bastırmasıyla ve toplam bütçelerle sarar

Her THPDFBarcodeScanSymbol, sıradan Barcode record'unu, dört raster Corners'ı, HasPerspectiveGeometry'yi ve sembol-başına bir Diagnostic içerir

Data Matrix geometrisi, convex hull'ı foreground satır ekstremlerinden türetir, dört edge çizgisi kurtarır, komşu çizgileri keser ve modül merkezlerini beş-noktalı çoğunluk oyuyla örneklemek için sekiz-parametreli bir homography çözer

Decoder, desteklenen kare ve standart dikdörtgen ECC 200 boyutlarını, rotasyonları ve aynaları dener, ardından metni veya ham baytları döndürmeden önce finder border'ları ve Reed-Solomon block'larını doğrular; rotasyon ve yamuk projektiflik, düzeltilebilir data-modül hasarıyla birleştirilebilir

Doğrulanmış Data Matrix geometrisi için OrientationDegrees, kanonik üst kenarı raster'ın pozitif x ekseninden saat yönünde ölçer; Corners ise tespit edilmiş hull'u, belirtilmemiş bir başlangıç köşesiyle saat yönünde izler

HPDFDataMatrixGeometry, HPDFLocateDataMatrixQuadrilateral ve HPDFSampleBarcodeQuadrilateral'i export eder; HPDFDataMatrixDecoder ise dört projektilen köşeyi zaten bilen uygulamalar için HPDFDecodeDataMatrixQuadrilateral'i export eder

Confidence value'ları, decoder'ın doğrulama yolunu anlatır — kalibre edilmiş bir istatistiksel olasılığı değil; projektif örneklenmiş ECC 200 result'ları, başarılı border ve error-correction doğrulamasından sonra şu anda 0.90 raporlar

Diğer native symbology'ler için, helper'ın köşeleri döndürülen eksen-hizalı sınırları anlatır ve HasPerspectiveGeometry false'tur; mevcut confidence ve yönelim value'ları korunur

Bütçeler ve atomik yayımlama

Tarayıcı, Otsu binarizasyonu ve dört-piksel occupancy tile'ları kullanır, ardından matrix foreground bölgelerini üç sınırlı komşuluk mesafesinin en büyüğünden küçüklere doğru bağlar; bu, ayrık fragment'lar önceyken eksiksiz bir döndürülmüş sembolü dener ve ayrılmış semboller için daha sıkı retry'leri ve olağandışı ölçek veya bağlantılı grafik için tam-raster fallback'i tutar

Foreground tile'ları zaten doğrulanmış result'lar tarafından kapsanan bölgeler, decoding'den önce atlanır ve çağıranın kaynak bitmap pikselleri ve pixel format'ı korunur

Default limitler, 256 aday decode, 67.108.864 toplam aday piksel, 268.435.456 tahmini working bayt ve iki-saniyelik istek deadline'dır; orijinal 4096 çarpı 4096 boyut ve 4.194.304-piksel input üst sınırları yürürlükte kalır

İstekteki MaxResults, MaxTextCodeUnits ve MaxRawBytes, farklı konumlardaki tekrar-payload'lar dâhil, yayımlanan toplam result kümesine uygulanır

THPDFBarcodeScanInfo, denenmiş aday sayısını, kümülatif decoded pikselleri, reddedilen adayları ve üst üste-binan duplicate result'ları raporlar

Cancellation, EHPDFOperationCancelled olarak yayılır; tükenmiş bütçeler veya decoder hataları diagnostic ile false döndürür ve tüm başarısızlıklar, önceki adaylar başarıyla decode edilmiş olsa bile sembol array'ini boş bırakır

Boş veya tek-düzeli düşük-kontrastlı input, boş array ile başarıyla tamamlanır ve desteklenmeyen yüksek-kontrastlı grafik, tahmin edilen sembol döndürmez

Tanıma kapsamı

Matrix taraması, daha sıkı fragment'lardan önce daha büyük bağlı grupları dener ve ayrılmış-sembol retry'lerini ve orijinal deadline'ı korur; native QR geometrisi, tam aday grid'ini tahsis etmeden ve örneklemeden önce kesin finder pattern'leri doğrular

Birden çok sembol, bölge gruplandırması için yeterli görünür arka plan ayrımı gerektirir; değen semboller, üst üste binen semboller, yoğun çevre grafikleri, ağır hasarlı locator border'ları, minik projektilen modüller ve aşırı perspektif lokalizasyonu engelleyebilir

DMRE, kavisli yüzeyler, fotografik parıltı kurtarması ve mevcut native decoder set'inin ötesindeki ek symbology'ler bu profilin dışında kalır

Bağımsız fixture'lar, tekrar-QR payload'lı altı-sembollü bir kolajı, döndürülmüş ve yamuk Data Matrix görsellerini, dikdörtgen ECC 200'ü ve düzeltilebilir data-modül hasarıyla birleşik perspektifi kapsar

Desteklenen payload mode'ları için bkz. Built-in OCR ve Barkod Tanıma; sayfa-to-raster koordinat eşlemesi için bkz. Loaded Page Barkod Decoding