^PH / ~PH - Slew to Home Position
Feeds one blank label.
^PH feeds one blank label through the printer, which leaves a separator
between print runs or parks the media at the next label. It takes no arguments.
The blank label is a label. The renderer returns it as a page of its own, so a
format with ^PH returns one page more than the same format without it.
Syntax
^PHAlso accepted with the other prefix: ~PH.
Support
Every documented parameter renders the same output Labelary produces.
The renderer feeds the slewed blank label as an output page ahead of the format that carries the command, wherever inside the format the command sits, and counts that page in X-Total-Count. A second ^PH in one format feeds no second page. A ^PQ in the same format replicates the label alone, so ^PH with ^PQ3 gives four pages. A format that draws nothing still feeds the page its ^PH asked for, and ~PH sent with no format at all feeds one page on its own (all measured 2026-08-15). — not pinned by a test
Labelary renders this command.
Parameters
^PH / ~PH takes no arguments.
Behavior
The two prefixes differ only in timing on hardware. In the guide, ^PH feeds
its blank label after the current format prints, and ~PH after the format in
progress finishes. A render has no media, so both give the same page.
The order is surprising.
^XA^PH^FO50,50^A0N,40,40^FDhi^FS^XZ returns X-Total-Count: 2 with the blank
page first. A ^PH after the field does not change that order. Page index
0 is the blank page; the label is at index 1.
One ^PH feeds one page. A second ^PH in the same format feeds nothing more.
Each later format with its own ^PH feeds a page of its own. ^PQ replicates
the label alone, so ^XA^PH^PQ3…^XZ returns four pages: the blank one, then
three copies.
A format that draws nothing still feeds the page its ^PH asked for. ~PH
with no format is one blank page on its own. Labelary agrees on every count
here (measured 2026-08-15).
Known issues
Differences from the specification
Labelary against the ZPL II guide
Where Labelary — our compatibility target — behaves differently from the printed specification.
- Labelary returns the slewed label as a page of its own, ahead of the format:
^XA^PH^FO50,50^A0N,40,40^FDhi^FS^XZgivesX-Total-Count: 2, page 0 blank and page 1 carrying the text (measured 2026-08-15). A^PHafter the field does not change that order. The guide describes the command as a media feed and gives no page count, so the leading page is Labelary's reading. The renderer follows it. — not pinned by a test
Example
Related commands
^PQPrint QuantityPrints the label more than once, the one command here that changes how many pages come back.^PFSlew Dot RowsFeeds the media a number of dot rows and leaves them blank.^PNPresent NowEjects a section of the current label so the operator can take it.