(v13) Basic usage of HqnImpose2
This page applies to Harlequin v13.1r0 and later; both Harlequin Core and Harlequin MultiRIP.
The procset is called most often by a page feature in a GUI version of the RIP (that is, a version with dialog boxes and menus) or by a configuration file in a command-line version. Such a file probably resembles the following (individual keys are explained below):
currentglobal true setglobal
<<
/Objective /FillFilm
/CropMarks true
>>
exch setglobal
/HqnImpose2 /ProcSet findresource /HqnInitImpose get exec
In this example, the procedure HqnInitImpose
is called with a dictionary containing variable key / value pairs on the stack. This example uses the standard objective /FillFilm
, adds crop and register marks, page labels, and step wedges to each page (/CropMarks is true
); design the output to pack as many pages as possible into the area set by the default page size on the RIP’s Page Setup dialog box. To create alternative files from this example, only the variable information (between the <<
and >>
) likely needs to be changed.
In this example the configuration dictionary is defined in global VM. Before Harlequin v13.2 that was required if the configuration included any composite objects (arrays (including procedures), dictionaries or strings). From v13.2 it is still recommended, but not required, to define the configuration in global VM. Loading the HqnImpose2
procset and the call to HqnInitImpose
must be done in local VM. If a configuration for Harlequin Core is supplied in JSON the VM management is handled automatically.
The HqnInitImpose
procedure must normally be called at save level 2 or lower (that is, not within a save/restore
context within the job itself). If it is necessary to call from within the job, AllowSaveLevel
must be set.