Using a ZD620 printer we are attempting to programmatically print a label that has a 180 degree rotation.
We are doing this via the .NET Framework, specifically via a PrintTicket object (PrintTicket Class (System.Printing) | Microsoft Docs ).
To print a 180 degree-rotated label, we ave attempted to use the PageOrientation property of the print ticket object.
However, it seems that the ZD620 does not offer a PageOrientation that allows a 180 degree rotation. When we retrieve the PrintCapabilities collection from the PrintQueue (PrintQueue.GetPrintCapabilities Method (System.Printing) | Microsoft Docs ), the PageOrientationCapability collection contains only the Landscape and Portrait values of the PageOrientation (PageOrientation Enum (System.Printing) | Microsoft Docs ). The ReverseLandscape and ReversePortrait values are not returned.
On the other hand, in printer settings we see that the printer supports 180 degree rotation.
And we can manually set it to perform such a rotation in the printer settings within the Windows control panel, after which the rotation is successful.
But we need to be able to perform this action programmatically based on a dynamic selection from our user, if there's a way to do it without resorting to directly writing to the printer using ZPL ... unless we can send the printer a specific command to rotate in addition to our .Net-based printing.
Is there a solution for this? We're wondering if somehow the printer isn't exposing the 180 degree rotation capability to the operating system?