Field origin
The field origin is the point a ZPL field is positioned from. With ^FO it is the top-left corner of the field; with ^FT it is the baseline of the text, so the same coordinates put the text in two different places.
已更新 2026-10-20 · Renders made with the OpenZPL engine
Open in the viewerOne coordinate, two meanings
Both fields below use y = 120, and the line is drawn at y = 120. The ^FO text hangs below the line: its top-left corner sits on the point. The ^FT text stands on the line: the point is the left end of its baseline.

^XA ^FO0,120^GB812,1,1^FS ^FO40,120^A0N,50,50^FDFO 40,120^FS ^FT440,120^A0N,50,50^FDFT 440,120^FS ^XZ
That difference is the usual cause of text that is a few dots higher than expected after copying coordinates from another template, or of text pushed off the top of the label when ^FT is used with a small y.
What moves the origin
- ^LH moves the home point every origin is measured from.
- ^FO and ^FT set the origin of the next field.
- Rotation (
R,I,Bin the font or barcode command) turns the field around its origin. - Field blocks (^FB) are laid out from the origin downwards, whatever the alignment.
Field origin and label home
Label home is a single point for the whole label, 0,0 unless ^LH changes it. The field origin is set per field and measured from label home. If every field is shifted by the same amount, fix ^LH; if one field is off, fix its ^FO or ^FT.