Jump to content

Foomatic

From Wikipedia, the free encyclopedia
Linux/Unix printing process. The foomatic filter is applied when conversion from PostScript to raster takes place.

Foomatic is a configurable printing filter. It uses PPD files as configuration to generate appropriate output for a given printer. It is spooler independent which means it can be used with Common Unix Printing System (CUPS), LPRng and others.[1] It uses Ghostscript in the background, using options according to the PPD file of the printer. Currently it is developed by the OpenPrinting workgroup of the Linux Foundation.

Operation

[edit]

Like CUPS, foomatic supposes that applications will produce output in PostScript. If the output spools to a PostScript printer, no further action is needed. Otherwise, the most generic way to act is:

  • Create a raster file from the PostScript (ps2raster, usually using Ghostscript in the background)
  • Create a printer-language file from the raster data (raster2xxx, using the raster driver of the target printer)
  • Send the printer-language file to the printer

But if foomatic-rip "knows" about the available printer, it will translate the PostScript data directly to the printer's language, without creating the intermediate raster file.

Description of the package

[edit]

The components of the package are:

foomatic-filters (or "foomatic-rip")
It transforms PostScript data to raster (or to the printer's native language), using the PPD as configuration. It needs a low level driver (specific to each printer) to generate the final code.
foomatic-tools
foomatic-db-engine: A tool that generates PPD files from the data in Foomatic's database. It also contains scripts to directly configure print queues and handle jobs.
foomatic-db: The collected knowledge about printers, drivers, and driver options in XML files, used by foomatic-db-engine to generate PPD files.
foomatic-db-hpijs: Foomatic XML data generators for HP's HPIJS driver.

Free drivers that can interface with foomatic

[edit]

The following free drivers were specifically developed to work with foomatic:

Spoolers that can interact with foomatic

[edit]

References

[edit]
  1. ^ "Foomatic". Linux Foundation. 23 February 2009. Archived from the original on 2014-07-01. Retrieved 2014-12-16.
[edit]