RFC: New Driver Rating/Information Attributes

Michael Sweet mike at easysw.com
Thu Jan 25 06:06:43 PST 2007


All,

Here is a draft proposal for adding new PPD attributes that can be
used to recommend a particular driver to the user.  This would replace
the current convention of static "recommended" strings added to the
end of the NickName field.

Comments?



DRIVER RATING ATTRIBUTES
------------------------

The new driver rating attributes would track the following values:

     1. The author of the driver.
     2. The type of driver - PostScript, Foomatic, OPVP, CUPS raster.
     3. The percentage of printer features/capabilities that are
        supported.
     4. The print speed (milliseconds per page) when printing a sample
        text page (probably lorum ipsum style text to fill the page at
        10 cpi/6 lpi) in black at the maximum resolution
     5. The print speed when printing a sample PDF file containing a
        mix of text and "business" graphics (bar charts, etc.) in
        color if supported by the printer and at the maximum resolution
     6. The print speed when printing a 2560x2048 photograph in
        color if supported by the printer and at the maximum resolution

The following describes the attributes used to contain this information
in the PPD file.  IPP attribute names and data types that would be
returned in the CUPS_GET_PPDS response are shown after the attribute
names.


cupsDriverAuthor (ppd-author text)
----------------------------------

     *cupsDriverAuthor: "developer of driver"

This string attribute describes the developer of the driver.  For
PostScript printers, this is normally the same as the Manufacturer
attribute.  If not present, cupsAuthor is assumed to be the
Manufacturer for PostScript drivers and "Unknown" for other types.

Examples:

     *% HP PostScript printer driver without filters
     *cupsDriverAuthor: "HP"

     *% ALPS printer driver using Foomatic
     *cupsDriverAuthor: "Masakazu Higaki"

     *% Gutenprint printer driver
     *cupsDriverAuthor: "Gutenprint"



cupsDriverType (ppd-type keyword)
---------------------------------

     *cupsDriverType: "driver-type"

This string attribute defines the type of driver, currently one of
the following:

     - PostScript; a driver that sends PostScript to the device - this
       is the default for PPD files without cupsFilter attributes
     - CUPS-Raster; a driver that converts CUPS raster data to the
       device's native format - this is the default for PPD files
       listing an application/vnd.cups-raster filter
     - Foomatic; a driver that uses the foomatic-rip wrapper script,
       possibly using a Ghostscript driver, to convert to the device's
       native format
     - OPVP; a driver that uses the Open Printing Vector Protocol to
       send print data to the device
     - Unknown; a driver that uses some other filter technology - this
       is the default if the driver is not PostScript or CUPS-Raster

Examples:

     *% PostScript printer
     *cupsDriverType: "PostScript"

     *% CUPS raster driver
     *cupsDriverType: "CUPS-Raster"

     *% Foomatic driver
     *cupsDriverType: "Foomatic"

     *% OPVP driver
     *cupsDriverType: "OPVP"

     *% Other type of driver
     *cupsDriverType: "Unknown"



cupsDriverRating (ppd-rating integer(0:100))
--------------------------------------------

     *cupsDriverRating: percentage

This integer attribute specifies the percentage of device printing
features and capabilities that are supported by the driver.  For
example, if a device supports 2 color modes (black and CMYK),
4 resolutions (300, 600, 1200x600, 1200), 3 page sizes (a4, letter,
legal), and 2 paper trays (cassette and manual feed), for a total
of 11 features and capabilities.  If the driver only supports 2
of the solutions (for a total of 9 supported features and
capabilities), the driver rating would be 81 (100 * 9 / 11).

Examples:

     *cupsDriverRating: 81


cupsDriverSpeed (ppd-speed 1setOf integer)
------------------------------------------

     *cupsDriverSpeed: "text-msec graphics-msec photo-msec"

This attribute provides the time required, in milliseconds, to print
the sample text, graphics, and photo pages on the printer in the
highest quality (color) printing mode supported by the driver.

-- 
______________________________________________________________________
Michael Sweet, Easy Software Products           mike at easysw dot com
Internet Printing and Document Software          http://www.easysw.com




More information about the cups mailing list