HPDFSampleDataMatrixQuadrilateral

Модуль: HPDFDataMatrixGeometry

function HPDFSampleDataMatrixQuadrilateral(const Mask: TBytes;
  Width, Height, Rows, Columns, RegionRows, RegionColumns: Integer;
  const Corners: THPDFBarcodeQuadrilateral;
  CancellationToken: THPDFCancellationToken; StartTick: Cardinal;
  out Grid: THPDFBarcodeModuleGrid): Boolean;

Сэмплирует четырёхугольник ECC 200 Data Matrix с валидацией рамки поиска перед сэмплированием модулей данных; успешный вывод совпадает с правилом большинства из пяти образцов, используемым HPDFSampleBarcodeQuadrilateral

Mask содержит один байт на пиксель растра, ненулевые байты обозначают тёмные пиксели; Width и Height описывают этот растр, Rows и Columns — полную сетку модулей с рамками поиска, а RegionRows и RegionColumns считают области данных по вертикали и горизонтали

Числа областей должны быть положительными и делить соответствующие размеры модулей; каждая область должна быть не менее трёх модулей в ширину и высоту, размеры модулей от 8 до 144, размеры растра не более 4096 на 4096, и принимается не более 4 194 304 пикселей растра

Corners следуют нормализованному порядку «верхний левый, верхний правый, нижний правый, нижний левый» для символа-кандидата, включая задуманную ориентацию и отражение; сэмплер проверяет сплошные левую и нижнюю рамки и чередующиеся верхнюю и правую рамки каждой области

Допустимое число неверных модулей поиска равно Max(1, BorderModuleCount div 50), совпадая с существующей проверкой поиска ECC 200 в декодере; отклонённый шаблон поиска или некорректный ввод возвращает false с пустым Grid, а успешное сэмплирование не устанавливает декодированную полезную нагрузку или корректные кодовые слова Рида — Соломона

StartTick — значение Windows GetTickCount с начала полной операции; существующий дедлайн 2 000 мс включает сэмплирование поиска и данных, а отмена распространяется как EHPDFOperationCancelled

Универсальная функция HPDFSampleBarcodeQuadrilateral продолжает сэмплировать произвольные сетки модулей, не навязывая семантику поиска ECC 200

Сканирование растровых штрихкодов с несколькими символами