(v13) HqnImpose2 FillSpace objective
This page applies to Harlequin v13.1r0 and later; both Harlequin Core and Harlequin MultiRIP
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. MaxHeight
and MaxWidth
are defined in points. All values of Aspect
described above are valid, including /BestFit
. 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 |
| This may be zero if the |
| When calculating the number of pages that will fit on a sheet using the |
$body
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.