Raster driver would be a RIP (raster image processor) a bit of software that interprets PostScript output from page layout packages such as InDesign/Quark Xpress. These days most workflow is PDF based but it does rather depend on the kit you have. I would suggest you list your equipment and software (versions too). Hello, where can i find and download SSD M.2 NVMe drivers? My problem is in dysk managment i can see, and manage the SSD, but when i wan to reinstall system on it, it's disapears. Laptop is Lenovo Y520 80WK00EMPB, SSD: Liteon MU X 128GB M.2 PCIe.
This document describes how to develop printer drivers for raster printers. Topics include: printer driver basics, creating new PPD files, using filters, implementing color management, and adding macOS features.
See Also | Programming: Developing PostScript Printer Drivers Programming: Filter and Backend Programming Programming: Introduction to the PPD Compiler Programming: Raster API References: PPD Compiler Driver Information File Reference Specifications: CUPS PPD Extensions |
---|
Contents
Printer Driver Basics
A CUPS raster printer driver consists of a PostScript Printer Description (PPD) file that describes the features and capabilities of the device, one or more filter programs that prepare print data for the device, and zero or more support files for color management, online help, and so forth. The PPD file includes references to all of the filters and support files used by the driver.
Every time a user prints something the scheduler program, cupsd(8), determines the format of the print job and the programs required to convert that job into something the printer understands. CUPS includes filter programs for many common formats, for example to convert Portable Document Format (PDF) files into CUPS raster data. Figure 1 shows the data flow of a typical print job.
The raster filter converts CUPS raster data into a format the printer understands, for example HP-PCL. CUPS includes several sample raster filters supporting standard page description languages (PDLs). Table 1 shows the raster filters that are bundled with CUPS and the languages they support.
Filter | PDLs | ppdc DriverType | ppdc #include file |
---|---|---|---|
rastertoepson | ESC/P, ESC/P2 | epson | epson.h |
rastertoescpx | ESC/P, ESC/P2, EPSON Remote Mode | escp | escp.h |
rastertohp | HP-PCL3, HP-PCL5 | hp | hp.h |
rastertolabel | CPCL, Dymo, EPL1, EPL2, Intellitech PCL, ZPL | label | label.h |
rastertopclx | HP-RTL, HP-PCL3, HP-PCL3GUI, HP-PCL5, HP-PCL5c, HP-PCL5e | pcl | pcl.h |
Drivers Rasteme Taylormade
The optional port monitor handles interface-specific protocol or encoding issues. For example, some raster printers use the 1284.4 communications protocol.
The backend handles communications with the printer, sending print data from the last filter to the printer and relaying back-channel data from the printer to the upstream filters. CUPS includes backend programs for common direct-connect interfaces and network protocols, and you can provide your own backend to support custom interfaces and protocols.
The scheduler also supports a special 'command' file format for sending maintenance commands and status queries to a printer or printer driver. Command print jobs typically use a single command filter program defined in the PPD file to generate the appropriate printer commands and handle any responses from the printer. Figure 2 shows the data flow of a typical command job.
Raster printer drivers must provide their own command filter.
Creating New PPD Files
We recommend using the CUPS PPD compiler, ppdc(1), to create new PPD files since it manages many of the tedious (and error-prone!) details of paper sizes and localization for you. It also allows you to easily support multiple devices from a single source file. For more information see the 'Introduction to the PPD Compiler' document. Listing 1 shows a driver information file for several similar black-and-white HP-PCL5 laser printers.
Listing 1: 'examples/laserjet-basic.drv'
Using Filters
The standard CUPS raster filters can be specified using theDriverType directive, for example:
Table 1 shows the driver types for each of the standard CUPS raster filters. For drivers that do not use the standard raster filters, the 'custom' type is used with Filter directives:
Implementing Color Management
CUPS uses ICC color profiles to provide more accurate color reproduction. The cupsICCProfile attribute defines the color profiles that are available for a given printer, for example:
where 'ColorModel.MediaType.Resolution' defines a selector based on the corresponding option selections. A simple driver might only define profiles for the color models that are supported, for example a printer supporting Gray and RGB might use:
The options used for profile selection can be customized using the cupsICCQualifier2 and cupsICCQualifier3 attributes.
Since macOS 10.5Custom Color Matching Support
macOS printer drivers that are based on an existing standard RGB colorspace can tell the system to use the corresponding colorspace instead of an arbitrary ICC color profile when doing color management. The APSupportsCustomColorMatching and APDefaultCustomColorMatchingProfile attributes can be used to enable this mode:
Adding macOS Features
macOS printer drivers can provide additional attributes to specify additional option panes in the print dialog, an image of the printer, a help book, and option presets for the driver software:
Drivers Rates
Short name | Long name | Creation | Copy | Geo-referencing | Build requirements |
---|---|---|---|---|---|
Arc/Info ASCII Grid | No | Yes | Yes | Built-in by default | |
ACE2 | No | No | Yes | Built-in by default | |
ADRG/ARC Digitized Raster Graphics (.gen/.thf) | Yes | Yes | Yes | Built-in by default | |
Arc/Info Binary Grid | No | No | Yes | Built-in by default | |
AIRSAR Polarimetric Format | No | No | No | Built-in by default | |
Azavea Raster Grid | Yes | Yes | Yes | Built-in by default | |
Bathymetry Attributed Grid | Yes | Yes | Yes | libhdf5 | |
Magellan BLX Topo File Format | No | Yes | Yes | Built-in by default | |
Microsoft Windows Device Independent Bitmap | Yes | Yes | Yes | Built-in by default | |
Better Portable Graphics | No | No | No | libbpg (manual build required for now) | |
Maptech/NOAA BSB Nautical Chart Format | No | No | Yes | Built-in by default | |
VTP .bt Binary Terrain Format | Yes | Yes | Yes | Built-in by default | |
Natural Resources Canada’s Geoid file format (.byn) | Yes | Yes | Yes | Built-in by default | |
AutoCAD DWG raster layer | No | No | Yes | (internal libopencad provided) | |
CALS Type 1 | No | Yes | No | Built-in by default | |
CEOS Image | No | Yes | No | Built-in by default | |
DRDC COASP SAR Processor Raster | No | No | No | Built-in by default | |
Cloud Optimized GeoTIFF generator | No | Yes | Yes | Built-in by default | |
TerraSAR-X Complex SAR Data Product | No | No | No | Built-in by default | |
Convair PolGASP data | No | No | Yes | Built-in by default | |
CTable2 Datum Grid Shift | Yes | Yes | Yes | Built-in by default | |
USGS LULC Composite Theme Grid | No | No | Yes | Built-in by default | |
DAAS (Airbus DS Intelligence Data As A Service driver) | No | No | Yes | libcurl | |
DB2 raster | Yes | Yes | Yes | ODBC (and any or all of PNG, JPEG, WEBP drivers) | |
DirectDraw Surface | No | Yes | No | Crunch Lib | |
Derived subdatasets driver | No | No | No | Built-in by default | |
Spot DIMAP | No | No | Yes | Built-in by default | |
ELAS DIPEx | No | No | Yes | Built-in by default | |
OPeNDAP Grid Client | No | No | Yes | libdap | |
First Generation USGS DOQ | No | No | Yes | Built-in by default | |
New Labelled USGS DOQ | No | No | Yes | Built-in by default | |
Military Elevation Data | No | Yes | Yes | Built-in by default | |
Arc/Info Export E00 GRID | No | No | Yes | Built-in by default | |
ECRG Table Of Contents (TOC.xml) | No | No | Yes | Built-in by default | |
Enhanced Compressed Wavelets (.ecw) | Yes | Yes | Yes | ECW SDK | |
Google Earth Engine Data API Image | No | No | Yes | libcurl | |
ESRI .hdr Labelled | Yes | Yes | Yes | Built-in by default | |
Erdas Imagine Raw | No | No | Yes | Built-in by default | |
Earth Resources Laboratory Applications Software | Yes | Yes | Yes | Built-in by default | |
ENVI .hdr Labelled Raster | Yes | Yes | Yes | Built-in by default | |
Wavelet compressed images | No | Yes | No | epsilon 0.9.1 | |
ERMapper .ERS | Yes | Yes | Yes | Built-in by default | |
Envisat Image Product | No | No | No | Built-in by default | |
Esri Compact Cache | No | No | Yes | Built-in by default | |
Extended Dynamic Range Image File Format | Yes | Yes | Yes | libopenexr | |
EOSAT FAST Format | No | No | Yes | Built-in by default | |
FIT | No | Yes | Yes | Built-in by default | |
Flexible Image Transport System | Yes | Yes | Yes | libcfitsio | |
Fuji BAS Scanner Image | No | No | No | Built-in by default | |
Generic Binary (.hdr labelled) | No | No | No | Built-in by default | |
Oracle Spatial GeoRaster | Yes | Yes | Yes | Oracle client libraries | |
Sandia National Laboratories GSAT File Format | No | No | No | Built-in by default | |
Graphics Interchange Format | No | Yes | No | (internal GIF library provided) | |
GMT Compatible netCDF | No | Yes | Yes | libnetcdf | |
GeoPackage raster | Yes | Yes | Yes | libsqlite3 (and any or all of PNG, JPEG, WEBP drivers) | |
GRASS Raster Format | No | No | Yes | libgrass | |
GRASS ASCII Grid | No | No | Yes | Built-in by default | |
WMO General Regularly-distributed Information in Binary form | No | No | Yes | Built-in by default | |
Golden Software Surfer 7 Binary Grid File Format | Yes | Yes | Yes | Built-in by default | |
Golden Software ASCII Grid File Format | No | No | Yes | Built-in by default | |
Golden Software Binary Grid File Format | Yes | Yes | Yes | Built-in by default | |
GSC Geogrid | No | No | No | Built-in by default | |
Generic Tagged Arrays | No | Yes | Yes | libgta | |
GeoTIFF File Format | Yes | Yes | Yes | Built-in by default | |
Grid eXchange File | No | No | Yes | Built-in by default | |
Hierarchical Data Format Release 4 (HDF4) | Yes | Yes | Yes | libdf | |
Hierarchical Data Format Release 5 (HDF5) | No | No | Yes | libhdf5 | |
ISO/IEC 23008-12:2017 High Efficiency Image File Format | No | No | No | libheif (>= 1.1), built against libde265 | |
HF2/HFZ heightfield raster | No | Yes | Yes | Built-in by default | |
Erdas Imagine .img | Yes | Yes | Yes | Built-in by default | |
Image Display and Analysis | Yes | Yes | Yes | Built-in by default | |
Idrisi Raster Format | Yes | Yes | Yes | Built-in by default | |
IGN-France height correction ASCII grids | No | No | Yes | Built-in by default | |
Raster Map | Yes | Yes | Yes | Built-in by default | |
Intergraph Raster Format | Yes | Yes | Yes | Built-in by default | |
Vaisala’s weather radar software format | No | No | Yes | Built-in by default | |
ISCE | Yes | Yes | Yes | Built-in by default | |
International Service for the Geoid | No | No | Yes | Built-in by default | |
USGS Astrogeology ISIS Cube (Version 2) | Yes | Yes | Yes | Built-in by default | |
USGS Astrogeology ISIS Cube (Version 3) | Yes | Yes | Yes | Built-in by default | |
Japanese DEM (.mem) | No | No | Yes | Built-in by default | |
ERDAS JPEG2000 (.jp2) | Yes | Yes | Yes | ECW SDK | |
JPEG-2000 (based on Kakadu) | No | Yes | Yes | Kakadu library | |
JPEG2000 driver based on Lurawave library | No | Yes | Yes | Lurawave library | |
JPEG2000 via MrSID SDK | No | Yes | Yes | MrSID SDK | |
JPEG2000 driver based on OpenJPEG library | No | Yes | Yes | openjpeg >= 2.1 | |
JPEG JFIF File Format | No | Yes | Yes | (internal libjpeg provided) | |
Implementation of the JPEG-2000 part 1 | No | Yes | Yes | libjasper | |
JPEGLS | No | Yes | No | CharLS library | |
JPIP Streaming | No | No | Yes | Kakadu library | |
KEA | Yes | Yes | Yes | libkea and libhdf5 libraries | |
KMLSuperoverlay | No | Yes | Yes | Built-in by default | |
KOLOR Raw format | Yes | Yes | No | Built-in by default | |
NOAA Polar Orbiter Level 1b Data Set (AVHRR) | No | No | Yes | Built-in by default | |
Erdas 7.x .LAN and .GIS | No | No | Yes | Built-in by default | |
FARSITE v.4 LCP Format | No | Yes | Yes | Built-in by default | |
Daylon Leveller Heightfield | Yes | Yes | Yes | Built-in by default | |
NADCON .los/.las Datum Grid Shift | No | No | Yes | Built-in by default | |
OziExplorer .MAP | No | No | Yes | Built-in by default | |
Meta Raster Format | Yes | Yes | Yes | Built-in by default | |
MBTiles | Yes | Yes | Yes | libsqlite3 | |
In Memory Raster | Yes | Yes | Yes | Built-in by default | |
Vexcel MFF Raster | Yes | Yes | Yes | Built-in by default | |
Vexcel MFF2 Image | Yes | Yes | Yes | Built-in by default | |
MrSID/MG4 LiDAR Compression / Point Cloud View files | No | No | No | LIDAR SDK | |
Multi-resolution Seamless Image Database | No | No | Yes | MrSID SDK | |
Meteosat Second Generation | No | No | Yes | msg library | |
Meteosat Second Generation (MSG) Native Archive Format (.nat) | No | No | Yes | Built-in by default | |
NLAPS Data Format | No | No | Yes | Built-in by default | |
NetCDF: Network Common Data Form | Yes | Yes | Yes | libnetcdf | |
NOAA NGS Geoid Height Grids | No | No | Yes | Built-in by default | |
NextGIS Web | No | No | Yes | libcurl | |
National Imagery Transmission Format | Yes | Yes | Yes | Built-in by default | |
NTv1 Datum Grid Shift | No | No | Yes | Built-in by default | |
NTv2 Datum Grid Shift | Yes | Yes | Yes | Built-in by default | |
Northwood/Vertical Mapper File Format | Yes | Yes | Yes | Built-in by default | |
Northwood/Vertical Mapper File Format | Yes | Yes | Yes | Built-in by default | |
OGC API Tiles / Maps | No | No | Yes | libcurl | |
OZF2/OZFX3 raster | No | No | Yes | Built-in by default | |
JAXA PALSAR Processed Products | No | No | Yes | Built-in by default | |
PCI .aux Labelled Raw Format | Yes | Yes | No | Built-in by default | |
PCI Geomatics Database File | Yes | Yes | Yes | Built-in by default | |
PCRaster raster file format | Yes | Yes | Yes | (internal libcf provided) | |
Geospatial PDF | No | Yes | Yes | none for write support, Poppler/PoDoFo/PDFium for read support | |
Planetary Data System v3 | No | No | Yes | Built-in by default | |
NASA Planetary Data System (Version 4) | Yes | Yes | Yes | Built-in by default | |
PLMosaic (Planet Labs Mosaics API) | No | No | Yes | libcurl | |
Portable Network Graphics | No | Yes | Yes | Built-in by default | |
Netpbm (.pgm, .ppm) | No | Yes | No | Built-in by default | |
PostGIS Raster driver | No | Yes | Yes | PostgreSQL library | |
PHOTOMOD Raster File | No | No | No | Built-in by default | |
R Object Data Store | No | Yes | No | Built-in by default | |
Rasdaman GDAL driver | No | No | No | raslib | |
Rasters in SQLite DB | No | Yes | Yes | libsqlite3 | |
Rasters in SQLite DB | No | Yes | Yes | libsqlite3, librasterlite2, libspatialite | |
RDA (DigitalGlobe Raster Data Access) | No | No | Yes | libcurl | |
RIEGL Database | No | No | Yes | rdblib >= 2.2.0. | |
Swedish Grid Maps | No | No | Yes | (internal zlib is used if necessary) | |
Raster Matrix Format | Yes | Yes | Yes | Built-in by default | |
ROI_PAC | Yes | Yes | Yes | Built-in by default | |
Raster Product Format/RPF (a.toc) | No | No | Yes | Built-in by default | |
R Raster | Yes | Yes | Yes | Built-in by default | |
RadarSat 2 XML Product | No | No | Yes | Built-in by default | |
Sentinel-1 SAFE XML Product | No | No | Yes | Built-in by default | |
CEOS SAR Image | No | No | Yes | Built-in by default | |
SAGA GIS Binary Grid File Format | Yes | Yes | Yes | Built-in by default | |
USGS SDTS DEM | No | No | Yes | Built-in by default | |
Sentinel-2 Products | No | No | Yes | Built-in by default | |
SGI Image Format | Yes | Yes | No | Built-in by default | |
Scaled Integer Gridded DEM | No | Yes | Yes | Built-in by default | |
Snow Data Assimilation System | No | No | Yes | Built-in by default | |
Standard Product Format (ASRP/USRP) (.gen) | No | No | Yes | Built-in by default | |
SRTM HGT Format | No | No | Yes | Built-in by default | |
Spatio-Temporal Asset Catalog Tiled Assets | No | No | No | Built-in by default | |
Terragen™ Terrain File | Yes | Yes | Yes | Built-in by default | |
TARGA Image File Format | No | No | No | Built-in by default | |
EarthWatch/DigitalGlobe .TIL | No | No | Yes | Built-in by default | |
TileDB | Yes | Yes | Yes | TileDB | |
TerraSAR-X Product | No | No | Yes | Built-in by default | |
USGS ASCII DEM (and CDED) | Yes | No | Yes | Built-in by default | |
VICAR | Yes | Yes | Yes | Built-in by default | |
GDAL Virtual Format | Yes | Yes | Yes | Built-in by default | |
OGC Web Coverage Service | No | No | Yes | libcurl | |
WEBP | No | Yes | No | libwebp | |
Web Map Services | No | Yes | Yes | libcurl | |
OGC Web Map Tile Service | No | No | Yes | libcurl | |
X11 Pixmap | No | Yes | No | Built-in by default | |
ASCII Gridded XYZ | No | Yes | Yes | Built-in by default | |
ZMap Plus Grid | No | Yes | Yes | Built-in by default |