TITFReader Class
Definition
Implements decoding of the ITF format, or Interleaved Two of Five.
This Reader will scan ITF barcodes of certain lengths only. At the moment it reads length 6, 8, 10, 12, 14, 16, 18, 20, 24, 44 and 48 as these have appeared "in the wild". Not all lengths are scanned, especially shorter ones, to avoid false positives. This in turn is due to a lack of required checksum function.
The checksum is optional and is not applied by this Reader. The consumer of the decoded value will have to apply a checksum if required.
http://en.wikipedia.org/wiki/Interleaved_2_of_5 is a great reference for Interleaved 2 of 5 information.
type TITFReader = class(TOneDReader)
- Inheritance
Constants
Methods
| RecordPatternInReverse(IBitArray, Integer, TArray<Integer>) |
Records the pattern in reverse. (Inherited from TOneDReader) |
| decode(TBinaryBitmap, TDictionary<TDecodeHintType,TObject>) |
Locates and decodes a barcode in some format within an image. This method also accepts hints, each possibly associated to some data, which may help the implementation decode. Note that we don't try rotation without the try harder flag, even if rotation was supported. (Inherited from TOneDReader) |
| decodeDigit(TArray<Integer>, Integer) | |
| decodeEnd(IBitArray) | |
| decodeMiddle(IBitArray, Integer, Integer, TStringBuilder) | |
| decodeRow(Integer, IBitArray, TDictionary<TDecodeHintType,TObject>) |
Attempts to decode a one-dimensional barcode format given a single row of an image. |
| decodeStart(IBitArray) | |
| findGuardPattern(IBitArray, Integer, TOneDPattern) | |
| patternMatchVariance(TArray<Integer>, TOneDPattern, Integer) |
Determines how closely a set of observed counts of runs of black/white values matches a given target pattern. This is reported as the ratio of the total variance from the expected pattern proportions across all pattern elements, to the length of the pattern. (Inherited from TOneDReader) |
| recordPattern(IBitArray, Integer, TArray<Integer>) |
Records the size of successive runs of white and black pixels in a row, starting at a given point. The values are recorded in the given array, and the number of runs recorded is equal to the size of the array. If the row starts on a white pixel at the given start point, then the first count recorded is the run of white pixels starting from that point; likewise it is the count of a run of black pixels if the row begin on a black pixels at that point. (Inherited from TOneDReader) |
| reset |
Resets any internal state the implementation has after a decode, to prepare it for reuse. (Inherited from TOneDReader) |
| skipWhiteSpace(IBitArray) | |
| validateQuietZone(IBitArray, Integer) |