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,取樣成功也不代表已解出酬載或有效的 Reed–Solomon 碼字

StartTick 是整個操作開始時的 Windows GetTickCount 值;既有的 2,000 ms 期限涵蓋定位與資料取樣,取消會以 EHPDFOperationCancelled 傳播

泛用的 HPDFSampleBarcodeQuadrilateral 函式仍可取樣任意模組網格,不強加 ECC 200 定位語義

多符號點陣條碼掃描