摘要:
A flexible and extensible job processing system is described. A print job processing server manages a plurality of data receivers and printer emulators. Data receivers receive jobs from the print job originators, such as print servers. The printer emulators convert the jobs into a plurality of intermediate output formats, with error, status and control information being available for both storage and reporting back to the print job originator. A user interface client is used to communicate with a plurality of job processing systems. The client can be used to view and possibly edit the job and device information available by the print job originator, configure the printer emulators in the system and the system itself, view the job status and error information, including printer traces, and view and possibly edit the data output of the printer emulator. The system uses the output of the printer emulators for a variety of purposes, such as driving output devices. Configurable actions are taken on the data and status information as they are generated by the printer emulators.
摘要:
A flexible and extensible virtual printer architecture is provided. According to one embodiment, a mechanism is provided for driving multiple heterogeneous presentation devices. A presentation job is received on behalf of a presentation device, the presentation job includes a data stream which contains source data in the form of text, image, graphics, and/or other embedded objects. The source data is then reduced to an intermediate format. Based upon the intermediate format and control information associated with the data stream, device-specific data and device-specific control information are generated for the presentation device. Finally, the presentation device is driven by providing the device-specific data and device-specific control information to the presentation device.
摘要:
A method, apparatus, article of manufacture for transmitting data to a facsimile presentation device is disclosed. In one embodiment of the invention, the method comprises the steps of receiving a presentation job comprising input data associable with at least one input grayscale value, retrieving at least one of a plurality of threshold matrices, each threshold matrix selected to control a grayscale rendering characteristic of the facsimile presentation device associated with the threshold matrix, applying the grayscale values to the retrieved threshold matrix to rasterize the input data, and transmitting the rasterized input data to the facsimile presentation device. This invention can be practiced in several embodiments, and permits the user to select the threshold matrix according to the presentation device and/or a selected presentation quality. In another embodiment of the invention, the apparatus comprises a means for receiving a presentation job having input data associable with at least one input grayscale value, means for retrieving at least one of a plurality of threshold matrices, each threshold matrix selected to control a grayscale rendering characteristic of the facsimile presentation device associated with the threshold matrix, means for applying the grayscale values to the retrieved threshold matrix to rasterize the input data, and means for transmitting the rasterized input data to the facsimile presentation device.
摘要:
A flexible and extensible virtual printer architecture is provided. According to one aspect of the present invention final status associated with a presentation job (e.g., a fax job or a print job) is made available to an output server. One or more host processing threads or processes are spawned for each new presentation job received by the output server. Then, the presentation job is submitted to a presentation device for which the presentation job is destined by way of an instance of a wrapper process that is capable of communicating bi-directionally with the presentation device. After submitting the presentation job, a host job status thread or process waits for status pertaining to the presentation job. Ultimately, a final status associated with the presentation job is received by the wrapper process and the wrapper process reports the final status to the host job status thread or process. According to another aspect of the present invention, job and device status may be reported asynchronously. One or more host processing threads or processes are spawned for each new presentation job received. A first presentation job is submitted to a presentation device for which the presentation job is destined by way of a first instance of a wrapper process that communicates bi-directionally with the presentation device. Subsequently, a second presentation job is submitted to the presentation device by way of a second instance of the wrapper process. A first and second job status thread or process wait for status pertaining to the first and second presentation jobs, respectively. A final status associated with the second presentation job is received by the second instance of the wrapper before a final status associated with the first presentation job is received by the first instance of the wrapper. Then, the second instance of the wrapper process reports the final status to the second job status thread or process.
摘要:
A method, apparatus, and article of manufacture, for transmitting data to facsimile presentation device is disclosed. The method comprises the steps of receiving a presentation job comprising input data associable with at least one input grayscale value, retrieving one of a plurality of stored transforms, each transform for modifying grayscale commands to control a grayscale rendering characteristic of a presentation device associated with the transform, applying the transform to the input grayscale value to produce calibrated grayscale values, and transmitting data representing the calibrated grayscale value to the facsimile presentation device. In one embodiment of the present invention, the step of transmitting the rasterized input data to the presentation device comprises the steps of reducing the rasterized input data to an intermediate format being one of a number of widely supported formats, generating device-specific data and device-specific control information for the presentation device based on the intermediate format and control information associated with the input data, and transmitting the device-specific data and the device-specific control information to the presentation device. This invention can be practiced in several embodiments, and permits the user to select the transform according to the presentation device and/or a selected presentation quality.
摘要:
A flexible and extensible virtual printer architecture is provided. According to one aspect of the present invention final status associated with a presentation job (e.g., a fax job or a print job) is made available to an output server. One or more host processing threads or processes are spawned for each new presentation job received by the output server. Then, the presentation job is submitted to a presentation device for which the presentation job is destined by way of an instance of a wrapper process that is capable of communicating bi-directionally with the presentation device. After submitting the presentation job, a host job status thread or process waits for status pertaining to the presentation job. Ultimately, a final status associated with the presentation job is received by the wrapper process and the wrapper process reports the final status to the host job status thread or process. According to another aspect of the present invention, job and device status may be reported asynchronously. One or more host processing threads or processes are spawned for each new presentation job received. A first presentation job is submitted to a presentation device for which the presentation job is destined by way of a first instance of a wrapper process that communicates bi-directionally with the presentation device. Subsequently, a second presentation job is submitted to the presentation device by way of a second instance of the wrapper process. A first and second job status thread or process wait for status pertaining to the first and second presentation jobs, respectively. A final status associated with the second presentation job is received by the second instance of the wrapper before a final status associated with the first presentation job is received by the first instance of the wrapper. Then, the second instance of the wrapper process reports the final status to the second job status thread or process.
摘要:
A flexible and extensible virtual printer architecture is provided. According to one aspect of the present invention, a mechanism is provided for driving multiple heterogeneous presentation devices. A presentation job is received on behalf of a presentation device, the presentation job includes a data stream which contains source data in the form of text, image, graphics, and/or other embedded objects. The source data is then reduced to an intermediate format. Based upon the intermediate format and control information associated with the data stream, device-specific data and device-specific control information are generated for the presentation device. Finally, the presentation device is driven by providing the device-specific data and device-specific control information to the presentation device. According to another aspect of the present invention, a device-independent data stream corresponding to a presentation job is received and transformed into a data stream which may be used to drive a particular presentation device. The device-independent data stream includes data that is formatted according to a widely supported format. The data is converted to a device dependent format. One or more presentation units capable of containing device-specific data and device-specific control information are generated for the presentation device and the presentation device is driven with a natively supported data stream that includes the one or more presentation units.
摘要:
A command is provided as a means to instruct a printer to pre-rasterize and store presentation objects according to specified presentation parameters. The stored rasterized objects are available to the printer for use during printing when a print job is submitted to the printer which includes a presentation object already rasterized, saving significant processing at print time. The rasterized objects are stored with information identifying the object and the parameters used in the rasterization process and the printer is enabled to identify the appropriate rasterized object for inclusion in the print job. Objects may also be selected by a printer at print time as most closely matching the required parameters and then adjusted as needed at print time to completely conform with the requirements of inclusion in the job. This capability allows the printer to perform trimming-on-the-fly or other real-time operations while enjoying the time-saving benefits of a pre-rasterized object.