HPDFScanBarcodeBitmap

Unit: HPDFBarcodeRecognitionScan

function HPDFScanBarcodeBitmap(const Request: THPDFBarcodeDecodeRequest;
  const SingleSymbolDecoder: IHPDFBarcodeDecoder;
  const Options: THPDFBarcodeScanOptions; out Symbols: THPDFBarcodeScanSymbols;
  out Info: THPDFBarcodeScanInfo; out Diagnostic: AnsiString): Boolean;

Localiza candidatos de códigos de barras separados y los decodifica a través del backend de símbolo único suministrado por el llamador; las coordenadas de salida y las cuatro esquinas se refieren al bitmap original

Los límites de resultado, texto y bytes crudos del request aplican a todos los símbolos publicados; false devuelve un arreglo Symbols vacío con un diagnóstico, y EHPDFOperationCancelled se propaga sin publicar resultados parciales

El bitmap se preserva; las dimensiones de entrada son de a lo sumo 4096 por 4096 con a lo sumo 4,194,304 píxeles, y una entrada en blanco o de bajo contraste tiene éxito sin símbolos

Para rasters con barras paralelas largas, el scanner prueba primero la imagen completa, quita la cobertura verificada de símbolos de sus tiles privados de agrupamiento, y prueba grupos gruesos con quiet zones más anchas antes que fragmentos más chicos; los matrix codes y otros artworks conservan el escaneo de región primero, probando grupos conexos más grandes antes que fragmentos más ajustados para que un símbolo rotado completo no agote primero la cuota de candidatos

El deadline original de 2,000 ms aplica durante todo el proceso; el agrupamiento más ajustado posterior todavía encuentra símbolos separados cuando un grupo anterior los combinó, y la cobertura verificada evita decodificaciones redundantes de fragmentos

La geometría QR nativa verifica los mismos finder patterns exactos antes de asignar y muestrear la grilla completa de candidatos, evitando trabajo redundante para combinaciones de finders inválidas sin dejar de preservar los módulos aceptados y los bounds de coordenadas de la fuente

Escaneo raster de códigos de barras multi-símbolo