Symbol Structure

 

PDF417 Symbol Parameters

Row Parameters

Codeword Sequence

PDF417 Symbol Parameters

Each PDF417 symbol consists of a stack of vertically aligned rows with a minimum of 3 rows (maximum 90 rows).  Each row includes a minimum of 1 symbol character (maximum 30 symbol characters), excluding start, stop and row indicator columns.  The symbol shall include a quiet zone on all four sides.  Figure 1 illustrates a PDF417 symbol.


Figure 1

Row Parameters

Each PDF417 row has the following parameters:

A leading quiet zone

A start character

A left row indicator symbol character

1 to 30 symbol characters (or columns)

A right row indicator symbol character

A stop character

A trailing quiet zone

NOTE: The number of symbol characters (or codewords) defined in item 'd' above identifies the number of columns in the PDF417 symbol.

Codeword Sequence

A PDF417 symbol may contain up to 928 symbol characters or codewords.  ‘Symbol character’ is the more appropriate term used to refer to the printed bar/space pattern; ‘codeword is the more appropriate term for the numeric value of the symbol character.  The codewords follow this sequence:

The first codeword, the symbol length descriptor, always encodes the total number of data codewords in the symbol, including the symbol length descriptor itself, data codewords and pad codewords, but excluding the number of error correction codewords.

The data codewords follow starting with the most significant encodable character.  Function codewords may be inserted to achieve data compaction.

Pad codewords are subsequently added to enable the codeword sequence to be represented in a rectangular matrix.  Pad codewords may also be used to fill additional complete rows to achieve the desired aspect ratio or as specified by an application. 

An optional Macro PDF417 Control Block.

Error correction codewords for error detection and correction.

The codewords are arranged with the most significant codeword adjacent to the symbol length descriptor, and are encoded from left to right top row to bottom.  Figure 2 illustrates in layout format the sequence for the symbol like that shown in Figure 1.  In Figure 2 an error correction level of 1 has been used and one pad character was needed to completely fill the symbol matrix.

The rules and advice for structuring the matrix are included in the table below.

 

L1

d15

d14

R1

 

 

L2

d13

d12

R2

 

S

L3

d11

d10

R3

S

T

L4

d9

d8

R4

T

A

L5

d7

d6

R5

O

R

L6

d5

d4

R6

P

T

L7

d3

d2

R7

 

 

L8

d1

d0

R8

 

 

L9

e3

e2

R9

 

 

L10

e1

e0

R10

 

  PDF417 Example of Symbol Layout Schematic

                                                where  L, R, d and e are as defined in 3.2

                        d15       =          symbol length descriptor (in this example, with a value of 16)

                                    d14 to d1              =          encoded representation of data

                                    d0         =          pad codeword