~TA - Tear-Off Adjust Position
Moves where the media stops relative to the tear-off bar.
~TA adjusts where the media comes to rest after the printer prints a label, which
decides whether the perforation lines up with the tear bar or the cutter. It moves
paper, not print. Unlike ^LT, it shifts nothing on the label, so a label torn in the
wrong place is its problem and a label printed in the wrong place is not.
Syntax
~TAaSupport
Accepted and skipped, because it configures the printer rather than the label. It cannot change the rendered output, and Labelary skips it too.
This command moves the media and not the printed image, so unlike ^LT it moves no field on the label. The renderer does not parse this command. It reports IGNORED_COMMAND at info severity, which does not reach X-Warnings. Labelary is also silent, so the rendered label is identical in both engines. — not pinned by a test
Labelary renders this command.
Parameters
aAdjustmentoptional · dotsHow far the printer moves the rest position. Positive values feed further out; negative values stop earlier.
- Default
- the previously set value, or 0
- Accepted range
- -120 to 120 dots
- Invalid value
- not documented, and we have not measured it. The renderer does not parse or measure this command.
- Test coverage
- No test at the minimum, maximum or one step outside the range.
Behavior
The unit is a dot row. The guide notes that on a 600 dpi printer the step size doubles, so the same number moves the media twice as far.
The guide is strict about the way the number is written. The format is ~TA###, a
three-digit value, and the printer ignores a value with fewer than three characters. It
also ignores a missing or invalid value, and leaves the last saved position in place.
Labelary documents a plain number instead, and uses ~TA50 as its own example. Neither
renderer moves media, so nothing observable turns on this, but a format destined for
hardware must write ~TA050.
The renderer does not parse this command. It reports IGNORED_COMMAND at info severity,
which does not reach X-Warnings. Labelary is also silent, so the rendered label is
identical in both engines.
Differences from the specification
Labelary against the ZPL II guide
Where Labelary — our compatibility target — behaves differently from the printed specification.
- The guide (45541L-004, page 273) writes the format as
~TA###and requires a three-digit value. It states that the printer ignores the command when the value has fewer than three characters, so a printer ignores~TA50. Labelary documents a plain number between -120 and 120, and uses~TA50as its own example. Neither renderer moves media, so the difference is invisible. Write~TA050when the format goes to hardware. — not pinned by a test
Example
The rest position moved 50 dot rows further out, written as three digits:
~TA050
^XA
^FO50,50^A0N,40,40^FDTear 50 dots later^FS
^XZ
Related commands
^LTLabel TopShifts every field up or down by a small number of dot rows.~JSChange Backfeed SequenceThis command sets how far the printer pulls the media back, and whether before or after the print.^MMPrint ModeThis command selects what happens to a label after the print: tear-off, peel-off, rewind, cut or applicator.^XBSuppress BackfeedStops the label backfeed after the printer prints.