When this box is unchecked, all filter controls become inactive. The remainder of this document refers to PostScript output filters as “filters” or “plug-ins. Such data should never be injected into the middle of a sequence of data writes corresponding to the same PSPosition. These code fragments can intercept the PostScript output data stream generated by LaserWriter 8 and add, remove, or modify the data before it is transmitted to the output device. To reduce or eliminate the need to parse data, the parameter posP is also passed in. The remainder of this document will use the phrase “filter output execution” to refer to these parts of a filter’s execution.

Uploader: Medal
Date Added: 27 October 2005
File Size: 63.43 Mb
Operating Systems: Windows NT/2000/XP/2003/2003/7/8/10 MacOS 10/X
Downloads: 11748
Price: Free* [*Free Regsitration Required]

Once the filter is enabled in the Plug-In Preferences panel, LaserWriter 8 calls the exported routines, which control the filter’s user interface. There are a number of laserwriteer that a filter’s psOutputFilterWrite routine might perform on a given call:. Some filters may want to modify the PostScript data passed to them.

This library is only available while the LaserWriter 8 Print Dialog is present. A situation where a filter may see data that is unexpected is when the Download Manager is generating the PostScript output data.

The final phase occurs when the communication channel to the output device is closed and the filter chain is torn down. It is used to store a filter’s private hints collection into the job collection and printer defaults collection.

The user interface programming interface for filters is described in detail in the section User Interface APIs. In addition to enabling and disabling each filter individually, users can disable all filters by unchecking the top-most checkbox labeled Print Time Filters. At this point, a filter’s psOutputFilterPostFlight routine is called to allow the filter to dispose of any memory it allocated during its operation.

A given filter can add zero or more panels. Without any additional information, a filter would have to parse this data to determine its contents. If a filter exports the psOutputFilterPreFlight routine, this routine must return noErr ; otherwise, the filter is not added to the filter chain.

They are not called during filter output execution. The knowledge as to whether the communication channel supports Clean7BitClean8Bitor Binary communication isn’t available until after any query job completes.

This parameter is a pointer to a PSPosition structure containing tagging information that describes this data.

The routines containing ” PrSpecific ” in their name are called for the initially selected printer and again when the user changes from one printer to another in the Print Dialog. These code fragments can intercept the PostScript output data stream generated by LaserWriter 8 and add, remove, or modify the data before it is transmitted to the output device.

Laserwriter Download

Filters must be careful to skip parsing of the data in this situation. Since multiple filters may be contained in a single file and the filter name may have nothing to do with the name of the file containing the filter, the file name containing lazerwriter filter is also displayed. For this reason, it is important to track the ID field appropriately. This process will be described shortly.

There are a number of reasons why the data laswrwriter to a filter might differ from what is normally expected. For example, a filter may not be passed data it normally would be passed because a filter earlier in the chain decided not to write that piece of data. This routine should only be called from a filter’s psOutputFilterWrite routine. The ,aserwriter in the panels menu are listed in three sections. Filter signatures must be unique or else a filter may conflict with another filter with the same signature as described in the section Filter Private Collection Issues.

Laserwriter 8.7 Download

This section describes the User Interface portion of a filter’s API and relates only to the filter’s execution while the Print Dialog box is displayed to the user. The meaning of this order is described in the next section. It is called when the panel menu gets built the first time, and each time the printer is changed and the filter continues to run.

A PostScript output filter must export a psOutputFilterWrite routine in order to be inserted into the chain of output filters.

PostScript Output Filters for LaserWriter

A filter writes data to the next filter in the chain by calling the psWriteNextFilter routine. Filters can set criteria that LaserWriter 8 uses to determine whether to run that filter’s user interface by providing a psPanelSetCriteria routine. This routine allows the 87 to look at the current execution environment to determine whether to continue to run.

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.

A plug-in filter can inspect the laserwiter panel settings and alert the user if any settings are out of the acceptable laserwriteg, then halt any of the events which caused psPanelCheckRange to be called.