zpl.tools
Media and sensors

~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

~TAa

Support

Recognised, deliberately skippedparsed: none · state: none · rendered: none

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 · dots

How 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 ~TA50 as its own example. Neither renderer moves media, so the difference is invisible. Write ~TA050 when 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

Open in viewer

  • ^LT Label TopShifts every field up or down by a small number of dot rows.
  • ~JS Change Backfeed SequenceThis command sets how far the printer pulls the media back, and whether before or after the print.
  • ^MM Print ModeThis command selects what happens to a label after the print: tear-off, peel-off, rewind, cut or applicator.
  • ^XB Suppress BackfeedStops the label backfeed after the printer prints.