Custom 4 state symbology Generator

Generate Custom 4 state symbology barcodes in your browser with live preview, validation, and PNG/SVG export.

Advanced options
Enter a value to see a live preview.
Options

These map directly to real generator options; anything not listed here is available under Advanced options above.

What DAFT is

DAFT (bwip-js's own listing calls it "Custom 4 state symbology") is a direct visualization tool for the 4-state bar mechanism every 4-state postal symbology in this catalog is built on (Australia Post, Royal Mail, Deutsche Post Identcode/Leitcode). Rather than encoding a real postal message, it lets you draw the literal bar-height pattern by typing the state letters directly: D (Descender, a short bar aligned to the bottom), A (Ascender, a short bar aligned to the top), F (Full, a bar spanning the whole height), and T (Tracker, a short bar centered in the middle). bwip-js draws it with its own dedicated linear renderer -- confirmed directly: bwipp_daft computes each character's own bar-bottom/bar-height pair from a fixed table and calls bwipp_renlinear() itself, with no delegation to another symbology's own function.

Generate it now

Enter a value made up only of the letters D, A, F, and T to see a live preview.

Valid input

The value must be 1 to 2500 characters (bwipp.daftEmptyData rejects an empty value, bwipp.daftinputTooLong rejects longer input), and every character must be exactly D, A, F, or T (bwipp.daftBadCharacter rejects anything else, including lowercase letters).

Key options

Supported options include height. Real, literal sentinel default is -1, resolved internally to a fixed 0.175in bar height when left at that sentinel. There is no includetext option at all -- DAFT is a pure bar-height visualization with no human-readable text convention of its own.

Output and printing

Export SVG for vector-precise label artwork or PNG for a quick proof.

Common uses

DAFT is a diagnostic and illustration tool rather than a real postal standard: it is useful for testing scanner/printer alignment against a known bar-height pattern, or for illustrating how a 4-state postal symbology's bars actually work, without needing a real, valid postal payload to demonstrate it.

Example

See the live preview above, seeded with a bwip-js-verified valid value.

Size guidance

Symbol width grows directly with character count -- each of D/A/F/T uses the same fixed module width, only the bar's own bottom position and height vary.

Troubleshooting

A rejected value usually means it contains a character other than D, A, F, or T (including lowercase letters, which are rejected -- only uppercase is accepted).

Related formats

Related formats: the separately-covered Australia Post, Royal Mail, Identcode, and Leitcode generators (real 4-state postal symbologies that use this same underlying bar mechanism to encode an actual postal message).

FAQ

What do the letters D, A, F, and T mean?

They name the four bar states shared by every 4-state postal symbology: D (Descender, bottom-aligned short bar), A (Ascender, top-aligned short bar), F (Full, full-height bar), and T (Tracker, a short bar centered in the middle).

Can I encode a real postal message with DAFT?

No -- DAFT only draws the literal bar-height pattern you type; it has no postal Application Identifier, checksum, or business structure of its own. For a real postal barcode, use one of the separately-covered postal generators (Australia Post, Royal Mail, Identcode, Leitcode) instead.