HPDFSampleDataMatrixQuadrilateral
Unit: HPDFDataMatrixGeometry
function HPDFSampleDataMatrixQuadrilateral(const Mask: TBytes;
Width, Height, Rows, Columns, RegionRows, RegionColumns: Integer;
const Corners: THPDFBarcodeQuadrilateral;
CancellationToken: THPDFCancellationToken; StartTick: Cardinal;
out Grid: THPDFBarcodeModuleGrid): Boolean;
Muestrea un cuadrilátero Data Matrix ECC 200 con validación de bordes finder antes del muestreo de módulos de datos; la salida exitosa coincide con la regla de mayoría de cinco muestras usada por HPDFSampleBarcodeQuadrilateral
Mask contiene un byte por píxel del raster, con bytes distintos de cero representando píxeles oscuros; Width y Height describen ese raster, Rows y Columns describen la grilla completa de módulos incluidos los bordes finder, y RegionRows y RegionColumns cuentan las regiones de datos vertical y horizontalmente
Los conteos de regiones deben ser positivos y dividir sus dimensiones de módulos correspondientes; cada región debe tener al menos tres módulos de ancho y alto, las dimensiones de módulos van de 8 a 144, las dimensiones del raster son de como mucho 4096 por 4096, y se aceptan como mucho 4,194,304 píxeles de raster
Corners sigue el orden normalizado top-left, top-right, bottom-right, bottom-left del símbolo candidato, incluida su orientación y reflexión previstas; el sampler comprueba los bordes sólidos izquierdo e inferior y los bordes alternantes superior y derecho de cada región
La cantidad permitida de módulos finder incorrectos es Max(1, BorderModuleCount div 50), coincidiendo con la verificación finder ECC 200 existente del decodificador; un patrón finder rechazado o una entrada inválida devuelve false con un Grid vacío, y el muestreo exitoso no establece un payload decodificado ni codewords Reed–Solomon válidos
StartTick es el valor de GetTickCount de Windows desde el inicio de la operación completa; el deadline existente de 2000 ms incluye el muestreo finder y de datos, y la cancelación se propaga como EHPDFOperationCancelled
La función genérica HPDFSampleBarcodeQuadrilateral sigue muestreando grillas de módulos arbitrarias sin imponer la semántica finder de ECC 200