XORIGIN, YORIGIN

Updated December 2011

//XORIGIN, ###

//YORIGIN, ###

These commands define the minimum offset, in twips, from the top left physical corner of the paper to the 0,0 print position.

A-Shell and APEX will operate on the LARGER of the (a) XORIGIN,YORIGIN values and (b) the physical margin as defined by the printer driver. So in other words, if you set them each to 360, you should get at least 1/4" top/left margin, even on printers (like some image printers, PDF printers, and even APEX itself) that don't have any built-in physical margin limitation. This can be very useful in reducing the alignment fluctuations between different printer models caused by differing hardware paper margins.

While similar to the XOFFSET/YOFFSET commands, these differ in two important ways: First, they affect everything on the page, including images. Second, they interact with the physical margin of the printer in such a way as to eliminate the minor differences in physical margins between printers, thus improving device independence when precise positioning on the page is important. To fully achieve that benefit, you should set the XORIGIN and YORIGIN values to be at least as large as the largest physical margin on any printer you expect to print to, because the effective (0,0) point will be set to the larger of the physical margin and the XORIGIN/YORIGIN specification. In most cases, 400 twips (slightly more than 1/4") should be sufficient.

See the forum discussion Generating Forms on Demand for a look at how the XORIGIN, YORIGIN, XOFFSET and YOFFSET commands help with alignment and printer independence.

XORIGIN and YORIGIN are among the printer commands that may be used both in the printer init file and in reports themselves as GDI printing directives. However, since the benefits of standardizing the origin point are probably not specific to a single document or even a single printer, it generally makes more sense to use these commands in the printer init file(s).

These directives must appear before any commands or text that generate printable output. As mentioned above, these directives have a Printer Init File Equivalent.

History

2012 June, A-Shell 6.0.1253:  Changed "these directives must appear in first eight lines" to "...before any printable output."

2011 January, A-Shell 6.0.1202:  Added to GDI Printing Directives.