# Reading a Mail Bar Code

This code snippet shows how to read Mail Bar codes and retrieve the decoded data.

## C++

```cpp
#include <eVision/EasyBarCode/EasyMailBarcode/EMailBarcodeReader.h>
```

```cpp
using namespace eVision;

// Image constructor
EImageBW8 srcImage;
// Mail barcode reader constructor
EMailBarcodeReader reader;

// Select expected symbologies and orientations (optional)
reader.SetExpectedSymbologies(5);
reader.SetExpectedOrientations(5);
// ...
// Read
std::vector<EMailBarcode> codes = reader.Read(srcImage);
// Retrieve the data included in found mail bar codes
for (unsigned int index = 0; index < codes.size(); index++)
{
  std::string text = codes[index].GetText();
  std::vector<EStringPair> components = codes[index].GetComponentStrings();
}
```

#### SEE ALSO
[`EMailBarcodeReader::Read`](../../../../../doxygen_cpp/classeVision_1_1EMailBarcodeReader.html#a8463565e19f80dad6696bb333cafab0f) [<sub>.NET</sub>](../../../../../doxygen_cs/classeVision_1_1EMailBarcodeReader.html#a13f20b2cb1c260874f7420161ea9251b) [<sub>Python</sub>](../../../../../doxygen_python/classeVision_1_1EMailBarcodeReader.html#a25dc0f81bbd24bbe17c606bca66cb695)

## C#

```cs
using eVision;
```

```cs
// Image constructor
EImageBW8 srcImage = new EImageBW8();
// Mail bar code reader constructor
EMailBarcodeReader reader = new EMailBarcodeReader();
// Select expected symbologies and orientations (optional)
reader.ExpectedSymbologies = 5;
reader.ExpectedOrientations = 5;
// ...
// Read
EMailBarcode[] codes = reader.Read(srcImage);
// Retrieve the data included in found mail bar codes
for (int index = 0; index < codes.Length; index++)
{
  string text = codes[index].Text;
  EStringPair[] components = codes[index].ComponentStrings;
}
```

#### SEE ALSO
[`EMailBarcodeReader.Read`](../../../../../doxygen_cs/classeVision_1_1EMailBarcodeReader.html#a13f20b2cb1c260874f7420161ea9251b) [<sub>C++</sub>](../../../../../doxygen_cpp/classeVision_1_1EMailBarcodeReader.html#a8463565e19f80dad6696bb333cafab0f) [<sub>Python</sub>](../../../../../doxygen_python/classeVision_1_1EMailBarcodeReader.html#a25dc0f81bbd24bbe17c606bca66cb695)

## Python

```py
import eVision
# Image constructor
src_image = eVision.EImageBW8()
# Mail bar code reader constructor
reader = eVision.EMailBarcodeReader()
# Select expected symbologies and orientations (optional)
reader.ExpectedSymbologies = 5
reader.ExpectedOrientations = 5
# ...
# Read
codes = reader.Read(src_image)
# Retrieve the data included in found mail bar codes
for code in codes:
    text = code.Text
    components = code.ComponentStrings
```

#### SEE ALSO
[`EMailBarcodeReader.Read`](../../../../../doxygen_python/classeVision_1_1EMailBarcodeReader.html#a25dc0f81bbd24bbe17c606bca66cb695) [<sub>C++</sub>](../../../../../doxygen_cpp/classeVision_1_1EMailBarcodeReader.html#a8463565e19f80dad6696bb333cafab0f) [<sub>.NET</sub>](../../../../../doxygen_cs/classeVision_1_1EMailBarcodeReader.html#a13f20b2cb1c260874f7420161ea9251b)
