(v13) Customizing HqnImpose2
This page applies to Harlequin v13.1r0 and later; both Harlequin Core and Harlequin MultiRIP.
If you wish to add new objectives, tactics, and so on, or to change default values from the procset in such a way that the changes are available to all your calls to HqnInitImpose
, you do not need to edit the procset file itself; this require that you re-edit it with any subsequent revision. You can add items to a file called SW/Usr/CustomImpose2
. When this file is run it must leave a single dictionary on the stack, which is then merged with the values defined in the procset. The merging is hierarchical: if a sub-dictionary is defined within it, the contents of that dictionary are merged with the standard pre-existing dictionary.
Take care in defining all values correctly in global or local VM. The values of the following keys must all be in global VM if they are complex (simple values – numbers and Booleans – are always global). Many of these would normally be supplied as numbers or Booleans, but could also be supplied as procedures that automatically calculates a number when called.
Not all combinations of the use of procedures instead of numbers or Booleans have been tested and should be used with care.
Objective, Strategy, StrategyList Tactic, TacticList
Aspect
Prefix, Suffix
MaxHeight, MaxWidth, MinHeight, MinWidth LimitPageCount
IgnoreJobPageSize PageWidth, PageHeight OffsetX, OffsetY
PanelWidth, PanelHeight, PanelOffsetX, PanelOffsetY ScaleX, ScaleY
ScaleMode, ScaleAspect
ScaleWidth, ScaleHeight, PageScaleX, PageScaleY ScaleSnap
RotatedAngle, ExtraFlip PageList, PageOrder Response, AlwaysRespond PageSizeMatch
ControlStrategy, ControlDepth OversizeStrategy, OversizeCallback ClipOffset
HorCenter, VertCenter ClipPPath, SrcClipPath DrumCircumference
OptimalGutter, MinGutter, MinCropGutter OptHGutter, MinHGutter, MinHCropGutter OptVGutter, MinVGutter, MinVCropGutter FilmLeft, FilmRight, FilmTop, FilmBottom Marks, OEMTextX, OEMTextY, OEMTextZ TextFont, TextSize
CropMarks
CropSpace, CropClearance, Bleed, CropRule LabelSize, LabelFont
ProgressiveSize, ProgressiveFont
ShowCropMarks, ShowRegisterMarks, ShowProgressives ShowSepNames, ShowWedges, ShowJobName HalftonePhase
Duplex, Tumble, RedBookTumble TextEncodings, TextFonts ParseBoundingBox
If you are adding your own new global variables for use in your own procedures, you should define them within a sub-dictionary in the top-level dictionary in CustomImpose2
called GLOBAL
and defined in global VM. They are then stored in HqnImpose2GlobalDict
. The same technique should be used when providing such custom variables through a call to HqnInitImpose
.
If you expect the procset to be used for a large proportion of work on a particular RIP, you may wish to load the procset during RIP boot-up rather than at the start of every job. Code such as this could be added into SW/Sys/HqnOEM
, or as a file by itself in SW/Sys/ExtraStart
:
/HqnImpose2 /ProcSet findresource pop