Removed the FIXME() and moved SetLastError(0) to the end (so that
[wine/multimedia.git] / documentation / printing
blobbe79693e0f6c2efb70f33940fc13594eacf03f62
1 Printing in Wine
2 ================
4 Printing in Wine can be done in one of two ways. Both of which are very alpha.
6 1. Use a windows 3.1 printer driver.
8 2. Use the builtin Wine Postscript driver (+ ghostscript to produce output for
9    non-postscript printers).
12 1. External printer drivers
13 ---------------------------
14 At present only 16 bit drivers will work.
15 Add
17 printer=on
19 to the [wine] section of wine.conf (or ~/.winerc). This lets CreateDC proceed
20 if its driver argument is a 16 bit driver.
22 You will probably also need to add
24 TTEnable=0
25 TTOnly=0
27 to the [TrueType] section of win.ini .
29 The code for the driver interface is in graphics/win16drv .
32 2. Builtin Wine Postscript driver
33 ---------------------------------
34 Enables printing of postscript files via a driver built into Wine. See
35 graphics/psdrv/README for installation instructions. The code for the
36 postscript driver is in graphics/psdrv .
40 Spooling
41 ========
42 Spooling is rather primitive. The [spooler] section of wine.conf maps a port
43 (e.g. LPT1:) to a file or a command via a pipe. For example the following lines
45 LPT1:=foo.ps
46 LPT2:=|lpr
48 map LPT1: to file foo.ps and LPT2: to the lpr command. If a job is sent to an
49 unlisted port then a file is created with that port's name e.g. for LPT3: a
50 file called LPT3: would be created.