XPP - The X Printing Panel ========================== http://cups.sourceforge.net/xpp/ Copyright 2000-2004 by Till Kamppeter This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA CUPS and the CUPS logo are the trademark property of Easy Software products. All other trademarks are the property of their respective owners. Bugs, fixes, suggestions, and improvements please send to till.kamppeter@gmx.net Acknowledgements ---------------- Thanks to Egbert Eich for the patch for support of custom paper sizes and horizontal resizing of the main window. Requirements: ------------- CUPS 1.1.9 or newer Older CUPS version do not have the "natural-scaling" option to scale images relative to their natural size. You can use thiis version of XPP with CUPS since version 1.1.3, but if you specify the image size with "Natural scaling" your setting will be ignored. CUPS versions older than 1.1.3 required XPP to use function overloading so that a password dialog could be realized. This version uses the new interface for password dialogs which was introduced in CUPS 1.1.3 and so the function overloading could be dropeed. The problem of function overloading was that one could not compile XPP under commercial Unix systems. This version of XPP should work on any platform on which CUPS and FLTK work. Download from: http://www.cups.org/ FLTK 1.0.7 or newer FLTK 1.1.x gives a nicer file selection dialog, with auto-completion of file names by the key and a layout more similar to the file selection dialogs of other applications. With libpng and libjpeg the file dialog even supports image preview. Download from: http://www.fltk.org/ Installation of XPP ------------------- Install CUPS 1.1.9 or newer (from the source code or binaries) and FLTK 1.0.7 or newer (from the source code) as described in the documentation of the respective packages. This works under SuSE 6.1, 6.2, Mandrake 7.x and newer, and Compaq/Digital Tru64 Unix 4.0f without any problems or special adjustments (always gcc and gmake were used). The newer versions I have only tested under Mandrake Linux, the current one under Mandrake 10.0 and 10.1. Now compile the XPP with ./configure make If you are on a proprietary Unix and 'make' gives a syntax error or similar, try GNU make (gmake, http://www.gnu.org/software/make/make.html) instead. In case of problems you can re-generate the Makefile template with (automake needed to be installed) automake and the configure script with (autoconf needed to be installed): aclocal autoconf You can also update the config.guess and config.sub files with (libtool needed to be installed): libtoolize --copy --force Ignore the warning if there is one. To install XPP, type make install logged in as 'root'. This copies the executable 'xpp' into the /usr/local/bin directory and removes its debug information to make it as small as possible. If under a commercial Unix the compilation of CUPS, FLTK, or XPP with gcc does not work, try the proprietary compiler of that Unix entering setenv CC cc setenv CXX CC ./configure gmake gmake install (as root) Usage tips ---------- To call the program, simply type xpp or only xpp at the command prompt or put 'xpp' into the printing command fields of your applications (Mozilla, gv ...). Mozilla remembers your print command automatically, in 'gv' click on 'State' at the top of the window and choose 'Setup Options' in the upcoming menu. In the dialog appearing then adjust the 'Print command' (at the bottom of the window) to 'xpp'. Then turn off the button 'Confirm Printing' (on the left hand side of the dialog) by clicking on it. Now click the buttons 'Apply', 'Save', and 'Dismiss' one after the other. Now the poor printing dialog of 'gv' is replaced by a better one. After giving the command shown above or when printing out of an application, you will get a dialog window where you can choose the printer on which you want to print and the number of copies you want to print from your file. All printers in your network made available for your machine via CUPS will appear in the list. If you have started XPP from the command line without supplying a file name, click on "Browse" and choose your file comfortably. There is a preview for text files and JPEG/PNG images. For printing there are a lot of options available, click the 'Options' button and adjust the behaviour of the printer as you want. You can save these settings for every individual printer with the 'Save Settings' button and you can make you preferred printer pre-selected by a click on the 'This printer as default' button. One can also choose printer-specific options by clicking on the tabs in the option window. If you change any options and some options appear in red (the appropriate tabs appear in red, too, so that on can easily find red options) there are conflicts between options. In this case both conflicting (red) options cannot be used at the same time (as for example double-sided printing on transparencies or envelope feeder as paper input when there is no envelope feeder installed). Saving such settings or printing with them is not possible. You will get an error message. Note that not all options apply to every printer and that the definitions of the paper sources differ from printer to printer, too. So do some tests to check out which options work in what way on your printer. To store more than one set of options for a printer click on the 'Instances' button and copy the default instance of the desired printer. Select it in the list, choose 'Copy' and enter a name. Click on 'Apply'. After closing the dialog, you can print via the original list entry for your printer or by the new one (the new 'instance'). You can independently modify and save the options for these entries with the 'Options' button. The 'Instances' dialog allows also to copy more instances, to rename, or to delete them. You can even use all command line options of the lpr command of CUPS ('man lpr' or http://localhost:631/sum.html) when you give the 'xpp' command. So your pre-selected printer (or options) can be different depending on whether you print out of Mozilla or out of gv. Example: In Mozilla's printing dialog you use 'xpp -o number-up=2 -o sides=two-sided-short-edge' as printing command and your web page and E-Mail printouts are printed in a paper-saving two-pages-on-one-sheet mode and in gv you use simply 'xpp' as print command to print documents in the normal way. Options changed by using command line options can nevertheless be changed back in the Options dialog of CUPS. Have a lot more fun with printing now ...