Print filters. Whether it's CUPS, LPRng or plain old LPD, you
often need a filter in between application data and the physical
printer. In olden times, you'd use specific filters for specific
purposes, but the trend now is to Swiss army knife, do everything
filters that consult config files or databases to determine their
actions (which is often just calling Ghostscript with appropriate
options).
https://www.pell.portland.or.us/~orc/Code/magicfilter/
https://www.linuxprinting.org/foomatic.html.
With some older lpd's (SCO's, for example), you couldn't specify a filter. We'd get around that by fronting with a Sys V printer where you could use a filter - an "interface script" that would end by sending to the lpd printer. More modern lpd's let you specify a "if=" line in printcap.
You can use your own filter scripts with CUPS, too, but you have to work within a "ppd" file. You just create the printer normally, but then change things. Your contribution would be a line added to the .ppd file that might look like:
*cupsFilter: "text/plain 0 MyFilter"
You'd create MyFilter in /usr/lib/cups/filter/ and the ppd file would be /etc/cups/ppd/queue-name.ppd
Got something to add? Send me email.
More Articles by Tony Lawrence © 2011-07-06 Tony Lawrence
I am not out to destroy Microsoft, that would be a completely unintended side effect. (Linus Torvalds)
Printer Friendly Version
foomatic,magicfilter Copyright © August 2004 Tony Lawrence
Have you tried Searching this site?
This is a Unix/Linux resource website. It contains technical articles about Unix, Linux and general computing related subjects, opinion, news, help files, how-to's, tutorials and more.
Contact us
Printer Friendly Version