Modular Printer Driver Architecture for Vendor-Specific PDL Output
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing universal printer drivers struggle to support printing apparatuses from different vendors due to the variety of page description languages (PDL) used, leading to errors or improper data output, and common printer drivers compliant with protocols like IPP fail to utilize vendor-specific functions effectively.
Innovation Solution
An information processing apparatus with a printer driver configured to generate print commands compliant with a predetermined protocol, along with extension modules that can generate commands for different protocols, a storage unit to associate these modules with the printer driver, and an output unit to process print data using the indicated modules, enabling support for multiple vendor-specific PDLs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a universal printer driver is used to support multiple printing apparatuses, then the number of supported devices increases, but the ability to properly handle vendor-specific PDL formats deteriorates
Solution Approach 1:
The printer driver is segmented into a universal driver component and separate extension modules. Each extension module handles a specific vendor-specific PDL format, allowing the system to maintain a single universal driver while supporting multiple specialized formats through modular additions.
Solution Approach 2:
The universal printer driver is designed to work with multiple printing apparatuses from different vendors through a common interface. Extension modules are added to provide vendor-specific functionality, enabling the driver to serve multiple purposes - both universal compatibility and specialized format handling.
2Adaptability or versatility
If a common printer driver compliant with IPP protocol is used, then vendor neutrality is achieved, but vendor-specific functions cannot be utilized
Solution Approach 1:
Extension modules act as intermediaries between the universal IPP-compliant printer driver and vendor-specific printing functions. These modules translate between the standard IPP protocol and vendor-specific PDL formats, enabling both vendor neutrality and access to specialized functions.
Solution Approach 2:
The printer driver system combines a universal IPP-compliant driver with vendor-specific extension modules. This composite structure integrates the benefits of both approaches - the standardization and vendor neutrality of IPP with the specialized capabilities of vendor-specific PDL formats.
3Reliability
If multiple separate printer drivers are used for different vendors, then vendor-specific functionality is maximized, but system complexity increases
Solution Approach 1:
Multiple vendor-specific printer drivers are merged into a single universal printer driver through the extension module architecture. Instead of maintaining separate driver installations for each vendor, the system combines them into one unified driver that dynamically loads appropriate extension modules based on the target printing apparatus.
Data Source
AI summary
An information processing apparatus includes a printer driver configured to generate a print command compliant with a predetermined printing protocol based on print data obtained from a data generation application, one or more extension modules configured to generate a print command compliant with another printing protocol different from the predetermined printing protocol, a storage unit configured to store information associating the one or more extension modules to be used for generating the print command compliant with said another printing protocol with the printer driver, and an output unit configured to output the print command compliant with said another printing protocol, the print command being obtained through processing of the print data obtained by the printer driver, and the processing being performed by the one or more modules indicated by the information.


