Skip to main content
Skip table of contents

(v13) Pluggable font module interfaces

This page applies to Harlequin v13.1r0 and later; both Harlequin Core and Harlequin MultiRIP

The module interface comprises:


Optional . Called during RIP boot or during module registration if the RIP has booted. This allows the module to initialize and allocate global workspace that will be shared between its instances.


Optional . Called during RIP shutdown, the module is expected to free its global workspace. If not present, PFIN will free memory on the module’s behalf.


Optional . Called to initialize a module instance, during RIP boot, or on demand in response to a request to a previously unknown instance. This allows the module instance to initialize, allocate workspace, examine its resources and optionally declare any fonts it supplies. See (v13) PFIN interfaces for more information on alloc and define .


Optional. Called during instance shutdown, or suspension in low memory situations. When being suspended, the instance should free as much memory as possible, but will be resumed by the RIP when another glyph is required. When being shutdown, the instance should free all its memory and undefine its fonts. See (v13) PFIN interfaces for more information on free and undefine.


Optional. The RIP will pass a configuration dictionary PostScript language object to the instance if one is present in the dictionary passed to setpfinparams. The instance can respond appropriately, including by defining fonts. This may be called whenever the configuration changes. See (v13) PFIN interfaces for more information on define, undefine.


Optional . Immediately prior to a resourceforall on the /Font or /CIDFont categories, or at the point that findresource has failed to find a font, the instance is given a last-chance opportunity to define fonts that it had been withholding for performance reasons. In the case of findresource , the required font name is passed and the module may define that font if it can source it. In the case of resourceforall no font name is given so the module must define all fonts it wishes to appear. See (v13) PFIN interfaces for more information on define.


Required. Return the width for the given character in the given font.


Required. Return a hinted (if so desired) path representation or prerendered bit image of the given character. The RIP indicates if it would prefer a path or bitmap representation, but the module instance can usually decide which is most appropriate. See (v13) PFIN interfaces for more information on move, line, curve and bitimage.


JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.