HqnImpose2 FillSpace objectives
This page applies to Harlequin v13.1r0 and later; both Harlequin Core and Harlequin MultiRIP
FillSpace objective
A film area is defined by the values of /MaxWidth
and /MaxHeight
(less the margins set by FilmLeft
etc.), and as many pages as possible are fitted into that area. All standard values of Aspect
are valid, including /BestFit
.
/MaxWidth, /MaxHeight | These are defined in points. /MaxWidth may be zero if the /OneColumn strategy is used, or /MaxHeight may be zero if the /OneRow Strategy is used. These effectively define the maximum dimension in that direction to be unlimited. |
/SheetSlop | When calculating the number of pages that will fit on a sheet using the FillSpace objective, and BestFit handling for NxN Objectives the MaxWidth and MaxHeight values will be increased by the value of SheetSlop . Note that this value is defined in device pixels, rather than the points that are used for most other dimensions. Default value = 35 pixels. |
Three strategies are available:
| As many pages will be fitted across the film as possible and a single row of those pages will be exposed. When used in conjunction with the |
| As many pages will be fitted down the film as possible and a single column of those pages will be exposed. When used in conjunction with the |
| As many pages will be fitted into the film on a regular grid as possible. When used in conjunction with the |
Example use:
/mm { 72. mul 25.4 div } bind def
<<
/Objective /FillSpace
/MaxWidth 500 mm
/MaxHeight 300 mm
>> /HqnImpose2 /ProcSet findresource /HqnInitImpose get exec
PackDrum objective
/PackDrum
is a special case of /FillSpace
originally written for use on part-drum film imagers (that is, where the fast scan direction is along the film roll, but the device is capable of imaging less than a whole drum-full of material at a time). It is suitable for any case where the height of the raster required is limited by the width of the substrate loaded, and where it is optimal to fit as many pages onto a single drum-full of substrate as possible to reduce material and time wastage.
MaxHeight
is calculated from the MediaHeight
. MaxWidth
is taken from the maximum scan line length. This may be defined as /DrumCircumference
in the dictionary passed to HqnInitImpose
(in points); if it is not, then the value will be calculated from MediaWidth
. For more information see Media sizes for objectives .
The same strategies are available for PackDrum
as for FillSpace
, and the default strategy is MaxPages
. Example use:
/mm { 72. mul 25.4 div } bind def
<<
/Objective /PackDrum
/DrumCircumference 500 mm
>> /HqnImpose2 /ProcSet findresource /HqnInitImpose get exec
FillWidth objective
This is another special case variant on /FillSpace
. This time it is designed for roll-fed devices where it will fit as many pages across the media as possible and thereby reduce film wastage. MaxWidth
is taken from the MediaWidth
(see Media sizes for objectives ) and MaxHeight
is set to zero (unlimited). No strategies are supported (in effect /OneRow
is enforced), and the default aspect is /BestFit
.
Example use:
<<
/Objective /FillWidth
>> /HqnImpose2 /ProcSet findresource /HqnInitImpose get exec
FillFilm objective
Yet another special case of /FillSpace
. Here MaxWidth
is set to be the MediaWidth
and MaxHeight
is set to MediaHeight
. For information see Media sizes for objectives .
Example use:
<<
/Objective /FillFilm
>> /HqnImpose2 /ProcSet findresource /HqnInitImpose get exec
Media sizes for objectives
Several of the FillSpace Objectives derive maximum sheet dimensions from media width and height. Those values are obtained from the PageSize
property of the selected InputAttributes
dictionary at the time when HqnInitImpose
is called. If there is no selected InputAttributes
dictionary, the PageSize
from the page device is used instead.
In Harlequin MultiRIP the InputAttributes
dictionary is based on information from the plugin, the Page Size
selected on the Page Setup
dialog and/or the cassette width, depending on the plugin type selected.
In Harlequin Core, however, there is always a selected InputAttributes
dictionary and, by default, that is constructed with a single entry using a US Letter PageSize
, which is rarely useful. As a result, the PackDrum
, FillWidth
, and FillFilm
objectives may not deliver the expected result in HHR. If you are not specifying InputAttributes
for other reasons, you will probably find it more effective to use the FillSpace
objective and specify MaxWidth
and/or MaxHeight
explicitly.