Setting up the output page size
This page applies to Harlequin v13.1r0 and later; both Harlequin Core and Harlequin MultiRIP.
The output page needs to be set up so that it is big enough to accommodate all the imposed input pages. This can be done in two ways:
- By explicitly setting a page size (for example in the Page Setup dialog in the GUI versions) and ensuring jobs cannot change it.
This requires that any calls to setpagedevice
within a job which set the PageSize
, or reorient the page are ignored (which means the job cannot change page size—it is determined exclusively by the layout), or more flexibly by catching and recording the page size requested by the job, and replacing it by the constant output page size.
Ignoring setpagedevice
could be done by redefining it. However, it is usually easier to set the Override
page device key, a RIP extension. The value for Override
is a number; if a subsequent setpagedevice
operand dictionary at the same (or a deeper) save level does not have a larger number, the call is ignored. For example:
<< /Override 1 >> setpagedevice
Catching the requested page size requires the use of the RIP extension SensePageDevice
, a page device key. The extended example in Extended example: packing a film illustrates this; the full definition of SensePageDevice
is in Configuring the page device.
- By scaling the page up to get some multiple of the job’s requested page size, and then scaling each input page back down again.
The easiest way to do this is to use the page device key Scaling
, a RIP extension. The value for Scaling
is an array of two numbers, the x and y scale factors by which the page and everything on it are scaled. The example in Imposition example: 2 across illustrates this.