There is ^PO ZPL command that you can use print a 180 degree-rotated label:
Once the ^PO command is sent, the setting is retained until another ^PO command is received or the printer is turned off.
You can send it this way before printing any amount of labels:
Software Engineer, Kutir Mobility
Posted on behalf of Zebra Technologies
Thank you for your response.
We gave it a try in our solution in the following manner:
- We have identified code to send raw data to the Zebra printer ( https://support.microsoft.com/en-us/help/138594/howto-send-raw-data-to-a-printer-by-using-the-win32-api) suggested by Robin in this thread https://developer.zebra.com/message/95480#95480
- We have incorporated that code in our solution and used the command suggested by you to set the rotation for the printer
- We also sent extra ZPL commands just to make sure that the orientation command was having the desired result
- For the ZPL commands that we sent, the command to set the orientation was taken into consideration. The orientation was the same for subsequent printings, exactly as you said it would.
- When using the XpsDocumentWriter to print our label, the setting would not be taken into account. More than that, after printing with the XpsDocumentWriter the orientation would be reset to default (even for ZPL commands)
When we instead send a .Net based command for the printer to print in Reverse Landscape or Reverse Portrait, that is not honored.
Have developers succeeded in printing with 180 degree rotation without using direct ZPL commands?
An additional note on the question above.
.Net allows applications that create Print Tickets to customize an XML document that indicates which print options should be used for a particular print job, by using PrintTicket document markup.
This MSDN article documents how to do that:
But this only works if the printer exposes the specific capabilities in question.
Does the ZD620 expose the 180 degree rotation capability in its PrintCapabilities Document Markup?
See section "PrintCapabilities Document Markup" in the MSDN article linked above for details.