HPDFScanBarcodeBitmap
Unit: HPDFBarcodeRecognitionScan
function HPDFScanBarcodeBitmap(const Request: THPDFBarcodeDecodeRequest;
const SingleSymbolDecoder: IHPDFBarcodeDecoder;
const Options: THPDFBarcodeScanOptions; out Symbols: THPDFBarcodeScanSymbols;
out Info: THPDFBarcodeScanInfo; out Diagnostic: AnsiString): Boolean;
Localiseert gescheiden barcode-candidates en decodeert ze via de door de aanroeper geleverde single-symbol-backend; uitvoercoördinaten en vier hoeken verwijzen naar de originele bitmap
Request result-, tekst- en raw-byte-limieten gelden over alle gepubliceerde symbolen; false geeft een lege Symbols-array met een diagnostiek terug, en EHPDFOperationCancelled propageert zonder partiele resultaten te publiceren
De bitmap blijft behouden; invoerdimensies zijn hoogstens 4096 bij 4096 met hoogstens 4.194.304 pixels, en lege of laag-contrasterende invoer slaagt zonder symbolen
Voor rasters met lange parallelle balken probeert de scanner eerst de complete afbeelding, haalt geverifieerde symbol-dekking weg uit diens private grouping-tegels en probeert coarse groepen met ruimere quiet zones vóór kleinere fragmenten; matrix-code en ander artwork houden region-first scanning, waarbij grotere verbonden groepen vóór strakkere fragmenten worden geprobeerd zodat een compleet gedraaid symbool niet eerst de candidate-ruimte uitput
De oorspronkelijke deadline van 2.000 ms geldt gedurende de hele operatie; latere strakkere grouping vindt gescheiden symbolen nog steeds wanneer een eerdere groep ze combineerde, en geverifieerde dekking voorkomt redundante fragmentdecodes
Native QR-geometrie checkt dezelfde exacte finder-patronen voordat het volledige candidate-grid wordt toegewezen en gesampled, wat overtollig werk voor ongeldige finder-combinaties vermijdt terwijl geaccepteerde modules en source-coordinate-bounds behouden blijven