apsfilter —
magic print filter with auto file type
recognition
lpr |
[-Pprinter]
[-C
option1:...:optionN]
[file ...] (lpd
style) |
lpr |
[-Pprinter]
[-Z
option1:...:optionN]
[file ...] (LPRng
style) |
lp |
[-d
printer]
[-o
option1:...:optionN]
[file ...]
(Solaris style) |
Apsfilter is a magic print filter which allows you
to print different document types “automagically” without having
to convert them manually into a document format which is understood by your
printer hardware.
Apsfilter uses third-party software to convert
every supported file type into PostScript (PS) first. If you have a real PS
printer, the data stream is then sent directly to the PS printer, otherwise it
is piped through the famous PS interpreter
gs(1)
which supports a wide range of output devices.
Thus the question whether a particular printer is supported by
apsfilter is actually the question of it either
understanding PS directly, or being supported by
gs(1) in some way (possibly using some emulation
of another printer's software interface, like Epson's ESC/P2 or HP's PCL).
Another important thing to remember is that the required driver support has to
be present in the installed
gs(1) binary.
gs -h lists (among others) which drivers are
currently compiled in. SETUP warns when a selected driver is missing and
guides in choosing another driver.
The
FreeBSD ports collection offers an easy and
comfortable framework for FreeBSD users to configure and install apsfilter,
gs(1), gs third-party driver and filter programs
for their personal needs.
The
apsfilter script is designed to avoid temporary
files as much as possible. So it is very efficient in use and doesn't fill up
filesystems even when printing large printjobs in high resolution and best
print quality.
Apsfilter offers a wide range of customization
options through config files and
lpr(1) command
line options, see below.
Apsfilter and its SETUP is completely written in a
script language (see
sh(1) ). So it is easy to
understand and modify even for users and admins who are quite new to the Unix
business.
Apsfilter is highly customizable and its
developement since 1994 has shown that it scales very well with the still
growing demand of additional features.
Apsfilter supports locally connected serial, parallel and USB printers.
Remote printing cababilities: Unix remote printing (lpd protocol), printing to
an AppleTalk remote printer via
pap(1) as well as
Windows remote printing via SAMBAs
smbclient(1)
on Windows 95/98/NT/2000 printer as guest user or using a real password
protected Windows account.
Apsfilter 's SETUP utility supports in installing
all supported printer types, no matter if local or remote printer, into the
printer capability database
/etc/printcap.
ar, arc, arj, ASCII, BMP, CAB, cpio, DATA, DVI, FBM, FIG, FITS, GIF, Group 3
FAX, HTML, IFF ILBM, JPEG, Kodak Photo CD (PCD), LHA, MGR, MIFF, PAM, PGM,
PBM, PNM, PPM, PDF, PNG, Postscript (PS), RAR, RLE, RPM, SGI, Sketch,
Sunraster, TAR, Targa (TGA), TIFF ROFF, WMF, WorPerfect graphics, XCF, X
Pixmap (XPM), X Window dump (XWD), ZIP, ZOO. Note that actual support depends
on the installed filter programs.
Extract the tarball and execute
./configure in the
apsfilter directory (maybe with some options; use
./configure --help to see a listing).
After that, login as root and call
make install;
then you can set up printers with
/usr/share/apsfilter/SETUP.
SETUP adds the printer to the /etc/printcap database to make it available to the
lpd(8) print spooler, and configures
apsfilter for operation with that printer.
After successfull installation, SETUP remembers its previous configuration
settings in a file called
SETUP.cfg.
Several command line options to
apsfilter are
available which allow the user to influence the printing quality, color mode,
paper size etc. The
handbook includes a detailed
listing.
- draft
- Draft quality.
- lo|low
- Low quality.
- med|medium
- Medium quality.
- hi|high
- High quality.
- photo
- Photo quality.
- uni|bi
- Uni-/bi-directional sweeps.
- plain
- Plain paper.
- coated
- Coated (inkjet) paper.
- glossy
- Glossy paper.
- premium
- Premium (photo) paper.
- trans
- Transparencies.
- color|colour
- Color printing.
- gray|grey
- Gray printing.
- mono
- B/W printing.
- auto
- Automatic filetype recognition and data conversion.
- ascii
- Force printing as ASCII document. For example to print
Postscript source code without actually interpreting it.
- raw
- Pass-through mode, your print data won't be changed by any
filter.
- a3|a4|legal|ledger|tabloid
- Paper size.
- a2ps|mpage|enscript|recode
- Text file filter to use, when printing ASCII
documents.
- tray0...tray9
- Paper feed tray number.
- pretty=N
- highlight level for pretty-printing (N=0,1,2)
- header|noheader
- Whether you want headers in your text prints.
- border|noborder
- Whether you want borders in your text prints.
- 1pps|2pps|4pps|8pps
- Pages per sheet.
- landscape|portrait
- Paper orientation.
- book
- Output pages in "book" format, implies
"2pps,duplex,shortbind"
- duplex|simplex
- Whether to use duplex mode or not.
- shortbind|longbind
- Paper binding edge.
- copies=N
- Number of copies.
lpr -C high:color:glossy file.gif tex.dvi.gz
file.html ...
prints some files of different types no matter whether compressed or not on the
Unix default printer (see
lpr(1) ).
The
-C option to the
lpr command sets additional ghostscript
driver-specific options. Here, ‘
high
’
means
high resolution (e. g. 600 dpi for an HP
Printer using gs's “cdj850” printer driver),
color output (e.g. 32 bits per pixel), and the
paper type is set to
glossy paper
lpr -C duplex somefile
enables
pseudo duplex printing by halting the print
queue after printing a documents even pages and so giving the user a chance to
flip paper and restart printing after executing a special user command on the
command line.
User gets a notification mail containing a session oriented magic
wakeup command and
key which restarts printing of the odd pages of
the print job.
The so called
magic command makes sure that only
the initiator of the print job is able to restart printing after reinserting
the paper.
Beware, if you have nasty users, this can cause
print jobs to hang, filling up the print queue and at least the /var file
system.
- /etc/printcap
- printer capability data base
- /usr/share/apsfilter/bin/apsfilter
- apsfilter script
- /usr/share/apsfilter/SETUP
- printer installation script, creates/updates
/etc/printcap
- /usr/share/apsfilter/SETUP.cfg
- saved settings from last printer setup
- /usr/share/doc/apsfilter/handbook.html
- the apsfilter handbook in HTML format
- /etc/apsfilter/
- configuration directory
- /etc/apsfilter/apsfilterrc
- global configuration file
- /etc/apsfilter/apsN/
- printer specific configuration directory
- /etc/apsfilter/apsN/apsfilterrc
- printer specific configuration file
- $HOME/.apsfilter/apsfilterrc.apsN
- user definable printer specific configuration file
- /etc/apsfilter/apsN/smbclient.conf
- smbclient config file for printing on Windows remote
printer
- /etc/apsfilter/apsN/pap.conf
- pap config file for printing on AppleTalk printer
- /etc/apsfilter/apsN/lpr.conf
- config file for remote printer that needs special
treatment
aps2file(1),
apsfilter-bug(1),
apspreview(1),
gs(1),
gs-hpdj(1),
lpr(1),
smbclient(1),
apsfilterrc(5),
printcap(5),
lpd(8)
See apsfilter software center -
http://www.apsfilter.org/
- for new versions, bugfixes
and known bugs.
Please use the new tool
apsfilter-bug(1) to release
bug- or problem reports. It automatically presents you a
form in an editor window which asks you some
standard questions. If you save and quit the editor session, then this report
is sent automatically via
e-mail to the proper
apsfilter mailinglist.
If apsfilter fails to print something or prints it in a way you wouldn't expect
and you want to report an apsfilter error then please save the debugging
output of one print session using the new
aps2file(1) utility by typing
aps2file -D -Z options file > /dev/null 2>
file.debug and including the debugging output in the file
file.debug into the edit session of the
apsfilter-bug utility, so that it is included
into the mail to the apsfilter mailinglist.
Please note that you need to run /bin/sh (Bourne Shell), bash or a compatible
shell, so that the above mentioned output redirection works. Under C-shell
(/bin/csh) or tcsh it would't work. If you don't know, then simply make sure
you use the Bournce shell by typing
/bin/sh or
bash, then you should have no problems with
redirection of
stdout and
stderr (> /dev/null 2> file.debug).
See official apsfilter homepage
- http://www.apsfilter.org/handbook.html
- Apsfilter Handbook including the Frequently Asked Questions
(FAQ)
Please send questions to the official apsfilter help channel
[email protected]. The above section
BUGS and the file
HOWTO-BUGREPORTS tells you how to report bugs. If
you want to know how to troubleshoot your apsfilter installation, please read
the manpage
aps2file(1) and
apsfilter-bug(1) as well as the
Apsfilter Handbook carefully.
The
apsfilter manpage appeared first in apsfilter V
5.4.0.