Class EciMode
Controls whether a UTF-8 Extended Channel Interpretation (ECI) header is written into 2D barcode symbols (DataMatrix, QR, Aztec, PDF417).
An ECI header tells a scanner that the encoded bytes should be interpreted as UTF-8. It is only meaningful when the data contains non-ASCII characters; for pure ASCII data it adds redundant codewords that can enlarge the symbol and confuse legacy scanners that do not understand ECI.
Set the library-wide default through DefaultEciMode, which applies to every 2D format. The DataMatrixWriter overloads additionally accept a per-call value to override the default for a single DataMatrix.
Inheritance
Namespace: IronBarCode
Assembly: IronBarCode.dll
Syntax
public sealed class EciMode : Enum
EciMode controls whether a UTF-8 Extended Channel Interpretation header is written into 2D barcode symbols (DataMatrix, QR, Aztec, PDF417). Auto is the default: the header is added only when non-ASCII characters are present. ForceUtf8 always writes the ECI header, and Off suppresses it entirely for maximum compatibility with legacy scanners. Set the library-wide default via DefaultEciMode, or pass a per-call value to DataMatrixWriter overloads to override it for a single symbol.
BarcodeWriter.CreateBarcode("Héllo", BarcodeEncoding.QRCode, eciMode: EciMode.Auto);Fields
Auto
Default. The UTF-8 ECI header is written only when the data contains non-ASCII characters. Pure ASCII data is left without an ECI header, keeping the symbol as small as possible and maximizing compatibility with older scanners.
Declaration
public const EciMode Auto
Field Value
| Type | Description |
|---|---|
| EciMode |
ForceUtf8
The UTF-8 ECI header is always written, even for pure ASCII data. Use this for strict standards compliance when every symbol must explicitly declare its encoding.
Declaration
public const EciMode ForceUtf8
Field Value
| Type | Description |
|---|---|
| EciMode |
Off
No ECI header is ever written. Use this only when the data is known to be ASCII/Latin-1 and the target decoder does not understand ECI declarations.
Declaration
public const EciMode Off
Field Value
| Type | Description |
|---|---|
| EciMode |
value__
Declaration
public int value__
Field Value
| Type | Description |
|---|---|
| System.Int32 |