摘要:
An implementation of print job processing includes a system which comprises a spooler configured to receive a print job and one or more bundles of filters for rendering the print job into a format recognizable by a print device. The system can further include a sub-system configured to act as a communication intermediary such that the spooler does not need to directly communicate with the one or more bundles. For instance, the sub-system may include a routing component configured to facilitate routing individual print jobs from the spooler to an appropriate individual bundle without the spooler needing to directly communicate with the bundle.
摘要:
The described systems and methods are directed at enabling two filters to pass data between them in an efficient manner. In one aspect, an interface is provided to a filter for writing data associated with a file. The interface enables the filter to write data to a virtual file container simulated by the interface. The interface also enables another filter to read the data from the simulated file container. In this manner, an actual file container stored in a disk drive may not have to be created to pass data between filters.
摘要:
Spooling strategies are described for producing job information that conforms to a hierarchical structure, and then storing the job information in a spool storage. The job information is then retrieved from the spool storage and consumed. The structured job information includes a multi-level hierarchy of nodes, including a job level that represents the entire job, a document level that represents a document to be processed within the job; a rendition level that represents a rendition of the document to be processed; and a page level that represents a page associated with the rendition. The hierarchical structure can also include resource nodes and metadata nodes associated with any level of the hierarchy, respectively representing resources and metadata. The hierarchy can optionally be composed using one or more selection and sequence parts. Program logic implements the production and consumption of the job information by providing a collection of logic modules for selectively adding and retrieving elements to the hierarchically structure. The program logic also provides logic for enumerating the contents of the job information and for signaling the occurrence of various events associated with the processing of the job information.
摘要:
Spooling strategies are described for producing job information that conforms to a hierarchical structure, and then storing the job information in a spool storage. The job information is then retrieved from the spool storage and consumed. The structured job information includes a multi-level hierarchy of nodes, including a job level that represents the entire job, a document level that represents a document to be processed within the job; a rendition level that represents a rendition of the document to be processed; and a page level that represents a page associated with the rendition. The hierarchical structure can also include resource nodes and metadata nodes associated with any level of the hierarchy, respectively representing resources and metadata. The hierarchy can optionally be composed using one or more selection and sequence parts. Program logic implements the production and consumption of the job information by providing a collection of logic modules for selectively adding and retrieving elements to the hierarchically structure. The program logic also provides logic for enumerating the contents of the job information and for signaling the occurrence of various events associated with the processing of the job information.
摘要:
Spooling strategies are described for producing job information that conforms to a hierarchical structure, and then storing the job information in a spool storage. The job information is then retrieved from the spool storage and consumed. The structured job information includes a multi-level hierarchy of nodes, including a job level that represents the entire job, a document level that represents a document to be processed within the job; a rendition level that represents a rendition of the document to be processed; and a page level that represents a page associated with the rendition. The hierarchical structure can also include resource nodes and metadata nodes associated with any level of the hierarchy, respectively representing resources and metadata. The hierarchy can optionally be composed using one or more selection and sequence parts. Program logic implements the production and consumption of the job information by providing a collection of logic modules for selectively adding and retrieving elements to the hierarchically structure. The program logic also provides logic for enumerating the contents of the job information and for signaling the occurrence of various events associated with the processing of the job information.
摘要:
In a described implementation, a production device, such as a computer, produces a shared resources container that includes shareable resources. Each resource of the shared resources container includes a part name and corresponding data. The production device downloads the shared resources container to a utilization device. The production device also formulates a job container, such as a print job. The production device analyzes resource usage of the job container during processing thereof. If a resource relevant to the job container is included in the shared resources container, the resource is excluded from the job container in lieu of a resource reference that is insert therefor. The production device also downloads the job container to the utilization device. At the utilization device, the job container is processed using the resource reference. Specifically, the resource reference is used to retrieve the associated resource from the shared resources container.
摘要:
A hierarchical spooling data structure includes a plurality of nodes. In accordance with certain aspects, the plurality of nodes include at least four nodes: a first node representing a fixed page of the job; a second node representing a fixed document of the job, the second node including a reference to the first node; a third node containing data representing a fixed sequence of documents of the job, the third node including a reference to the second node; and a fourth node containing data representing a root of the job, the fourth node including a reference to the third node.
摘要:
The described systems and methods are directed at converting a file with complex elements so that a legacy utilization device, such as a legacy printer, can properly process the file. The described systems may include a converter module with a modular filter pipeline. The converter module may identify elements with complex features in a file. Simpler features that approximate the complex features are determined. The identified elements in the file may be replaced with elements having the simpler features.
摘要:
Notification mechanisms for use in connection with print systems are described. In one embodiment, a notification mechanism extends from a printing application to the spooler, from the spooler to a hosting process, and back to the spooler. The notification mechanism can allow interested applications, such as print user interfaces, to register to receive updates on the progress of a print job. The notification mechanism provides a very rich and robust mechanism through which notifications can be generated and received.
摘要:
Techniques are provided for performing font subsetting. One or more font subsetting parameters are received. The one or more font subsetting parameters indicate a granularity level for which font subsetting is performed for portions of a data container. The font subsetting parameters indicate a font subsetting granularity level other than an entire document associated with the data container. A first portion of the data container is determined in accordance with the font subsetting granularity level. A subset of font data for at least one font family is determined in accordance with what font data for the at least one font family is actually used by the first portion. The subset of font data is embedded in an output for a consumer.