<a id="specifications"></a>

# Specifications

#### WARNING
This library is deprecated, use [**EasyMatrixCode2**](../index.html.md) instead.

![](assets/images/easymatrixcode2/datamatrixcode_ecc200_26x26.webp)![](assets/images/easymatrixcode2/matrixcodefinderpattern.webp)

In a single read operation, **EasyMatrixCode** locates, unscrambles, decodes, reads and grades the quality of grayscale 2D data matrix codes of any size, contrast, location and orientation (even viewed from the back on a transparent medium), providing they meet the following specifications:

* Minimum cell (= module) size: 3x3 pixels
* Maximum stretching ratio (ratio between cell width and height): 2
* Minimum quiet zone (blank zone around the matrix code) width: 3 pixels

<a id="data-matrix-code-definition"></a>

## Data Matrix Code Definition

* A data matrix code is a two-dimensional rectangular array of black and white cells which conveys a string of characters (digits, letters and special characters).
  * It is encoded to achieve maximum packing.
  * Each cell corresponds to a bit of information.
  * Additional redundant bits allow error correction for robust reading of degraded symbols.
* A data matrix code is located using the **Finder pattern**:
  * The bottom and left edges of a Data Matrix code contain only black cells.
  * The top and right edges have alternating cells.

![image](assets/images/easymatrixcode/finderpattern_264x145.webp)
* A data matrix code is characterized by:
  * Its [EMatrixCode::GetLogicalSize()](../../../../doxygen_cpp/classeVision_1_1EMatrixCode.html#aef484e264d742635af895e6182326fbb) [<sub>.NET</sub>](../../../../doxygen_cs/classeVision_1_1EMatrixCode.html#aa88802f3ffa675b9aec6ad7fa31786a1) [<sub>Python</sub>](../../../../doxygen_python/classeVision_1_1EMatrixCode.html#a7bf9494688602285fbb15cd19a3ec1bd) (number of cells).
  * Its **encoding type**: ECC 000 (odd symbol sizes, deprecated) or ECC 200 (even symbol sizes).

#### NOTE
The data matrix code definition is provided by ISO/IEC and approved as standard ISO/IEC 16022.
