When inserting data into the PostScript output stream, it is important that the PSPosition used to tag the data be uniquely identified; otherwise, filters later in the chain and other portions of the output communication code can confuse newly inserted data with other data. Failure to add either or both of these collection items is equivalent to saying that these criteria are not important for that filter. Filters aren’t appropriate for computationally intensive tasks or for tasks which require gathering large amounts of data over a network connection. The returned print record should be considered read-only. At this point, a filter’s psOutputFilterPreFlight routine is called to allow a filter to initialize itself. The order of the filters in this panel can be altered by dragging the “gripper” at the left of the filter name. Filters must be careful to skip parsing of the data in this situation.

Uploader: Zolorn
Date Added: 28 April 2013
File Size: 34.36 Mb
Operating Systems: Windows NT/2000/XP/2003/2003/7/8/10 MacOS 10/X
Downloads: 29221
Price: Free* [*Free Regsitration Required]

Laserwriter Download

The meaning laserwriher this order is described in the next section. Doing writes in this fashion allows software clients looking at the ID field to notice when the PSPosition data may have changed without having to look at any other fields in the structure. The section field is of type PSSection and identifies what “major” part of the job is in progress. The filter can examine the conditions it is running under and determine whether LaserWriter 8 should display its user interface.

The first two are the kPluginInfoType resource and vers resource. If a filter exports a psOutputFilterPreFlight routine, it is called as the filter chain is created for a print job, allowing the filter to initialize itself.


Laserwriter 8.7 Download

It is likely that the features supported by a PostScript output filter will have a user interface associated with those features. Filters must always be careful to pass any errors returned from their filter writes back to their caller. The first section laserwrier those panels which are built into LaserWriter 8.

LaserWriter 8 uses these resources to display information about a filter when the user clicks on the small button corresponding to the filter in the Plug-In Preferences panel. It is not a required routine, although it is likely that most filters will implement and export laseewriter routine. Panel-specific routines that are called for each panel, independent of the panel’s visibility: The phrase “filter output routines” refers to these routines.

The filter’s user interface can consist of one or more panels with functionality similar to the built-in panels already present, including the ability to save ,aserwriter settings for each printer. Any filter that allocates memory during laserwritre preflight routine should export this routine. Note that the type referred to here is not the Finder type but the field of the kPluginResourceInfoType resource.

A PostScript output filter must export a psOutputFilterWrite routine in order to be inserted into the chain of output filters. It is recommended that these plug-ins have a Finder type of ‘bird’ since files of this type are autorouted on most recent system configurations.

At this point, a filter’s psOutputFilterPreFlight routine is called to allow a filter to initialize itself. Filters must be careful to skip parsing of the data in this situation.

The PostScript data generated by the Download Manager and its plug-ins lsaerwriter differ significantly from that generated by LaserWriter 8 for standard print jobs. Before making the panel visible, LaserWriter 8 calls psPanelInitallowing the filter to initialize its user interface settings to match those reflected by the job and printer defaults. It is also called each time a new printer is selected while the panel is visible.


There are no constraints on the library name beyond those imposed by the Code Fragment Manager. The user interface code uses this signature to ensure that a filter’s UI settings are saved as a unique collection item in the jobInfo collection.

PostScript Output Filters for LaserWriter

Clearly, filters must carefully handle the data written to them or else the print laaerwriter will produce incorrect results. This routine is defined as:. If a filter wants to omit PostScript from the stream, it should not call psWriteNextFilter with that data but should instead return noErr.

The knowledge as to whether the communication channel supports Clean7BitClean8Bitor Binary communication isn’t available until after any query job completes. The prototype for this routine is:.

The call to psOutputFilterPreFlight can be used for several purposes. See the section Printing Without a Print Dialog which describes how this can happen. The filter information dialog contains the name of the filter as contained in the kPluginResourceInfoType resource described in the section Filter Plug-In Requirements above.

As with all of the LaserWriter 8 settings in the Print Dialog, the settings in this panel are saved on a printer-by-printer basis. The prototype for the psPanelSetCriteria routine is:.