<a id="easymatrixcode"></a>

# EasyMatrixCode1 - Reading Matrix Codes (deprecated)

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

<a id="easymatrixcode-why"></a>

## Why use EasyMatrixCode2 instead

Compared to `EasyMatrixCode1`, [**EasyMatrixCode2**](../index.html.md) offers the following benefits:

* Ability to read multiple data matrix codes in an image.
* Support for asynchronous processing.
* Improved consistency of reading and grading results.
* Improved consistency of processing time.
* Improved handling of deformed data matrix codes.

#### NOTE
**EasyMatrixCode2** does not support the **ANSI/AIM BC11** grading standard that was supported in **EasyMatrixCode1** as this standard is superseded by **ISO 15415** that is supported by **EasyMatrixCode2**.

## Usage

You can read the matrix code in an image by using the [`EMatrixCodeReader::Read`](../../../../doxygen_cpp/classeVision_1_1EMatrixCodeReader.html#ac5e4a3a293dfe20fbe8853ad9b8aa5e3) [<sub>.NET</sub>](../../../../doxygen_cs/classeVision_1_1EMatrixCodeReader.html#a5f80841bd1bc31da1e2a108901a4c3e1) [<sub>Python</sub>](../../../../doxygen_python/classeVision_1_1EMatrixCodeReader.html#a82bc5109d38832775681a5604ac40eb6) method.

This method returns an [`EMatrixCode`](../../../../doxygen_cpp/classeVision_1_1EMatrixCode.html) [<sub>.NET</sub>](../../../../doxygen_cs/classeVision_1_1EMatrixCode.html) [<sub>Python</sub>](../../../../doxygen_python/classeVision_1_1EMatrixCode.html) instance that contains the following information about the found data matrix code:

* Its [`decoded string`](../../../../doxygen_cpp/classeVision_1_1EMatrixCode.html#a9bfc04da8b33e13f972d7535f3147ee9) [<sub>.NET</sub>](../../../../doxygen_cs/classeVision_1_1EMatrixCode.html#a2f091cf354dbb9c3c93b8cfcfe058765) [<sub>Python</sub>](../../../../doxygen_python/classeVision_1_1EMatrixCode.html#a6391360cd85695bb8835e2c944290d84),
* Its [`corners`](../../../../doxygen_cpp/classeVision_1_1EMatrixCode.html#a26c9da045c9d1daedf907ffa3c642a13) [<sub>.NET</sub>](../../../../doxygen_cs/classeVision_1_1EMatrixCode.html#a414c840363c8bf1bb855ddb24be057df) [<sub>Python</sub>](../../../../doxygen_python/classeVision_1_1EMatrixCode.html#a96ea87a20a321089f2aa0a09d83196ab) in the image,
* Its logical [`width`](../../../../doxygen_cpp/classeVision_1_1EMatrixCode.html#ae3b2cd4da7c52b537ba14029bd3d05ff) [<sub>.NET</sub>](../../../../doxygen_cs/classeVision_1_1EMatrixCode.html#a747be873483e62f65aec2ab572b33edf) [<sub>Python</sub>](../../../../doxygen_python/classeVision_1_1EMatrixCode.html#a86862fdb667c9d69b0b674cadab2d7d8) and [`height`](../../../../doxygen_cpp/classeVision_1_1EMatrixCode.html#a5db9e785c1078fb308e769c6dcf6de16) [<sub>.NET</sub>](../../../../doxygen_cs/classeVision_1_1EMatrixCode.html#a1e1a787ffeead9028f5c3aeb19c174c6) [<sub>Python</sub>](../../../../doxygen_python/classeVision_1_1EMatrixCode.html#afdb633da05ec206b9660942581be5789),
* Its [`ECC symbol family`](../../../../doxygen_cpp/classeVision_1_1EMatrixCode.html#afb61fc87f0e4f938250585ef7e593477) [<sub>.NET</sub>](../../../../doxygen_cs/classeVision_1_1EMatrixCode.html#a9e0b3b0cd22c71b57f197d56a032e5d9) [<sub>Python</sub>](../../../../doxygen_python/classeVision_1_1EMatrixCode.html#adb31be08ae9c29095097be1ce762bdad),
* Its [`Semi T10`](../../../../doxygen_cpp/classeVision_1_1EMatrixCode.html#a48f81b47f048d6cdd2060038f255f124) [<sub>.NET</sub>](../../../../doxygen_cs/classeVision_1_1EMatrixCode.html#a6f19a9331bd8ff2e573ed3e04fc4f96c) [<sub>Python</sub>](../../../../doxygen_python/classeVision_1_1EMatrixCode.html#ada5fe2d925f1ef7a03e0ddcba2228fa2), [`ISO 15415`](../../../../doxygen_cpp/classeVision_1_1EMatrixCode.html#ab2d8c4cb17b33a04582548890c19b7bc) [<sub>.NET</sub>](../../../../doxygen_cs/classeVision_1_1EMatrixCode.html#a088d24feedb70201291f2e05691664c1) [<sub>Python</sub>](../../../../doxygen_python/classeVision_1_1EMatrixCode.html#a637c71ae1529d15806af6d900b2a3aa9), or [`ISO 29158`](../../../../doxygen_cpp/classeVision_1_1EMatrixCode.html#a424bd5bcbd8ea00a80f54e8b14d7af7b) [<sub>.NET</sub>](../../../../doxygen_cs/classeVision_1_1EMatrixCode.html#a9c60250635bcbaa7ebc05c0e4476d0d3) [<sub>Python</sub>](../../../../doxygen_python/classeVision_1_1EMatrixCode.html#aedf3584c09718387af180eafaf1ee95a) grading results,
* Methods to draw the data matrix [`position`](../../../../doxygen_cpp/classeVision_1_1EMatrixCode.html#ad54bcd7fc51463024f06d369d48dace7) [<sub>.NET</sub>](../../../../doxygen_cs/classeVision_1_1EMatrixCode.html#a0fc1c08828d6a52fa6587f42677b5327) [<sub>Python</sub>](../../../../doxygen_python/classeVision_1_1EMatrixCode.html#ad6c10ae77337df1be3303acf2fd9e9ab) and [`errors`](../../../../doxygen_cpp/classeVision_1_1EMatrixCode.html#a320f0c647927be359962d2c31548f3bd) [<sub>.NET</sub>](../../../../doxygen_cs/classeVision_1_1EMatrixCode.html#a60eaa78626b0b9b0fa557e321a9bf845) [<sub>Python</sub>](../../../../doxygen_python/classeVision_1_1EMatrixCode.html#ad4eeb848e77fbe4bbcb143a9c133202d) on the source image.

<a id="easymatrixcode-contents"></a>

## Contents

Specification of the data matrix

Symbols supported by **EasyMatrixCode**

Workflow of **EasyMatrixCode**

How to learn a Matrix Code model

How to compute the print quality of a Matrix Code.

How to reading and interpret GS1 Data Matrix Codes.

<a id="easymatrixcode-quick-links"></a>

## Quick Links

List of all Classes, Structs and Enumerations of the **EasyMatrixCode** library.

Code snippets for the **EasyMatrixCode** library.
