Symbology Customization in WinUI Barcode

28 Feb 20224 minutes to read

Each Barcode symbology can be associated with optional settings that may affect the specific bar code.

One-Dimensional Barcode settings


The EnableCheckSum property enables the redundancy check using a check digit, the decimal equivalent of a binary parity bit. It consists of a single digit, computed from the other digits in the message.

    <syncfusion:CodabarBarcode EnableCheckSum="True" ShowCheckSum="False" />   


The check digit can be shown in the Barcode or kept hidden by using the ShowCheckSum property.

    <syncfusion:CodabarBarcode EnableCheckSum="True" ShowCheckSum="True" />   


The EncodeStartStopSymbols property adds Start and Stop symbols to signal a bar code reader that a bar code has been scanned.

    <syncfusion:CodabarBarcode EncodeStartStopSymbols="True" />   

Two-Dimensional Barcode settings

DataMatrix Barcode settings

The DataMatrix Barcode can be customized using the Encoding and MatrixSize properties.


The encoding format of the DataMatrix Barcode can be modified using the Encoding property to decide the Barcode value to be set.

The DataMatrixEncoding enumeration has the following four encoding:

  • ASCII - Supports character values between U+0000 and U+007F.
  • ASCIINumeric - Supports only single digit numeric characters [0-9].
  • Auto - Supports symbols and all kind of characters [^A-Za-z0-9].
  • Base256 - Supports all characters and symbols [^A-Za-z0-9].
    <syncfusion:DataMatrixBarcode Encoding="ASCIINumeric" />


The MatrixSize property allows user to specify the size of the Barcode from a set of predefined sizes available in the [DataMatrixSize] enumeration.

    <syncfusion:DataMatrixBarcode MatrixSize="Size104x104" />

Data Matrix Size Table

Data Matrix Size Description
Auto Size is chosen based on the input data
Size10x10 Square matrix with 10 rows and 10 columns.
Size12x12 Square matrix with 12 rows and 12 columns.
Size14x14 Square matrix with 14 rows and 14 columns.
Size16x16 Square matrix with 16 rows and 16 columns.
Size18x18 Square matrix with 18 rows and 18 columns.
Size20x20 Square matrix with 20 rows and 20 columns.
Size22x22 Square matrix with 22 rows and 22 columns.
Size24x24 Square matrix with 24 rows and 24 columns.
Size26x26 Square matrix with 26 rows and 26 columns.
Size32x32 Square matrix with 32 rows and 32 columns.
Size36x36 Square matrix with 36 rows and 36 columns.
Size40x40 Square matrix with 40 rows and 40 columns.
Size44x44 Square matrix with 44 rows and 44 columns.
Size48x48 Square matrix with 48 rows and 48 columns.
Size52x52 Square matrix with 52 rows and 52 columns.
Size64x64 Square matrix with 64 rows and 64 columns.
Size72x72 Square matrix with 72 rows and 72 columns.
Size80x80 Square matrix with 80 rows and 80 columns.
Size88x88 Square matrix with 88 rows and 88 columns.
Size96x96 Square matrix with 96 rows and 96 columns.
Size104x104 Square matrix with 104 rows and 104 columns.
Size120x120 Square matrix with 120 rows and 120 columns.
Size132x132 Square matrix with 132 rows and 132 columns.
Size144x144 Square matrix with 144 rows and 144 columns.
Size8x18 Rectangular matrix with 8 rows and 18 columns.
Size8x32 Rectangular matrix with 8 rows and 32 columns.
Size12x26 Rectangular matrix with 12 rows and 26 columns.
Size12x36 Rectangular matrix with 12 rows and 36 columns.
Size16x36 Rectangular matrix with 16 rows and 36 columns.
Size16x48 Rectangular matrix with 16 rows and 48 columns.

QRBarcode settings

The QRBarcode settings allows users to modify the version, error correction level, and input mode of the QRBarcode.


The QR Barcode uses QRVersion property to decide the version from 1 to 40 using QRBarcodeVersion enumeration where Version 1 measures 21 modules x 21 modules, Version 2 measures 25 modules x 25 modules, and so on, increasing in steps of 4 modules per side up to Version 40 which measures 177 modules x 177 modules. By default, the QR version is set to Auto, which means that it will be set based on the length of the input text.

    <syncfusion:QRBarcode QRVersion="Version01" />


The QR Barcode uses ErrorCorrectionLevel property to generate a series of error correction codewords that are added to the data code word sequence in order to enable the symbol to withstand damage without data loss. There are four user–selectable levels of error correction. By default, the property value is Low.

    <syncfusion:QRBarcode ErrorCorrectionLevel="Quartile" />

Error Correction Level Table

Error Correction Level Recovery Capacity % (approx.)
Low 7
Medium 15
Quartile 25
High 30


The QR Barcode uses InputMode property to decide the supported character set for value. The default value is BinaryMode.

The QRInputMode enumeration has following values:

  • NumericMode
  • AlphaNumericMode
  • BinaryMode
    <syncfusion:QRBarcode InputMode="AlphaNumericMode" />

Input Mode Table

Input Mode Possible characters
Numeric Mode 0,1,2,3,4,5,6,7,8,9
Alphanumeric Mode 0–9, A–Z (upper-case only), space, $, %, *, +, -,., /, :
Binary Mode Shift JIS characters